gecko-dev/servo/components/compositing
Glenn Watson 712905dbb9 servo: Merge #17398 - Improve decisions in compositor over when to draw a frame (from glennw:opt-composite); r=jdm
This patch fixes a couple of issues in the compositor:

1) Remove the delayed composition code. Previously, this would schedule
   a composite for 12ms in the future. This doesn't really make any sense
   with WR. There's no point in doing a composite unless WR has provided
   a new frame to be drawn. This fixes issues in several benchmarks where
   we were doing multiple composite / renders per rAF, which is a waste
   of CPU time. This *does* make the framerate slower in some cases (such
   as a slow rAF callback) but it's more correct - otherwise we were just
   compositing the same frame multiple times for no real benefit.

2) Inform the window of the current animation state of the compositor.
   Specifically, if an animation (or rAF) is currently active, the
   window system switches to use event polling, and does not block on
   the OS-level event loop. In the case of active animation, we just
   assume that we want to be running as the vsync interval and not
   blocking. This means the compositor thread only sleeps on vsync
   during animation, which reduces OS scheduling and results in much
   smoother animation.

Source-Repo: https://github.com/servo/servo
Source-Revision: 819a40bfb0fd2e1f4832fa3d773c266e9179ae21

--HG--
extra : subtree_source : https%3A//hg.mozilla.org/projects/converted-servo-linear
extra : subtree_revision : 4847b3de6e3df317f61a144e6e5d931d26a2a2e4
2017-06-21 07:47:53 -07:00
..
Cargo.toml servo: Merge #17355 - Bump serde to 1.0 (from servo:serdeup); r=nox 2017-06-16 05:03:18 -07:00
compositor_thread.rs servo: Merge #17398 - Improve decisions in compositor over when to draw a frame (from glennw:opt-composite); r=jdm 2017-06-21 07:47:53 -07:00
compositor.rs servo: Merge #17398 - Improve decisions in compositor over when to draw a frame (from glennw:opt-composite); r=jdm 2017-06-21 07:47:53 -07:00
lib.rs servo: Merge #17398 - Improve decisions in compositor over when to draw a frame (from glennw:opt-composite); r=jdm 2017-06-21 07:47:53 -07:00
touch.rs servo: Merge #17184 - Bump euclid to 0.14.x (from nical:euclid-bump); r=SimonSapin 2017-06-14 07:25:05 -07:00
windowing.rs servo: Merge #17398 - Improve decisions in compositor over when to draw a frame (from glennw:opt-composite); r=jdm 2017-06-21 07:47:53 -07:00