now able to set the layer stack on a DisplayDevice
Change-Id: Ia9691cf221b9444c243eb468d9e276a30e600b6b
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 @@
// ----------------------------------------------------------------------------
+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 @@
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 @@
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));