bors-servo
5858fccf87
auto merge of #3718 : juzer10/servo/master, r=jdm
...
We have created parser trait and declared parse_chunk function in this trait. We are yet to implement this parse_chunk for ServoHTMLParser struct.
2014-10-29 14:36:45 -06:00
Clark Gaebel
314a0d671e
layout: Actually calculate restyle damage while styling.
...
...oops. Looks like I forgot to do this.
r? @pcwalton
2014-10-29 09:34:08 -07:00
nchinth
6a736c7f3c
Adding initial version of parser trait
...
Added parse_chunk method declaration to parser
Removed unnecessary visibilty for parse_chunk function
Implemented parse_chunk function
Implemented parse_chunk fn for ServoHTMLParser
Moved parser trait to mod.rs and added finish fn
added licence header to mod.rs and other review comments
Fixed trailing space issue
Fixed failed tabular space test
2014-10-29 11:31:20 -04:00
Patrick Walton
587cf98209
layout: Promote absolute positioning, floatedness, and clearance into
...
flags to avoid virtual calls.
These were showing up really high in the maze solver profile.
2014-10-28 19:38:22 -07:00
bors-servo
c20bb66aef
auto merge of #3841 : pcwalton/servo/removing-whitespace-damage, r=cgaebel
...
Avoids total reflow of the entire document on the maze solver.
I have tested Wikipedia reflow and it still works.
r? @cgaebel
2014-10-28 19:12:39 -06:00
bors-servo
08288fea41
auto merge of #3840 : pcwalton/servo/ib-splits-linked-list, r=glennw
...
r? @glennw
2014-10-28 18:36:41 -06:00
bors-servo
651ef60b1c
auto merge of #3839 : pcwalton/servo/fewer-moves-in-dls, r=glennw
...
These were showing up in the profile.
r? @glennw
2014-10-28 17:57:43 -06:00
bors-servo
4bdd9a5ec0
auto merge of #3837 : pcwalton/servo/layout-formatting-cleanups, r=metajack
...
These should have no effect on functionality.
r? @metajack
2014-10-28 17:21:48 -06:00
bors-servo
59fc795025
auto merge of #3829 : cgaebel/servo/fix-into_iter, r=pcwalton
...
into_iter used to use `inline_size` as the capacity insetad of the actual
capacity. This patch fixes that, adds some utility methods to `SmallVec`
to bring it closer in functionality to `Vec`, and removes the obsolete
`owns_managed` calls.
2014-10-28 16:36:47 -06:00
Patrick Walton
01965c399e
layout: Stop adding damage when removing whitespace.
...
Avoids total reflow of the entire document on the maze solver.
2014-10-28 14:56:39 -07:00
Patrick Walton
16c0ebc14c
layout: Put {ib} splits into a linked list so we stop copying them all
...
the time.
2014-10-28 14:39:45 -07:00
Glenn Watson
90d793cdc8
Add task profiler, which works by instrumenting each task runtime when enabled.
2014-10-29 07:34:47 +10:00
Patrick Walton
93bf69a6fe
layout: Use the new append_from
method to get rid of a bunch of moves
...
in display list construction.
These were showing up in the profile.
2014-10-28 14:28:34 -07:00
Patrick Walton
4bf0acbe38
layout: Support more types of selectors for style sharing.
...
This helps avoid problems with style sharing in common cases, often
caused by the user agent stylesheet.
2014-10-28 14:12:50 -07:00
bors-servo
3aad350a64
auto merge of #3832 : pcwalton/servo/display-list-inline, r=mrobinson
...
r? @mrobinson (or whoever)
2014-10-28 14:27:54 -06:00
bors-servo
c109f6ff77
auto merge of #3831 : pcwalton/servo/append-from, r=mbrubeck
...
This is tracked upstream as Rust bug #18402 .
r? @mbrubeck
2014-10-28 13:48:58 -06:00
bors-servo
2d8bd10abe
auto merge of #3828 : cgaebel/servo/layout-node-dumping, r=pcwalton
...
r? @pcwalton
2014-10-28 13:12:52 -06:00
Clark Gaebel
d661ec8414
fix the build
2014-10-28 12:01:33 -07:00
Patrick Walton
68091d7a86
layout: Make some formatting cleanups.
...
These should have no effect on functionality.
2014-10-28 12:00:35 -07:00
bors-servo
5bd0a578fd
auto merge of #3823 : glennw/servo/default-opts, r=mbrubeck
...
This is required for unit tests like the image cache task, which can pass through code paths that query the command line options.
2014-10-28 12:36:51 -06:00
Patrick Walton
a94e13f888
script: Use an FNV hash to hash event listeners.
...
The security properties of SipHash are irrelevant for event listeners
and the creation of the random number generator was showing up high in
the profiles.
2014-10-28 11:34:06 -07:00
Patrick Walton
8ab354ac08
script: Don't create a temporary vector on the heap when inserting
...
non-fragment nodes.
2014-10-28 11:18:43 -07:00
Patrick Walton
6a7a96a86c
script: Don't dirty nodes that are already dirty.
2014-10-28 11:17:26 -07:00
Patrick Walton
e034c1cee2
script: Use String::new()
instead of the formatting infrastructure
...
when constructing DOM unique IDs.
This was showing up in the RoboHornet profile.
2014-10-28 11:16:20 -07:00
Patrick Walton
6f577c7c84
script: Avoid a temporary when constructing <td>
and <tr>
elements.
...
Was a huge improvement to RoboHornet.
2014-10-28 11:14:06 -07:00
Patrick Walton
5e9127e2b2
script: Use a 16-element SmallVec
for the root collection.
...
In my tests the size of the root collection never exceeded 7, so 16
seems like a nice conservative number.
2014-10-28 11:12:09 -07:00
bors-servo
3b6e035d0d
auto merge of #3826 : cgaebel/servo/fix-resize, r=pcwalton
...
Currently, both restyle/flow construction _and_ reflow are skipped
during resize. Reflow should not be in that list. This patch fixes
that.
2014-10-28 12:00:51 -06:00
Patrick Walton
0758ca9a08
gfx: Inline a few commonly-used methods that were showing up in profiles
2014-10-28 10:55:19 -07:00
Patrick Walton
1a28960bd2
util: Add a method to push all elements from another doubly-linked list
...
without any moves.
This is tracked upstream as Rust bug #18402 .
2014-10-28 10:47:04 -07:00
Clark Gaebel
fe36399628
use size hints
2014-10-28 10:36:41 -07:00
Clark Gaebel
e4d8741991
remove warning
2014-10-28 10:28:24 -07:00
Clark Gaebel
47091c014d
combine conditions
2014-10-28 10:26:48 -07:00
Clark Gaebel
cb5fa23a1e
use println instead of error
2014-10-28 10:24:50 -07:00
bors-servo
ff06be91eb
auto merge of #3827 : cgaebel/servo/use-custom-spawn, r=pcwalton
...
During debugging, I found it useful to hook all task creation in a
central location, and util::task was the perfect place for it.
r? @pcwalton (or maybe someone else, I'm kinda sending you a bunch of
reviews today because I don't know who better to give them to)
2014-10-28 11:24:43 -06:00
Clark Gaebel
4d610e36bd
util: Primarily fixes a bug where SmallVec.into_iter just doesn't work.
...
into_iter used to use `inline_size` as the capacity insetad of the actual
capacity. This patch fixes that, adds some utility methods to `SmallVec`
to bring it closer in functionality to `Vec`, and removes the obsolete
`owns_managed` calls.
2014-10-28 10:22:34 -07:00
Clark Gaebel
a8f80b89f4
layout: Implement flow tree dumping with RUST_LOG=debug is on.
...
r? @pcwalton
2014-10-28 10:14:12 -07:00
Clark Gaebel
14b1c320a6
make naming more consistent
2014-10-28 10:06:39 -07:00
Clark Gaebel
6df1cc8e4c
Run all task spawning through util, to allow for easy hooking.
...
During debugging, I found it useful to hook all task creation in a
central location, and util::task was the perfect place for it.
r? @pcwalton (or maybe someone else, I'm kinda sending you a bunch of
reviews today because I don't know who better to give them to)
2014-10-28 09:53:45 -07:00
Clark Gaebel
432071b703
Layout: Fix resize (which just plain doesn't work right now).
...
Currently, both restyle/flow construction _and_ reflow are skipped
during resize. Reflow should not be in that list. This patch fixes
that.
2014-10-28 09:35:24 -07:00
bors-servo
541077286c
auto merge of #3819 : mrobinson/servo/clean-up-events, r=pcwalton
...
There are many function and methods that operate on a single layer, that can really just be methods on a CompositorLayer trait. This greatly simplifies the way that Compositor interacts with its child layers. This PR is just code motion.
2014-10-28 09:39:43 -06:00
Martin Robinson
80a6f3a732
Move compositor_data.rs to compositor_layer.rs.
...
The new name better reflects the majority of the code in the file.
2014-10-28 08:33:23 -07:00
Martin Robinson
c0fa32e7aa
Combine events and CompositorData methods into CompositorLayer
...
This is a more natural collection of methods, as they all operate
directly on layers and accept a layer as their first argument.
2014-10-28 08:33:23 -07:00
Martin Robinson
96f6c53b52
Make compositor event handling a Layer trait
...
This simplifies the way that event handling interacts with the
compositor.
2014-10-28 08:33:23 -07:00
Glenn Watson
743ea6381a
If opts is retrieved, but not set by platform layer, return a default set.
...
This is required for unit tests like the image cache task, which can
pass through code paths that query the command line options.
2014-10-28 14:58:31 +10:00
Clark Gaebel
293969cb7d
Addressed code review comments.
2014-10-27 14:19:44 -07:00
LalehB
b0d16462ff
Adding back-off instead of busy-spinning
...
Also changed the total number of spinning similar to Cilk
2014-10-27 14:14:21 -07:00
Ms2ger
7d44f7bf1e
Cleanup some code in image_cache_task.rs.
2014-10-26 22:26:43 +01:00
Mukilan Thiyagarajan
e023662571
Implement [LenientThis] support and enable it in Document.webidl
...
Closes issue #3760
2014-10-25 12:05:36 +05:30
Keegan McAllister
f508a82582
Provide safety check helpers in release builds
...
debug_assert! uses
if cfg!(not(ndebug)) { ... }
so the body in a release build is dead code, but it still needs to compile.
2014-10-24 16:53:58 -07:00
Keegan McAllister
4dee8ecdf0
task_state: Generate the list of task types
...
Also fix warnings.
2014-10-24 16:44:34 -07:00