Bug 1057645 - Update Frame Uniformity Tool to use APZC metrics. r=botond

CLOSED TREE
This commit is contained in:
Mason Chang 2014-08-25 08:56:00 -04:00
Родитель 82c4993d66
Коммит ff234cdc98
1 изменённых файлов: 11 добавлений и 17 удалений

Просмотреть файл

@ -22,6 +22,7 @@
#include "mozilla/layers/Effects.h" // for Effect, EffectChain, etc
#include "mozilla/layers/TextureHost.h" // for CompositingRenderTarget
#include "mozilla/layers/AsyncPanZoomController.h" // for AsyncPanZoomController
#include "mozilla/layers/AsyncCompositionManager.h" // for ViewTransform
#include "mozilla/mozalloc.h" // for operator delete, etc
#include "nsAutoPtr.h" // for nsRefPtr
#include "nsDebug.h" // for NS_ASSERTION
@ -86,16 +87,6 @@ GetOpaqueRect(Layer* aLayer)
return result;
}
static gfx::Point GetScrollData(Layer* aLayer) {
gfx::Matrix matrix;
if (aLayer->GetLocalTransform().Is2D(&matrix)) {
return matrix.GetTranslation();
}
gfx::Point origin;
return origin;
}
static void DrawLayerInfo(const RenderTargetIntRect& aClipRect,
LayerManagerComposite* aManager,
Layer* aLayer)
@ -119,7 +110,6 @@ static void DrawLayerInfo(const RenderTargetIntRect& aClipRect,
aManager->GetTextRenderer()->RenderText(ss.str().c_str(), gfx::IntPoint(topLeft.x, topLeft.y),
aLayer->GetEffectiveTransform(), 16,
maxWidth);
}
static void PrintUniformityInfo(Layer* aLayer)
@ -135,12 +125,16 @@ static void PrintUniformityInfo(Layer* aLayer)
return;
}
const LayerPoint scrollOffset = frameMetrics.GetScrollOffsetInLayerPixels();
const gfx::Point layerTransform = GetScrollData(aLayer);
const gfx::Point layerScroll = scrollOffset.ToUnknownPoint() - layerTransform;
printf_stderr("UniformityInfo Layer_Move %llu %p %f, %f\n",
TimeStamp::Now(), aLayer, layerScroll.x, layerScroll.y);
AsyncPanZoomController* apzc = aLayer->GetAsyncPanZoomController();
if (apzc) {
ViewTransform asyncTransform, overscrollTransform;
ScreenPoint scrollOffset;
apzc->SampleContentTransformForFrame(&asyncTransform,
scrollOffset,
&overscrollTransform);
printf_stderr("UniformityInfo Layer_Move %llu %p %f, %f\n",
TimeStamp::Now(), aLayer, scrollOffset.x.value, scrollOffset.y.value);
}
}
/* all of the per-layer prepared data we need to maintain */