Commit graph

3647 commits

Author SHA1 Message Date
patrick kim
b0380ae96a fix text-decoration property in layout 2014-01-23 09:51:08 +09:00
bors-servo
57d91c4b58 auto merge of #1520 : ksh8281/servo/img_s, r=pcwalton
it makes same result with firefix, chrome in http://www.w3.org/Style/CSS/Test/CSS1/current/sec5523.htm
2014-01-22 16:49:06 -08:00
bors-servo
d11e431887 auto merge of #1533 : metajack/servo/unsafe-get-attr, r=jdm
The old code was used by both layout and script, but was erroneously
borrowing for the layout case (which causes parallelism
problems). script now uses only `value_ref()` or `get_attribute()`, and
layout now has its own unsafe version that dances around the borrows of
`@mut Attr`.
2014-01-22 16:28:20 -08:00
bors-servo
11187c0eea auto merge of #1493 : pcwalton/servo/parallel-layout-new, r=pcwalton,metajack
r? @metajack
2014-01-22 16:04:08 -08:00
Jack Moffitt
c443bcbfff Change get_attr() to get_attr_val_for_layout().
The old code was used by both layout and script, but was erroneously
borrowing for the layout case (which causes parallelism
problems). script now uses only `value_ref()` or `get_attribute()`, and
layout now has its own unsafe version that dances around the borrows of
`@mut Attr`.
2014-01-22 17:02:21 -07:00
Patrick Walton
54f0f17f83 layout: Implement parallel reflow for the bubble-widths and
assign-heights phases.

This uses the new work-stealing deque. By default, 3/4 of a thread per
logical CPU is used. This can be tuned with the `-y` flag.

I measured a 65% reflow speedup on `perf-rainbow.html` and a 247% reflow
speedup on `http://en.wikipedia.org/wiki/South_China_Sea` on a 4-core
HyperThreaded Core i7. However, numbers were fairly volatile, especially
for the latter.
2014-01-22 15:59:21 -08:00
bors-servo
1ee5224486 auto merge of #1531 : ibnc/servo/git_ignore_vim, r=larsbergstrom
For me and fellow vim users.
2014-01-22 13:38:11 -08:00
Isabelle Carter
a10751370d added vim tmp files to git ignore 2014-01-22 13:24:56 -08:00
bors-servo
4fcb48da64 auto merge of #1530 : larsbergstrom/servo/android_fixups, r=metajack
These two fixes are required for Android. We need to generate a toplevel crate map because it is used by both debugging and the libuv stuff. We also need to manually link against rustuv because we cannot dynamically inject it on Android.

r? @metajack
2014-01-22 13:13:26 -08:00
Lars Bergstrom
960ed1ec9d Add the Rust crate map to the servo library and dependency on libuv 2014-01-22 11:48:04 -08:00
bors-servo
2dc4359937 auto merge of #1525 : brunoabinader/servo/document-contenttype, r=Ms2ger
Spec:
http://dom.spec.whatwg.org/#dom-document-contenttype

This is a subtask for #1428 and #1510.
2014-01-22 05:37:13 -08:00
patrick kim
5ce3bae160 add assign_height in box_ 2014-01-22 14:29:54 +09:00
Bruno de Oliveira Abinader
1067da7df8 Basic support for Document::contentType
Spec:
http://dom.spec.whatwg.org/#dom-document-contenttype

This is a subtask for #1428, #1510 and #1526.
2014-01-21 12:48:09 -04:00
patrick kim
ef122f8fbf add comment & add ref test 2014-01-21 11:27:22 +09:00
bors-servo
539cf58f73 auto merge of #1523 : brunoabinader/servo/domimpl-createhtmldocument, r=Ms2ger
Spec:
http://dom.spec.whatwg.org/#dom-domimplementation-createhtmldocument

Closes #1510.
2014-01-20 11:25:08 -08:00
Bruno de Oliveira Abinader
a58838e14b Implement DOMImplementation::createHTMLDocument
Spec:
http://dom.spec.whatwg.org/#dom-domimplementation-createhtmldocument

Closes #1510.
2014-01-20 15:20:23 -04:00
bors-servo
733162e217 auto merge of #1508 : Ms2ger/servo/following-siblings-iter, r=jdm 2014-01-20 05:05:35 -08:00
bors-servo
a71c1125ee auto merge of #690 : recrack/servo/webidl, r=jdm
FIX #648

PR again #662, need to fix Makefile.in

I really want to use `$(Q)touch $@`. but, it is difficult to me.
So i will fix them next time. Can i ? I need to study Makefile.
2014-01-20 04:34:12 -08:00
patrick kim
8912df8a5b some refactor & fix image size compute 2014-01-20 18:46:26 +09:00
Youngmin Yoo
0523a7dfe9 Move webidl files to dom/webidl 2014-01-20 12:56:23 +09:00
Youngmin Yoo
897e037db3 Update Makefile.in for move webidls 2014-01-20 12:56:23 +09:00
bors-servo
f5ee8270f4 auto merge of #1518 : brunoabinader/servo/remove-document-title, r=Ms2ger
There is no current use for this variable.

This is a subtask for #1428.
2014-01-17 06:07:33 -08:00
Bruno de Oliveira Abinader
cdf29d4394 Remove Document's unused 'title'
There is no current use for this variable.

This is a subtask for #1428.
2014-01-17 10:00:50 -04:00
bors-servo
156461e4ce auto merge of #1512 : zmike/servo/master, r=larsbergstrom 2014-01-16 15:37:46 -08:00
Mike Blumenkrantz
bf28b1a198 update rust-azure submodule pointer related to #472 2014-01-16 18:16:03 -05:00
bors-servo
b5fcc6fe86 auto merge of #1440 : ibnc/servo/position_fixed, r=larsbergstrom
Actually removing from the normal flow will come later. 

There are some fixes for the positioned box offsets, like actually parsing percentages and naming consistency.
2014-01-16 15:13:59 -08:00
Isabelle Carter
084c7fb734 Position fixed displays out of normal flow. 2014-01-16 15:14:55 -06:00
Isabelle Carter
f58fd54875 Flagging of blocks as fixed displays 2014-01-16 15:00:28 -06:00
Ms2ger
1117e24334 Remove AbstractNode::followed_by_doctype and AbstractNode::inclusively_followed_by_doctype in favour of iterators over following siblings. 2014-01-16 16:19:16 +01:00
bors-servo
ecaaf4c145 auto merge of #1504 : brunoabinader/servo/node-replace-child, r=Ms2ger
Implements Node:replaceChild() according to spec below:
http://dom.spec.whatwg.org/#concept-node-replace

Closes #1430.
2014-01-16 06:28:08 -08:00
Bruno de Oliveira Abinader
3b82b11054 Implement Node::replaceChild()
Implements Node:replaceChild() according to spec below:
http://dom.spec.whatwg.org/#concept-node-replace

Closes #1430.
2014-01-16 10:25:17 -04:00
bors-servo
9b7425000b auto merge of #1500 : larsbergstrom/servo/content_fixup, r=metajack
r? @metajack
2014-01-15 19:40:00 -08:00
bors-servo
87b25f9c2b auto merge of #1494 : ksh8281/servo/inline_add, r=pcwalton
initial implement for inline background
it makes same result in "src/test/html/inline_bg_color_simple.html" with firefox
2014-01-15 18:20:51 -08:00
patrick kim
6364103d29 some refactor & add comment 2014-01-16 09:34:38 +09:00
bors-servo
8b22019d47 auto merge of #1502 : cmr/servo/handle_init_error, r=pcwalton
I hit this when trying to run servo in an ssh session. It hit an rtabort with
"fatal runtime error: thread-local pointer is null. bogus!" The exit is
required because at this point, the runtime is in a very weird state, and a
fail is going to explode even more violelently than the original unwrap did.
2014-01-15 15:55:43 -08:00
Corey Richardson
64b28decd0 Handle GLFW initialization failure
I hit this when trying to run servo in an ssh session. It hit an rtabort with
"fatal runtime error: thread-local pointer is null. bogus!" The exit is
required because at this point, the runtime is in a very weird state, and a
fail is going to explode even more violelently than the original unwrap did.
2014-01-15 18:48:54 -05:00
bors-servo
89bb1194c1 auto merge of #1501 : Ms2ger/servo/add_child, r=jdm 2014-01-15 15:09:20 -08:00
Ms2ger
0157ff3ca3 Reorder changes in add_child to be correct. 2014-01-15 23:53:27 +01:00
Lars Bergstrom
9ac2f5fd9b Also handle the exit after load and output file cases for ref tests 2014-01-15 15:54:47 -06:00
Lars Bergstrom
6d3429ad03 Changes the Constellation shutdown procedure to a message and response
from the Compositor instead of a message with an immediate callback.

The problem was that the old model introduced a potential deadlock. If
the Constellation had a pending RenderReadyMsg in its queue when the
ExitMsg arrived from the Compositor, the Compositor would exit its
message loop and wait for the response from the Constellation. But,
the Constellation would send a SetIds message to the Compositor, which
also required a response - resulting in deadlock.
2014-01-15 15:40:47 -06:00
Lars Bergstrom
342844ed7b When window.close() is called, we should just ask the compositor to exit
normally.

The old code made the mistake of attempting to shutdown the associated
pipelines itself, which caused race conditions with the constellation and
compositor, as they expect to be able to drain their message queues
before exiting.
2014-01-15 15:26:39 -06:00
Lars Bergstrom
3e6ff80f18 Add extra debugging information. 2014-01-15 15:26:24 -06:00
bors-servo
c120779bca auto merge of #1499 : brunoabinader/servo/documenttype-remove-quirks, r=Ms2ger
TSIA. Closes #1498.
2014-01-15 12:25:11 -08:00
Bruno de Oliveira Abinader
ef8ce13550 DocumentType does not need to know about quirks mode
TSIA. Closes #1498.
2014-01-15 16:07:11 -04:00
bors-servo
bf4498f948 auto merge of #1497 : brunoabinader/servo/domimpl-create-document-type, r=Ms2ger
Implementation according to spec:
http://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype

Closes #1489.
2014-01-15 11:07:16 -08:00
Bruno de Oliveira Abinader
0d35d4932b Implement DOMImplementation::createDocumentType
Implementation according to spec:
http://dom.spec.whatwg.org/#dom-domimplementation-createdocumenttype

Closes #1489.
2014-01-15 14:56:14 -04:00
bors-servo
c876335d22 auto merge of #1490 : pcwalton/servo/distrust-layout-new, r=jdm
Pointers to DOM nodes from layout could go stale if incremental reflow
does not correctly destroy dead nodes. Therefore, we ask the JavaScript
garbage collector to verify that each DOM node is indeed a valid pointer
before calling event handlers on it, and fail otherwise.

Depends on the `get-addressable-gc-thing` branches of `mozjs` and `rust-mozjs`.

r? @jdm
2014-01-14 22:06:56 -08:00
Patrick Walton
7d447dbc06 script: Stop trusting pointers to DOM nodes that layout provides.
Pointers to DOM nodes from layout could go stale if incremental reflow
does not correctly destroy dead nodes. Therefore, we ask the JavaScript
garbage collector to verify that each DOM node is indeed a valid pointer
before calling event handlers on it, and fail otherwise.
2014-01-14 21:51:24 -08:00
patrick kim
25a3da6180 initial implement for inline background 2014-01-15 13:39:33 +09:00
bors-servo
32bf796efc auto merge of #1488 : brunoabinader/servo/document-implementation, r=Ms2ger
Creates a DOMImplementation struct corresponding to DOMImplementation
WebIDL. Also implements a getter for Document::implementation.

Closes #1486.
2014-01-14 09:30:58 -08:00