Clark Gaebel
eef969a23f
Removes the useless 'static constraint on SmallVec.
...
It was likely added accidentally after a rustc upgrade.
r? @jdm
2014-11-03 12:03:47 -08:00
bors-servo
cef58ccf29
auto merge of #3872 : kmcallister/servo/stb-error, r=jdm
2014-11-03 12:39:34 -07:00
bors-servo
c9089c45c4
auto merge of #3857 : mrobinson/servo/queries, r=pcwalton
...
Instead of looking at the display tree, have ContentBox(es)Query consult
the flow tree. This allow optimizing away parts of the display tree
later. To do this we need to be more careful about how we send reflow
requests, only querying the flow tree when possible.
Fixes #3790 .
2014-11-03 12:03:37 -07:00
Martin Robinson
2d72f00ccf
Have ContentBox(es)Queries consult the flow tree
...
Instead of looking at the display tree, have ContentBox(es)Query consult
the flow tree. This allow optimizing away parts of the display tree
later. To do this we need to be more careful about how we send reflow
requests, only querying the flow tree when possible.
Fixes #3790 .
2014-11-03 10:30:28 -08:00
bors-servo
169e6a2297
auto merge of #3863 : Ms2ger/servo/cleanup-caption, r=Manishearth
2014-11-03 11:27:38 -07:00
bors-servo
21374700b6
auto merge of #3862 : Manishearth/servo/lint-fix, r=jdm
...
The correct thing to do here is to use `#[allow(unrooted_must_root)]` (the warning already mentions this). `#[must_root]` on functions does nothing.
2014-11-03 10:54:35 -07:00
Mukilan Thiyagarajan
7435db26ac
Fix race condition in XHR and handle other abort/open scenarios
...
This fixes issue #3630
A short summary of the changes:
* Use generation id to cancel inflight requests
* Handles nested calls to abort, open, send inside handlers
* Adds XHRReleaseMsg to delay freeing XHR object till all
inflight events are processed
* Change the ErroredMsg enum to be more symmetric with the returned
Error enum
2014-11-03 22:06:17 +05:30
Keegan McAllister
a4bf64c582
More useful stb-image error handling
2014-11-02 15:20:22 -08:00
bors-servo
1a3ff8739c
auto merge of #3871 : Ms2ger/servo/node-cleanup, r=Ms2ger
2014-11-02 14:51:33 -07:00
Ms2ger
68f3daa7ef
Simplify the implementation of NodeIterator::next_child.
2014-11-02 21:28:06 +01:00
Ms2ger
cb68fbd68e
Simplify the implementation of NodeHelpers::child_elements.
2014-11-02 21:26:59 +01:00
Mitchell Van Der Hoeff
536201e2b5
Initialize 'cancelable' to false in Event::new_inherited. Fixes #3855 .
2014-11-02 11:36:11 -05:00
bors-servo
035ff19e4a
auto merge of #3860 : pcwalton/servo/reflow-out-of-flow, r=glennw
...
This is the last PR and most of the work for the maze solver and RoboHornet.
r? @glennw
cc @cgaebel
2014-10-31 14:39:34 -06:00
bors-servo
4418a28e7a
auto merge of #3830 : pcwalton/servo/persistent-list-floats, r=kmcallister
...
r? @kmcallister
2014-10-31 14:00:39 -06:00
Patrick Walton
a208463b62
layout: Employ a persistent list data structure to avoid copying floats
...
all the time.
Improves performance on the maze solver significantly since this was
basically O(n^2) before.
2014-10-31 12:42:32 -07:00
Patrick Walton
c4c4988ee1
util: Add persistent lists as a useful general-purpose thread-safe data
...
structure.
This will be used to improve our storage management for float lists.
2014-10-31 12:42:32 -07:00
Patrick Walton
08fc7c2795
layout: Make incremental reflow more fine-grained by introducing "reflow
...
out-of-flow" and "reconstruct flow" damage bits.
This is needed for good performance on the maze solver.
2014-10-31 12:24:40 -07:00
Patrick Walton
265763518f
layout: Make absolute position calculation idempotent.
...
This will be necessary for incremental reflow of absolutely-positioned
flows.
2014-10-31 12:24:39 -07:00
bors-servo
72f6e14f0b
auto merge of #3834 : pcwalton/servo/smallvec-debugging, r=pcwalton
...
r? @cgaebel
2014-10-31 11:48:36 -06:00
Patrick Walton
b245a2475f
script: Fix busted document fragment appending code
2014-10-31 10:24:49 -07:00
Patrick Walton
779ab4c5f0
gfx: Enhance display list debugging a bit with support for dumping
...
stacking levels, etc.
2014-10-31 10:13:08 -07:00
Patrick Walton
7321373d6b
util: Add a Show
implementation to SmallVec
2014-10-31 10:12:08 -07:00
Bruno de Oliveira Abinader
d5d4d0bec4
s/peek().is_some()/!is_empty()/
2014-10-31 11:17:08 -04:00
Bruno de Oliveira Abinader
11d2251b1e
ChildElementIterator is now peekable
2014-10-31 10:52:39 -04:00
Bruno de Oliveira Abinader
eb1ef59aee
s/AbstractNodeChildrenIterator/NodeChildrenIterator/
2014-10-31 10:52:02 -04:00
Ms2ger
bd547dee5e
Cleanup the implementation of HTMLTableElement::GetCaption.
2014-10-31 10:25:44 +01:00
Manish Goregaokar
f6e14119b6
Remove suggestion to use #[must_root] for functions
2014-10-31 11:57:42 +05:30
bors-servo
ba13e448cf
auto merge of #3838 : pcwalton/servo/style-sharing-enhancements, r=SimonSapin
...
This helps avoid problems with style sharing in common cases, often
caused by the user agent stylesheet.
r? @SimonSapin
2014-10-30 16:33:36 -06:00
Bruno de Oliveira Abinader
5db3eb0cee
Cleanup Element's AttributeHandlers
...
Remove notify_attribute_{changed,removed} in favor of a unified
notify_content_changed.
2014-10-30 17:14:25 -04:00
bors-servo
7de9ed5fc7
auto merge of #3856 : Ms2ger/servo/tagname, r=Manishearth
...
format!("{}", atom) yields strings like "Atom('span' type=Inline)", which is
not intended here.
2014-10-30 12:27:35 -06:00
Ms2ger
82216fd5c0
Move build_element_from_tag out of the HTML parser.
...
This function is not particular to the parser, so should live in the DOM.
2014-10-30 18:03:19 +01:00
Ms2ger
671a487145
Format Element#tagName correctly when there's a prefix.
...
format!("{}", atom) yields strings like "Atom('span' type=Inline)", which is
not intended here.
2014-10-30 11:51:27 +01:00
Glenn Watson
69c5bc8fca
Update to use new GL bindings.
2014-10-30 15:31:10 +10:00
Matt Brubeck
598150ea78
Implement cloning steps for script element
2014-10-29 14:31:47 -07:00
Matt Brubeck
f39e01b336
Don't force reflow on content changes
...
This fixes a performance regression caused by the previous patches. Once we
allowed script and layout to run during parsing, it was running too often
(every time the document changed and called window.reflow).
Fixes #1269 .
2014-10-29 14:31:47 -07:00
Matt Brubeck
fe123ad07c
Switch to synchronous script loading
...
This removes the old code for asyncronously loading scripts during HTML
parsing and then executing them afterward.
Fixes #3356 .
2014-10-29 14:31:47 -07:00
Matt Brubeck
65a0d1fe9a
Infrastructure for synchronous script loading
...
This implements the parts of the "prepare a script element" algorithm that are
required for synchronous scripts. It also adds some infrastructure for future
support of the `async` and `defer` attributes.
2014-10-29 14:30:42 -07:00
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