diff options
author | Martin Robinson <mrobinson@igalia.com> | 2014-10-22 14:00:09 -0700 |
---|---|---|
committer | Martin Robinson <mrobinson@igalia.com> | 2014-11-11 08:46:16 -0800 |
commit | c7327450ef1328a6045cfb8a47321e78976ca7a8 (patch) | |
tree | c5b6fa5d82eaed3164b0b58f93e1ce6a15239510 /components/layout/layout_task.rs | |
parent | f4471f06029ac03aa2ee26aa4398daaab9c6a371 (diff) | |
download | servo-c7327450ef1328a6045cfb8a47321e78976ca7a8.tar.gz servo-c7327450ef1328a6045cfb8a47321e78976ca7a8.zip |
Clip display list based on frame viewport
Instead of creating a display list for the entire page, only create one
for an area that expands around the viewport. On my machine this makes
incremental layout of http://timecube.com 50% faster.
Diffstat (limited to 'components/layout/layout_task.rs')
-rw-r--r-- | components/layout/layout_task.rs | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/components/layout/layout_task.rs b/components/layout/layout_task.rs index 1ed51197db2..e1e918251cd 100644 --- a/components/layout/layout_task.rs +++ b/components/layout/layout_task.rs @@ -625,6 +625,8 @@ impl LayoutTask { LogicalPoint::zero(writing_mode).to_physical(writing_mode, rw_data.screen_size); + flow::mut_base(layout_root.deref_mut()).clip_rect = data.page_clip_rect; + let rw_data = rw_data.deref_mut(); match rw_data.parallel_traversal { None => { |