Bug 874353 - Remove CPU wake lock control from ContentParent. r=gene, khuey
Bug 1026023 - Part 3: Integrate MSD movement with nsGfxScrollFrame. r=mattwoodrow
- Added nsIScrollableFrame::ScrollMode::SMOOTH_MSD to differentiate
  existing smooth scrolls used by keyboard and mousewheel events from the
  CSSOM-View scroll-behavior's MSD motion scrolling.
- Implemented ScrollFrameHelper::AsyncSmoothMSDScroll, which takes the role
  of ScrollFrameHelper::AsyncScroll when SMOOTH_MSD scrolls are requested.
- Implemented glue code to handle callbacks from AsyncSmoothMSDScroll and
  to hand off velocity between the classes when one scroll animation is
  interrupted by another.
Bug 1026023 - Part 1: Create Preferences. r=mwoodrow
- Added layout.css.scroll-behavior.enabled preference to enable and disable
  scroll behavior and related smooth scrolling.
- Added layout.css.scroll-behavior.spring-constant preference to enable tuning
  of the smooth scroll motion.  spring-constant controls the strength of the
  simulated MSD (Mass-Spring-Damper).
- Added layout.css.scroll-behavior.damping-ratio preference to enable tuning
  of the smooth scroll motion.  damping-ratio controls the under, over, or
  critically damped behavior of the simulated MSD.
Bug 1026023 - Part 2: Implement Physically Based Movement Model. r=mwoodrow
- Implemented the AxisPhysicsModel class, which encapsulates interpolation and
  integration of a 1-dimensional physics model in a frame-rate independent
  and stable manner.
- Implemented the AxisPhysicsMSDModel class, which models a generic
  1-dimensional Mass-Spring-Damper simulation.
- This physical movement simulation code has been implemented separately from
  the existing momentum code in Axis.cpp so that it can be utilized by
  both the compositor (AsyncPanZoomController) and main thread
  (nsGfxScrollFrame).
Bug 1026023 - Part 4: Allow smooth scrolling to override momentum mouse wheel scroll events. r=mwoodrow
- When a smooth scroll is being processed on a frame, mouse wheel and trackpad
  momentum scroll event updates will no longer cancel the SMOOTH or SMOOTH_MSD
  scroll animations, enabling scripts that depend on them to be responsive
  without forcing the user to wait for the fling animations to completely stop.
Bug 1038402 - Webgl half float support used wrong shift value when converting from packed float to regular float. r=kamidphish