update for android S
Change-Id: I02763a134f592280652d4cd7eb2eea630d01ee14
diff --git a/src/AndroidDesktop.cpp b/src/AndroidDesktop.cpp
index 253eefe..0234d0a 100644
--- a/src/AndroidDesktop.cpp
+++ b/src/AndroidDesktop.cpp
@@ -7,8 +7,6 @@
#include <gui/ISurfaceComposer.h>
#include <gui/SurfaceComposerClient.h>
-#include <ui/DisplayInfo.h>
-
#include <rfb/PixelFormat.h>
#include <rfb/Rect.h>
#include <rfb/ScreenSet.h>
@@ -163,18 +161,12 @@
return -1;
}
- status_t err = SurfaceComposerClient::getDisplayInfo(displayToken, &mDisplayInfo);
- if (err != NO_ERROR) {
- ALOGE("Failed to get display characteristics\n");
- return err;
- }
-
- err = SurfaceComposerClient::getActiveDisplayConfig(displayToken, &mDisplayConfig);
+ status_t err = SurfaceComposerClient::getActiveDisplayMode(displayToken, &mDisplayMode);
if (err != NO_ERROR) {
ALOGE("Failed to get display configuration\n");
return err;
}
- ALOGV("updateDisplayInfo: [%d:%d]", mDisplayConfig.resolution.width, mDisplayConfig.resolution.height);
+ ALOGV("updateDisplayInfo: [%d:%d]", mDisplayMode.resolution.width, mDisplayMode.resolution.height);
err = SurfaceComposerClient::getDisplayState(displayToken, &mDisplayState);
if (err != NO_ERROR) {
@@ -182,7 +174,7 @@
return err;
}
- mPixels->setDisplayInfo(&mDisplayConfig, &mDisplayState);
+ mPixels->setDisplayInfo(&mDisplayMode, &mDisplayState);
return NO_ERROR;
}
@@ -199,7 +191,7 @@
mDisplayRect.getHeight(), width, height);
mVirtualDisplay.clear();
- mVirtualDisplay = new VirtualDisplay(&mDisplayConfig, &mDisplayState,
+ mVirtualDisplay = new VirtualDisplay(&mDisplayMode, &mDisplayState,
mPixels->width(), mPixels->height(), this);
mDisplayRect = mVirtualDisplay->getDisplayRect();
diff --git a/src/AndroidDesktop.h b/src/AndroidDesktop.h
index 993f466..41a8543 100644
--- a/src/AndroidDesktop.h
+++ b/src/AndroidDesktop.h
@@ -10,8 +10,7 @@
#include <gui/CpuConsumer.h>
-#include <ui/DisplayInfo.h>
-#include <ui/DisplayConfig.h>
+#include <ui/DisplayMode.h>
#include <ui/DisplayState.h>
#include <rfb/PixelBuffer.h>
@@ -80,8 +79,7 @@
sp<VirtualDisplay> mVirtualDisplay;
// Primary display
- DisplayInfo mDisplayInfo;
- DisplayConfig mDisplayConfig = {};
+ ui::DisplayMode mDisplayMode = {};
ui::DisplayState mDisplayState = {};
// Virtual input device
diff --git a/src/AndroidPixelBuffer.cpp b/src/AndroidPixelBuffer.cpp
index b6ab0cb..ba7349a 100644
--- a/src/AndroidPixelBuffer.cpp
+++ b/src/AndroidPixelBuffer.cpp
@@ -18,8 +18,6 @@
#define LOG_TAG "VNCFlinger:AndroidPixelBuffer"
#include <utils/Log.h>
-#include <ui/DisplayInfo.h>
-
#include "AndroidPixelBuffer.h"
using namespace vncflinger;
@@ -98,12 +96,12 @@
}
}
-void AndroidPixelBuffer::setDisplayInfo(DisplayConfig* config, ui::DisplayState* state) {
+void AndroidPixelBuffer::setDisplayInfo(ui::DisplayMode* mode, ui::DisplayState* state) {
bool rotated = isDisplayRotated(state->orientation);
setBufferRotation(rotated);
- uint32_t w = rotated ? config->resolution.height : config->resolution.width;
- uint32_t h = rotated ? config->resolution.width : config->resolution.height;
+ uint32_t w = rotated ? mode->resolution.height : mode->resolution.width;
+ uint32_t h = rotated ? mode->resolution.width : mode->resolution.height;
if (w != mSourceWidth || h != mSourceHeight) {
ALOGV("Display dimensions changed: old=(%dx%d) new=(%dx%d)", mSourceWidth, mSourceHeight, w,
diff --git a/src/AndroidPixelBuffer.h b/src/AndroidPixelBuffer.h
index 174665f..5d06d8e 100644
--- a/src/AndroidPixelBuffer.h
+++ b/src/AndroidPixelBuffer.h
@@ -21,8 +21,7 @@
#include <utils/Mutex.h>
#include <utils/RefBase.h>
-#include <ui/DisplayConfig.h>
-#include <ui/DisplayInfo.h>
+#include <ui/DisplayMode.h>
#include <ui/DisplayState.h>
#include <ui/Rect.h>
@@ -37,7 +36,7 @@
public:
AndroidPixelBuffer();
- virtual void setDisplayInfo(DisplayConfig* config, ui::DisplayState* state);
+ virtual void setDisplayInfo(ui::DisplayMode* mode, ui::DisplayState* state);
virtual void setWindowSize(uint32_t width, uint32_t height);
diff --git a/src/VirtualDisplay.cpp b/src/VirtualDisplay.cpp
index 1f616d1..3122ca8 100644
--- a/src/VirtualDisplay.cpp
+++ b/src/VirtualDisplay.cpp
@@ -27,16 +27,16 @@
using namespace vncflinger;
-VirtualDisplay::VirtualDisplay(DisplayConfig* config, ui::DisplayState* state,
+VirtualDisplay::VirtualDisplay(ui::DisplayMode* mode, ui::DisplayState* state,
uint32_t width, uint32_t height,
sp<CpuConsumer::FrameAvailableListener> listener) {
mWidth = width;
mHeight = height;
if (state->orientation == ui::ROTATION_0 || state->orientation == ui::ROTATION_180) {
- mSourceRect = Rect(config->resolution.width, config->resolution.height);
+ mSourceRect = Rect(mode->resolution.width, mode->resolution.height);
} else {
- mSourceRect = Rect(config->resolution.height, config->resolution.width);
+ mSourceRect = Rect(mode->resolution.height, mode->resolution.width);
}
Rect displayRect = getDisplayRect();
diff --git a/src/VirtualDisplay.h b/src/VirtualDisplay.h
index cd2356e..55b2166 100644
--- a/src/VirtualDisplay.h
+++ b/src/VirtualDisplay.h
@@ -23,8 +23,7 @@
#include <gui/CpuConsumer.h>
#include <gui/IGraphicBufferProducer.h>
-#include <ui/DisplayConfig.h>
-#include <ui/DisplayInfo.h>
+#include <ui/DisplayMode.h>
#include <ui/DisplayState.h>
#include <ui/Rect.h>
@@ -34,7 +33,7 @@
class VirtualDisplay : public RefBase {
public:
- VirtualDisplay(DisplayConfig *config, ui::DisplayState* state,
+ VirtualDisplay(ui::DisplayMode *mode, ui::DisplayState* state,
uint32_t width, uint32_t height,
sp<CpuConsumer::FrameAvailableListener> listener);