Commit Graph

888 Commits

Author SHA1 Message Date
Patrick Walton
5450290fbe servo: Merge #5586 - net: Don't load the placeholder image for background images, only for image fragments (from pcwalton:no-broken-background-image-redux); r=glennw
r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: 77099b25d590fdaac76721e7f98f4e83672e64a6
2015-05-20 16:43:31 -05:00
ecoal95
0656a2b904 servo: Merge #6083 - First steps to layerize canvas (from emilio:layerize-canvas); r=pcwalton
I've done a bit of job to get this done. Right now readback is still used, but we have a `LayerId` -> `CanvasRenderer` map on the paint task, that we can use to get rid of that.

I'd want review, to see if this is a good approach (I know it's not the initial `CanvasId` -> renderer approach, but it's pretty similar, since a canvas involves a `PaintLayer`).

I had to do a bit of refactoring to avoid cyclic dependencies between canvas and gfx. I'd want you to review them too.

It's mergeable and doesn't break any tests :P

Some of my main concerns:
* Does the canvas render really need to be behind an `Arc<Mutex<T>>`?
* I can't clone a `NativeSurface` right now (that's why the `SendNativeSurface()` msg is unimplemented in the WebGL task). It should be easy to add that to rust-layers, supposing the caller is responsible to mark it as non-leaking, any reason to not do it?

cc @jdm @pcwalton

Source-Repo: https://github.com/servo/servo
Source-Revision: ad53e95080144485e74cd9b9d48ce75e20de4e36
2015-05-20 15:42:06 -05:00
Peter
43f66c0df3 servo: Merge #5858 - fixes #5603, added support for tabindex field (from pgonda:tabindex-focus-flag); r=jdm
Added support for the tabindex field, also added its correct defaults (-2 TODOs for things not supported in Servo yet).  Also added tabindex logic into Element::is_focusable_area.

Source-Repo: https://github.com/servo/servo
Source-Revision: fada39164cbaba3a9885f08fad6f10a2353a4838
2015-05-20 14:34:31 -05:00
Patrick Walton
44983ea106 servo: Merge #5577 - script: Implement the width and height attributes for iframes per HTML5 § 4.8.6 (from pcwalton:iframe-size-attributes); r=jdm
Improves Amazon and Ars Technica.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: ee147c164a8a13743dec2def60b13997145e7a55
2015-05-20 13:51:05 -05:00
Michael Wu
ccf24af538 servo: Merge #6139 - Rustup fixes (from michaelwu:rustup-fixes); r=SimonSapin
Mutable transmutes and wrong transmutes fixed.

Source-Repo: https://github.com/servo/servo
Source-Revision: 64810583093dadfacbda942562853af1ae82e34e
2015-05-20 01:55:43 -05:00
Paul Faria
5b46999925 servo: Merge #6127 - Throw a SyntaxError if the WebSocket URL can't be parsed. Fix #6061 (from Nashenas88:websockets-invalid-urls); r=Ms2ger
Fix #6061.

Source-Repo: https://github.com/servo/servo
Source-Revision: d869a3c7a8378a77a9a5e86c118115f969ade193
2015-05-20 01:13:57 -05:00
Paul Faria
b5a2222e90 servo: Merge #6094 - Fixed definition of Close and Send in WebSocket.webidl and updated im… (from Nashenas88:websockets-USVString); r=Ms2ger
Fix #6063
Fix #6062
Fixed definition of Close and Send in WebSocket.webidl and updated implementation in websocket.rs.

Source-Repo: https://github.com/servo/servo
Source-Revision: fe8760cce206ede76b71ccf3cc94fa37addddfc9
2015-05-20 00:20:06 -05:00
Glenn Watson
17e3775b23 servo: Merge #6131 - Fix several hangs / panics during pipeline cleanup of in progress loads (from glennw:jquery-exit-fix); r=jdm
This fixes a hang found while testing the jQuery test suite.

Source-Repo: https://github.com/servo/servo
Source-Revision: c51e9f04559f04f1e820b792261e1653c6869ee5
2015-05-19 21:44:45 -05:00
WriterOfAlicrow
eb27bed3a8 servo: Merge #6084 - Fix for Issue #6073 (from WriterOfAlicrow:radiobutton-fix); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: e2b0922d42e18362ec9ae79feaffed601142e586
2015-05-19 20:49:32 -05:00
Patrick Walton
cf0b11ec43 servo: Merge #6053 - compositing: Implement display ports and avoid creating display lists for items outside it (from pcwalton:displayports); r=glennw
This improves Servo's performance on large pages.

Please double-check the logic when it comes to nested layers—I'm sure I've messed up some of the geometry calculations :)

r? @glennw

Source-Repo: https://github.com/servo/servo
Source-Revision: 0880e54f987bac7c34c934ef6ee36f46475b06e3
2015-05-19 19:40:36 -05:00
Patrick Walton
36e1de85b6 servo: Merge #5989 - script: Implement the color attribute of the <font> element (from pcwalton:font-color); r=jdm
Improves Hacker News.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: ba340ec71bcfca8ab7b8ae04a22005e4fb860a23
2015-05-19 18:33:03 -05:00
Patrick Walton
6ea6db2d01 servo: Merge #6124 - layout: Support inline incremental reflow, and stop reconstructing all flows when mousing over the document (from pcwalton:inline-incremental-reflow); r=mbrubeck
r?

Source-Repo: https://github.com/servo/servo
Source-Revision: 16793d0e24ed49245e5777bc282839e4c157a091
2015-05-19 13:51:30 -05:00
Anthony Ramine
dbddd45fd9 servo: Merge #6064 - Fix overflow in CharacterData (from nox:characterdata-overflow); r=Ms2ger
Source-Repo: https://github.com/servo/servo
Source-Revision: 0f1f71b56f55c0cf4cb0d075916f34ebfc706783
2015-05-17 13:40:30 -05:00
Keith Yeung
00a6f8a4c0 servo: Merge #6102 - Made open event in WebScoket not cancelable (fixes #6101) (from KiChjang:websocket-open-event-noncancelable); r=Ms2ger
Fixes #6101

Source-Repo: https://github.com/servo/servo
Source-Revision: d6c3ddd8fd80853b6f679c5a9539ae86587c9b8e
2015-05-17 12:57:58 -05:00
Jinwoo Song
0482f48b98 servo: Merge #6067 - Implement 'background-clip' property in CSS3 Background (from Jinwoo-Song:backgroundclip); r=pcwalton
This property determines the background painting area, which determines the area
within which the background is painted.

Spec: http://dev.w3.org/csswg/css-backgrounds-3/#background-clip

Fixes #6066.

r? @pcwalton
cc @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: 9f2079f6baafd5f111fbe7b6542f98c2672fa317
2015-05-15 22:05:05 -05:00
Mukilan Thiyagarajan
190087faab servo: Merge #6043 - Fix implementation of Element::get_root_element (from mukilan:get_root_element); r=Ms2ger
The [current implementation](http://mxr.mozilla.org/servo/source/components/script/dom/element.rs#666) is wrong as it always tries to cast the furthest ancestor into an element.
When the method is invoked on an element that is in the document tree, this will be the `Document` node, which is not an element. The ```last().map(ElementCast::to_temporary)``` returns Some(None) hence the method will return ```None```, while the correct behaviour is to return the ```html``` node.

This PR interprets the line ```"furthest ancestor element node of whatever node is being discussed"``` in the spec to mean ```"find the furthest ancestor that is an element node"```.

Source-Repo: https://github.com/servo/servo
Source-Revision: 65c30224a1d3ca81d0b8a8d46538af91f07dfebf
2015-05-15 03:35:37 -05:00
Jinwoo Song
4b52eb822a servo: Merge #6046 - Implement 'background-origin' property in CSS3 Background (from Jinwoo-Song:background_origin); r=pcwalton
This property determines the background positioning area, that is the position of
the origin of an image specified using the 'background-image' CSS property.

'background-origin' is ignored when background-attachment is fixed.

Spec: http://dev.w3.org/csswg/css-backgrounds-3/#background-origin

Fixes #6045.

r? @pcwalton
cc @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: 8c402728247c73268df9389948ee9a9d9e4063b2
2015-05-14 20:53:02 -05:00
Anthony Ramine
aabf0d5546 servo: Merge #5902 - Fix length value of interface methods (from nox:length); r=jdm
Blocked by https://github.com/w3c/testharness.js/pull/124.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8faa9f877df67ad6bced9b5ec4ae580c042bfa45
2015-05-14 13:37:10 -05:00
Anthony Ramine
3cf876ddbb servo: Merge #5921 - Partially implement getter of Document (from nox:document-getter); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: a635a8f9531f781895a00b96bfbdc3a26b961eca
2015-05-14 12:09:18 -05:00
Ms2ger
30431efd3c servo: Merge #6044 - Various cleanup (from Ms2ger:cleanup); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 7bda431e61d06113306c3f12d9f4240a58a7d34d
2015-05-14 07:16:42 -05:00
James Graham
771e23db73 servo: Merge #6022 - Add enough execute_async_script support to webdriver that we can run web-platform-tests (from jgraham:webdriver_execute_async_script); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: b05c3fc0c063e32168a9630dc2a0e8adc9285dae
2015-05-14 05:02:27 -05:00
Glenn Watson
6cd31b7d9f servo: Merge #5890 - Various fixes for cleaning up iframes, compositor layers, pipelines and threads (from glennw:iframe-cleanup); r=jdm
This allows most of the jquery test suite to run without exhausting thread resources.

Source-Repo: https://github.com/servo/servo
Source-Revision: 7e022b25a8ab87897180dcf1b6aff8d9b57adcb4
2015-05-13 22:34:59 -05:00
Glenn Watson
76f1d2ef46 servo: Merge #6031 - Fixes a number of race conditions and reliability issues with reftests and compositor (from glennw:reftest-race-conditions); r=larsberg,jdm
The basic idea is it's safe to output an image for reftest by testing:
 - That the compositor doesn't have any animations active.
 - That the compositor is not waiting on any outstanding paint messages to arrive.
 - That the script tasks are "idle" and therefore won't cause reflow.
    - This currently means page loaded, onload fired, reftest-wait not active, first reflow triggered.
    - It could easily be expanded to handle pending timers etc.
 - That the "epoch" that the layout tasks have last laid out after script went idle, is reflected by the compositor in all visible layers for that pipeline.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5e61ebaa05e5babb7b2fdd1347b6cdd23df38e62
2015-05-13 18:37:54 -05:00
Ms2ger
cf4f8c7684 servo: Merge #6019 - Move the presentational hint from table border to the new infrastructure (from Ms2ger:preshint-border); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 398e7f07fe0c5b0f0c9e8c05b8962011c83505d3
2015-05-12 14:47:49 -05:00
Simon Sapin
c76487e1bf servo: Merge #6021 - Upgrade to Hyper 0.4.0 (from SimonSapin:hyperup); r=Manishearth
r? @Manishearth

Source-Repo: https://github.com/servo/servo
Source-Revision: 8cacf20a075b3747509897599c37662721d18d1c
2015-05-12 12:42:49 -05:00
Jinwoo Song
5d3fed803c servo: Merge #6018 - Implement HTMLSelectElement.{multiple, name, size} (fixes #6017) (from Jinwoo-Song:select_attributes); r=Ms2ger
r? @jdm
cc @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: f4381a6f1e4d42b316d67337a4c69913df2f51d2
2015-05-12 06:15:56 -05:00
Ms2ger
e982e78205 servo: Merge #5988 - Move some presentational hints to the new infrastructure (from Ms2ger:preshints); r=pcwalton
Source-Repo: https://github.com/servo/servo
Source-Revision: 8fa604be9dc85bfd41db7d574e236ab8b4e6d89a
2015-05-12 02:15:11 -05:00
Jinwoo Song
55e3d6fc68 servo: Merge #6005 - Implement name and value attributes of HTMLButtonElement (fixes #6003) (from Jinwoo-Song:button_name_value); r=jdm
Implemented getter and setter of the attributes.

r? @jdm
cc @yichoi

Source-Repo: https://github.com/servo/servo
Source-Revision: 10d8200a54c833a52a757c3c591f69ad0e824f86
2015-05-11 21:27:10 -05:00
Josh Matthews
20819f2f37 servo: Merge #5804 - Add simple document load tracking infrastructure (from jdm:docloader); r=Ms2ger
This implements a simple load-tracking system and tracks stylesheet loads as an example of how it fits together. This is a simplified and rebased version of #3714; I do not believe that the main thrust of hsivonen's comments (related to tracking navigation in browsing contexts) affect this part of the work.

r? @Ms2ger

Source-Repo: https://github.com/servo/servo
Source-Revision: 2baa69595e2d57213c34b7e168b60885948fa85b
2015-05-11 14:35:33 -05:00
James Graham
04fae0f10c servo: Merge #6008 - Add support for getActiveElement webdriver command (from jgraham:webdriver_get_active_element); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 263b69cf7fd99bfc13eecc840f27cdcf1e8178cc
2015-05-11 12:33:26 -05:00
James Graham
2841b17776 servo: Merge #5969 - Add WebDriver support for getting elements by selector (from jgraham:webdriver_select_css); r=jdm
Also adds example support for getting the name and text properties of the elements.

Source-Repo: https://github.com/servo/servo
Source-Revision: 8df824998f108d8ef0472bcf6c006b3270e2800e
2015-05-11 09:57:02 -05:00
Ms2ger
1534c40155 servo: Merge #6004 - Replace TElement::get_link() by specific methods (from Ms2ger:get_link); r=SimonSapin
Source-Repo: https://github.com/servo/servo
Source-Revision: be8539af885b5d668222bbbdd677922eb75be65f
2015-05-11 06:46:17 -05:00
Ms2ger
fd6b9e7d32 servo: Merge #6001 - Merge the JS context and runtime structs into Runtime (from Ms2ger:runtime); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d1a0aacc60a27a6a9d0709c505d9621a5ebc2f78
2015-05-10 15:14:37 -05:00
Ms2ger
1cdbd0dcb7 servo: Merge #5999 - Move get_attr and get_attrs into TElementAttributes (from Ms2ger:TElement); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: cf9338cb2eb1ff0c28e83d40e06b687828ab4c04
2015-05-10 11:26:25 -05:00
Ms2ger
29f19cb5eb servo: Merge #6000 - Update js (from Ms2ger:update-js); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 54b1c9af11f77ae9e4e92531a12b2a1dc1aa10f7
2015-05-10 08:58:33 -05:00
Patrick Walton
712167aac6 servo: Merge #5936 - layout: Don't rerun selector matching unless we need to when resizing the window (from pcwalton:fast-resize); r=jdm
2.1x improvement on resizing on Reddit.

r? @jdm

Source-Repo: https://github.com/servo/servo
Source-Revision: bfd16984623e55d835a0a9c08e985d96257c49c0
2015-05-07 18:13:29 -05:00
Anthony Ramine
d2eeb39e63 servo: Merge #5894 - Implement WebIDL attribute PutForwards (from nox:putforwards); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 29a43a00b39e544596e3bcce9bdfca2159313ba5
2015-05-07 09:07:12 -05:00
Mátyás Mustoha
234f4a5146 servo: Merge #5949 - Mark the canvas as dirty on certain drawing calls (from mmatyas:canvas_dirty); r=jdm
With this patch, it is now possible to create nice animations using the canvas.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5f2a8494be44d57b74bda24f2fa6b6976f71531b
2015-05-07 07:09:41 -05:00
James Graham
3542f4af9e servo: Merge #5884 - Support WebDriver takeScreenshot command (from jgraham:webdriver_screenshot); r=jdm
This adds support for compositing to a PNG without actually quiting
the browser.

Cargo bits need to be updated after the upstream changes to rust-png land.

Source-Repo: https://github.com/servo/servo
Source-Revision: 63ba1cb69b80d70c1d893ba80edd802cd326316d
2015-05-07 04:59:04 -05:00
Simon Sapin
0872ebe9b2 servo: Merge #5968 - Deduplicate some dependencies (from SimonSapin:deduplicate-deps); r=Manishearth
This uses some dependencies from crates.io instead of git where the crates.io copy was already used in some other part of the dependency tree, so we had two copies of the same library.

The `android_glue` crate is the only one left where we have two copies, but solving that is more tricky since we hard-code a path in `components/servo/.cargo/config`.

r? @larsbergstrom

Source-Repo: https://github.com/servo/servo
Source-Revision: 59cb1b03968a55dcce1774088890a3ecf4de0037
2015-05-07 02:31:15 -05:00
Mátyás Mustoha
94ebf895cc servo: Merge #5946 - Canvas: implement transformation matrix reset (from mmatyas:canvas_mxreset); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: d9cc36ac225a989c07301e85e40b488723bd1980
2015-05-06 16:51:02 -05:00
Avi Weinstock
ab2e111f2b servo: Merge #5800 - Made the clipboard-related functionality in TextInput more testable. Add (from aweinstock314:x11-clipboard); r=jdm
...ed test_clipboard_paste to the "test-unit" suite.

Source-Repo: https://github.com/servo/servo
Source-Revision: 5cb1356e9e3dbde9fd841c9aa2d21ea39c5eda18
2015-05-06 16:09:37 -05:00
Anthony Ramine
08cbd0eb18 servo: Merge #5923 - Improve support of limited unsigned long attributes (from nox:limited-unsigned-long); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 19744984da58feeeab64a98839ec2936fb8fb5a0
2015-05-06 14:22:45 -05:00
James Graham
e506fc25c0 servo: Merge #5962 - Implement webdriver commands for back/forward/title/handles (from jgraham:webdriver_navigation); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 72c20d8491137a82160e5455c89ff1a42f3767a7
2015-05-06 10:34:44 -05:00
Ms2ger
e65e6686cd servo: Merge #5961 - Cleanup CloseEvent (from Ms2ger:closeevent); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 9aa801f140d96b33fbbe564ca614dec00bc0cf9d
2015-05-06 09:51:31 -05:00
Mátyás Mustoha
806d415a72 servo: Merge #5945 - Canvas: implement transformation matrix rotation (from mmatyas:canvas_mxrotate); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 3327fe301393f3ec5213a5b2b14d022bbac5976e
2015-05-06 08:53:56 -05:00
Anthony Ramine
a62b53513c servo: Merge #5931 - Remove helpers that correspond to DOM methods (from nox:rm-helpers); r=jdm
Source-Repo: https://github.com/servo/servo
Source-Revision: 16a7c792b564a6eab48391865a7060b8dba38284
2015-05-06 01:31:26 -05:00
Guro Bokum
8800f4e7e5 servo: Merge #5753 - Start using on_refresh_driver_tick #5681 (from JIoJIaJIu:timeline); r=jdm
RequestAnimationFrame
[Task](https://github.com/servo/servo/issues/5681)

Source-Repo: https://github.com/servo/servo
Source-Revision: 5e59e77c416dbe35e8c30ca1c21c9088ed17a079
2015-05-06 00:50:13 -05:00
Simon Sapin
25523c4789 servo: Merge #5951 - Clean up the Au API (from SimonSapin:au-cleanup); r=mbrubeck
Fix #5943.

r? @mbrubeck

Source-Repo: https://github.com/servo/servo
Source-Revision: 1721cf45ed59306a69f3ade08feca065804c3804
2015-05-05 15:08:12 -05:00
William Galliher
0950eced4b servo: Merge #5939 - Implement incomplete opening, sending, and closing behaviour for WebSock (from jdm:websocket); r=jdm
...ets using rust-websocket.

Authors:
Shivaji Vidhale <savidhal@ncsu.edu>
William Galliher <wpgallih@ncsu.edu>
Allen Chen <achen4@ncsu.edu>
Rucha Jogaikar <rsjogaik@ncsu.edu>

Source-Repo: https://github.com/servo/servo
Source-Revision: 6d2f70a4fd275510ca90c5da27bb841dd25d39bd
2015-05-05 12:57:48 -05:00