Surfaceflinger: Add transform info into dumpsys
The minor dumpsys SurfaceFlinger enhancement explicitly exposes the
transform info of active buffers and HWC layers. It helps developers
understand more about when and why HWC layers are rotated.
Bug: b/80267683
Test: Keep dumpsys SurfaceFlinger during monkey test
Change-Id: Ia0d78170129346891cb6834736f7eff7d13c32d3
diff --git a/services/surfaceflinger/layerproto/LayerProtoParser.cpp b/services/surfaceflinger/layerproto/LayerProtoParser.cpp
index fcf42f0..e1c0fd3 100644
--- a/services/surfaceflinger/layerproto/LayerProtoParser.cpp
+++ b/services/surfaceflinger/layerproto/LayerProtoParser.cpp
@@ -114,6 +114,7 @@
layer->transform = generateTransform(layerProto.transform());
layer->requestedTransform = generateTransform(layerProto.requested_transform());
layer->activeBuffer = generateActiveBuffer(layerProto.active_buffer());
+ layer->bufferTransform = generateTransform(layerProto.buffer_transform());
layer->queuedFrames = layerProto.queued_frames();
layer->refreshPending = layerProto.refresh_pending();
layer->hwcFrame = generateRect(layerProto.hwc_frame());
@@ -312,6 +313,7 @@
StringAppendF(&result, " zOrderRelativeOf=%s\n",
zOrderRelativeOf == nullptr ? "none" : zOrderRelativeOf->name.c_str());
StringAppendF(&result, " activeBuffer=%s,", activeBuffer.to_string().c_str());
+ StringAppendF(&result, " tr=%s", bufferTransform.to_string().c_str());
StringAppendF(&result, " queued-frames=%d, mRefreshPending=%d,", queuedFrames, refreshPending);
StringAppendF(&result, " windowType=%d, appId=%d", windowType, appId);