summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2012-08-08 18:51:15 -0700
committerMathias Agopian <mathias@google.com>2012-08-10 13:18:23 -0700
commit28947d7fbf9f486539322e8e12dd057568e180c2 (patch)
tree7ddff36460704a5364a6fcd796fecacdce03667e
parent69973992d531ae7df20916c6fb3034b08a6d53c4 (diff)
downloadframeworks_native-28947d7fbf9f486539322e8e12dd057568e180c2.zip
frameworks_native-28947d7fbf9f486539322e8e12dd057568e180c2.tar.gz
frameworks_native-28947d7fbf9f486539322e8e12dd057568e180c2.tar.bz2
now able to set the layer stack on a DisplayDevice
Change-Id: Ia9691cf221b9444c243eb468d9e276a30e600b6b
-rw-r--r--services/surfaceflinger/DisplayDevice.cpp7
-rw-r--r--services/surfaceflinger/DisplayDevice.h2
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp2
3 files changed, 10 insertions, 1 deletions
diff --git a/services/surfaceflinger/DisplayDevice.cpp b/services/surfaceflinger/DisplayDevice.cpp
index 56ac635..326a124 100644
--- a/services/surfaceflinger/DisplayDevice.cpp
+++ b/services/surfaceflinger/DisplayDevice.cpp
@@ -313,6 +313,13 @@ bool DisplayDevice::isScreenAcquired() const {
// ----------------------------------------------------------------------------
+void DisplayDevice::setLayerStack(uint32_t stack) {
+ mLayerStack = stack;
+ dirtyRegion.set(bounds());
+}
+
+// ----------------------------------------------------------------------------
+
status_t DisplayDevice::orientationToTransfrom(
int orientation, int w, int h, Transform* tr)
{
diff --git a/services/surfaceflinger/DisplayDevice.h b/services/surfaceflinger/DisplayDevice.h
index 78d44f3..7efd3bc 100644
--- a/services/surfaceflinger/DisplayDevice.h
+++ b/services/surfaceflinger/DisplayDevice.h
@@ -91,6 +91,8 @@ public:
bool getSecureLayerVisible() const;
status_t setOrientation(int orientation);
+ void setLayerStack(uint32_t stack);
+
int getOrientation() const { return mOrientation; }
const Transform& getTransform() const { return mGlobalTransform; }
uint32_t getLayerStack() const { return mLayerStack; }
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 1f9d694..1c15c82 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -857,7 +857,7 @@ void SurfaceFlinger::handleTransactionLocked(uint32_t transactionFlags)
const DisplayDeviceState& state(curr[i]);
if (state.layerStack != draw[i].layerStack) {
const sp<DisplayDevice>& disp(getDisplayDevice(state.id));
- //disp->setLayerStack(state.layerStack); // FIXME: set layer stack
+ disp->setLayerStack(state.layerStack);
}
if (curr[i].orientation != draw[i].orientation) {
const sp<DisplayDevice>& disp(getDisplayDevice(state.id));