diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2016-07-27 17:56:26 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-07-27 17:56:26 -0500 |
commit | 944d371b8f0e72f6aa5465be38c0c8daeab66127 (patch) | |
tree | 391b480443f7436f11b5af3118d5b6ddfdc72b58 /components/script/script_thread.rs | |
parent | 901bb7bb0b12c62fda9b8211825e0f559947812a (diff) | |
parent | f6043a23942816989c51798c069c11e8e8726882 (diff) | |
download | servo-944d371b8f0e72f6aa5465be38c0c8daeab66127.tar.gz servo-944d371b8f0e72f6aa5465be38c0c8daeab66127.zip |
Auto merge of #12563 - emilio:stylo, r=bholley,jdm,pcwalton
stylo: Improve restyling performance
This commit adds hooks to the Servo style traversal to avoid traversing all the
DOM for every restyle. Additionally it changes the behavior of the dirty flag to
be propagated top down, to prevent extra overhead when an element is dirtied.
This commit doesn't aim to change the behavior on Servo just yet, since Servo does extra job when dirtying the node related with DOM revision counters that might be necessary.
CC @asajeffrey for the DOM revision counters stuff. When a node is dirty, do all its descendants really need to increment the revision counter, or is this an unintended effect? My intuition is that this is hurting performance quite a lot for servo.
r? @bholley
<!-- Please describe your changes on the following line: -->
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
<!-- Either: -->
- [x] These changes do not require tests because no geckolib tests yet.
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/12563)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script/script_thread.rs')
-rw-r--r-- | components/script/script_thread.rs | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/components/script/script_thread.rs b/components/script/script_thread.rs index d5d23578c7a..e3d2766c84c 100644 --- a/components/script/script_thread.rs +++ b/components/script/script_thread.rs @@ -1198,8 +1198,6 @@ impl ScriptThread { // https://html.spec.whatwg.org/multipage/#the-end step 7 let handler = box DocumentProgressHandler::new(Trusted::new(doc)); self.dom_manipulation_task_source.queue(handler, GlobalRef::Window(doc.window())).unwrap(); - - self.constellation_chan.send(ConstellationMsg::LoadComplete(pipeline)).unwrap(); } fn collect_reports(&self, reports_chan: ReportsChan) { |