Commit 40e28dfd authored by Botond Ballo's avatar Botond Ballo
Browse files

Bug 1248822 - In LayerManagerComposite::UpdateAndRender(), call...

Bug 1248822 - In LayerManagerComposite::UpdateAndRender(), call PostProcessLayers() before LayerTreeInvalidation. r=mattwoodrow

The reason is that PostProcessLayers() can change the effective visible region,
and LayerTreeInvalidation needs the final effective visible region.

MozReview-Commit-ID: 1wLROyOTcIB
parent 81561bca
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -425,6 +425,10 @@ LayerManagerComposite::UpdateAndRender()
  nsIntRegion invalid;
  bool didEffectiveTransforms = false;

  nsIntRegion opaque;
  LayerIntRegion visible;
  PostProcessLayers(mRoot, opaque, visible, Nothing());

  if (mClonedLayerTreeProperties) {
    // Effective transforms are needed by ComputeDifferences().
    mRoot->ComputeEffectiveTransforms(gfx::Matrix4x4());
@@ -478,10 +482,6 @@ LayerManagerComposite::UpdateAndRender()
    mRoot->ComputeEffectiveTransforms(gfx::Matrix4x4());
  }

  nsIntRegion opaque;
  LayerIntRegion visible;
  PostProcessLayers(mRoot, opaque, visible, Nothing());

  Render(invalid);
#if defined(MOZ_WIDGET_ANDROID) || defined(MOZ_WIDGET_GONK)
  RenderToPresentationSurface();