Commit graph

3647 commits

Author SHA1 Message Date
Keegan McAllister
fad7df8e7a Simplify HTMLCollection predicates 2013-08-02 10:38:48 -07:00
bors-servo
2239436136 auto merge of #663 : sanxiyn/servo/from-length, r=metajack 2013-08-02 10:15:28 -07:00
bors-servo
5f62c95437 auto merge of #659 : sonwow/servo/dom, r=jdm
Basic implementation about DOM tree accessors in HTMLDocument.
(image, embeds, plugins, links, forms, scripts, anchors, applets)
2013-08-02 05:39:32 -07:00
Seo Sanghyeon
018e220495 Factor out CSS length to Au conversion 2013-08-02 20:51:18 +09:00
Youngsoo Son
7b20da05f6 Fix some implementations for DOM tree accessors 2013-08-02 18:53:38 +09:00
eschweic
0e737741b3 Add compositor_layer.rs 2013-08-01 17:09:05 -07:00
eschweic
95f089e98d Allow rectangular tiles 2013-08-01 17:09:05 -07:00
eschweic
b0b62e2c53 Add resize functionality to quadtrees 2013-08-01 17:09:05 -07:00
bors-servo
1d04d5f1bc auto merge of #646 : kmcallister/servo/incremental-layout, r=metajack
This is a first attempt at incremental layout.  When recomputing styles, we compare old and new CSS properties to determine which layout steps can be skipped.

Since I'm new to Servo I'm not sure that my code matches the idioms of the project.  Please don't hold back with review comments :)
2013-08-01 15:42:26 -07:00
Keegan McAllister
b266b5a949 Fix color-change-text.js
After a2bdab7 we need window.document instead of document.
2013-08-01 15:31:58 -07:00
Keegan McAllister
ea5fb8c4a3 First attempt at incremental layout
For now we only prune the bubble_widths traversal, because of inability to
reuse FloatContexts.  Other limitations are likewise marked with FIXME
comments.
2013-08-01 15:31:58 -07:00
Keegan McAllister
f582a76b4b Add traverse_{pre,post}order_prune 2013-08-01 15:31:57 -07:00
Keegan McAllister
5e90722100 Bump rust-css version 2013-08-01 15:31:57 -07:00
Keegan McAllister
a9a5e90787 Move is_root() into AbstractNode 2013-08-01 15:31:57 -07:00
Keegan McAllister
ae79f5351d Derive Clone for FlowContext 2013-08-01 15:31:57 -07:00
Keegan McAllister
aae230c73f Clean up calls to layout_root.dump()
We had two calls, one of which was dead code.
2013-08-01 15:31:57 -07:00
Keegan McAllister
c047a4b436 Replace some Option matching with higher order methods
This shrinks the code and should be easier to read if we are used to the
idioms.

Also change one copy to clone() while we're here.
2013-08-01 15:31:57 -07:00
bors-servo
bb51a9d6fb auto merge of #657 : tkuehn/servo/master, r=metajack 2013-08-01 11:48:31 -07:00
Tim Kuehn
95f71f8fb9 minor FP-style function refactor 2013-07-31 22:06:42 -07:00
bors-servo
13afd25679 auto merge of #656 : kmcallister/servo/dynamic-freeze, r=jdm
Fixes #455 (for now)

Also add a comment about how what we're doing here is unsafe (for reasons that are mostly unrelated to the warning)

r? @tkuehn
2013-07-31 21:57:33 -07:00
Youngsoo Son
8032b17e36 This implements the DOM tree accessors that return a HTMLCollection 2013-08-01 11:56:17 +09:00
Keegan McAllister
e661ce66b6 Fix freeze scope extension warning
Fixes #455 (for now)

Also add a comment about how what we're doing here is unsafe (for reasons that
are mostly unrelated to the warning)
2013-07-31 17:54:26 -07:00
bors-servo
288eee073f auto merge of #654 : tkuehn/servo/master, r=metajack
Fixes #653.
r? @metajack
2013-07-31 16:03:23 -07:00
Tim Kuehn
c3d19c531b use consume_iter() instead of iter().transform(|&x| x) 2013-07-31 15:52:43 -07:00
bors-servo
feee4ddcb2 auto merge of #647 : tkuehn/servo/master, r=metajack
This will be necessary for the constellation to properly assign sizes to iframes when a parent layout performs reflow.
2013-07-31 14:42:29 -07:00
Tim Kuehn
8eac64b0ae refactor constellation methods to follow FP style 2013-07-31 13:12:33 -07:00
Tim Kuehn
00658b2ad0 fix how FrameTrees are copied 2013-07-31 13:12:33 -07:00
Tim Kuehn
97a60f35e3 add next_subpage_id to Page struct 2013-07-31 13:12:33 -07:00
Tim Kuehn
5d7626fa44 when loading an iframe, now searches for all instances of parent pipeline in the navigation context to append the child frame to 2013-07-31 13:12:33 -07:00
Tim Kuehn
959ed774b4 current frame tree is copied upon subframe navigation to prevent changes from being transitively received 2013-07-31 13:12:33 -07:00
Tim Kuehn
2348fbf46d added subpage ids to map from iframe to all associated pipelines 2013-07-31 13:12:32 -07:00
bors-servo
7911ae5695 auto merge of #645 : jdm/servo/window, r=jdm
This one also looks larger than necessary because GetParentObject needed to be changed to return an Option.
2013-07-30 13:57:26 -07:00
Josh Matthews
a2bdab7989 Generate bindings for Window. 2013-07-30 16:30:46 -04:00
bors-servo
0c105b5307 auto merge of #641 : jdm/servo/htmldoc2, r=jdm
There are several mechanical changes here that make this look more intimidating than it is. DOMStrings are now passed by reference, and Event and Event_ have swapped names. Finally, there are the various places that need to use `document.with_base |doc| { document.foo }` instead of `document.foo`.
2013-07-30 13:30:24 -07:00
Josh Matthews
5546f2105b Generate HTMLDocument bindings. Introduce invariant into generated bindings that associated DOM classes are named the same as their interfaces, so Event and Event_ need to be swapped. 2013-07-30 16:28:02 -04:00
bors-servo
ad8fa8b3d7 auto merge of #640 : recrack/servo/fixme_each_mut, r=jdm 2013-07-30 06:27:20 -07:00
Youngmin Yoo
0c1a277e8f FIXME: uint::range to vec`s iter().advance 2013-07-30 19:28:24 +09:00
bors-servo
0acb313c55 auto merge of #638 : tkuehn/servo/master, r=metajack
... renderers
2013-07-29 23:06:19 -07:00
Tim Kuehn
1d4b0844b4 refactored for more code reuse in constellation 2013-07-29 22:48:19 -07:00
Tim Kuehn
80675351b3 constellation blocks on compositor before sending permission to paint to renderers 2013-07-29 22:41:05 -07:00
bors-servo
d9e71edb10 auto merge of #628 : tkuehn/servo/master, r=metajack
Completed:
  * Replace pipeline navigation context with frame tree navigation context
  * Reuse script task for same origin iframes
  * Block on size future for iframe reflow
  * Remove global script context
  * Change codegen to use specific page context rather than script context.

Still to do:
  * Compositor's handling of relative frame positions
  * Compositor currently only asks for tiles from outermost frame
  * Window events are forwarded to the outermost frame's script. Should be routed to proper script via constellation.
  * Layout's sending of updated iframe sizes to constellation or size future (initial size only) as reflow is performed
2013-07-29 21:21:19 -07:00
Tim Kuehn
572f4825ec updated rust-http-client submodule 2013-07-29 21:18:10 -07:00
Tim Kuehn
2e6ad0a4a3 fix borrow check failures by reverting to storing *mut Page in window 2013-07-29 20:22:01 -07:00
Tim Kuehn
2b94dd6664 remove unused arg from script_task::handle_navigate_msg
remove unnecessary commented-out code
2013-07-29 15:53:28 -07:00
Tim Kuehn
ec30e97ddf removed a call to copy in servo.rc and renamed NavigationContext.navigate ==> NavigationContext.load 2013-07-29 15:02:06 -07:00
Tim Kuehn
df5306e358 switched window.page from *mut Page to @mut Page 2013-07-29 14:14:31 -07:00
Tim Kuehn
43491d5b23 navigation bug fix 2013-07-29 13:50:41 -07:00
Tim Kuehn
b7e2eab2f4 handle pipeline exiting properly 2013-07-29 12:43:41 -07:00
Tim Kuehn
e9888b299c structural changes to support Iframes 2013-07-29 11:03:17 -07:00
bors-servo
eaa20edcd7 auto merge of #627 : jdm/servo/docgen, r=kmc,jack 2013-07-28 09:15:27 -07:00