update for android R
Change-Id: I8e7d60aa34739bf0365a62f95cd1fcf04576f132
diff --git a/src/VirtualDisplay.cpp b/src/VirtualDisplay.cpp
index 1854a55..1f616d1 100644
--- a/src/VirtualDisplay.cpp
+++ b/src/VirtualDisplay.cpp
@@ -22,20 +22,21 @@
#include <gui/CpuConsumer.h>
#include <gui/IGraphicBufferConsumer.h>
#include <gui/SurfaceComposerClient.h>
-
+#include <input/DisplayViewport.h>
#include "VirtualDisplay.h"
using namespace vncflinger;
-VirtualDisplay::VirtualDisplay(DisplayInfo* info, uint32_t width, uint32_t height,
+VirtualDisplay::VirtualDisplay(DisplayConfig* config, ui::DisplayState* state,
+ uint32_t width, uint32_t height,
sp<CpuConsumer::FrameAvailableListener> listener) {
mWidth = width;
mHeight = height;
- if (info->orientation == DISPLAY_ORIENTATION_0 || info->orientation == DISPLAY_ORIENTATION_180) {
- mSourceRect = Rect(info->w, info->h);
+ if (state->orientation == ui::ROTATION_0 || state->orientation == ui::ROTATION_180) {
+ mSourceRect = Rect(config->resolution.width, config->resolution.height);
} else {
- mSourceRect = Rect(info->h, info->w);
+ mSourceRect = Rect(config->resolution.height, config->resolution.width);
}
Rect displayRect = getDisplayRect();
@@ -54,7 +55,7 @@
SurfaceComposerClient::Transaction t;
t.setDisplaySurface(mDisplayToken, mProducer);
- t.setDisplayProjection(mDisplayToken, 0, mSourceRect, displayRect);
+ t.setDisplayProjection(mDisplayToken, state->orientation, mSourceRect, displayRect);
t.setDisplayLayerStack(mDisplayToken, 0); // default stack
t.apply();