make multi-display more real
- displays are represented by a binder on the client side
- c++ clients can now create and modify displays
Change-Id: I203ea5b4beae0819d742ec5171c27568f4e8354b
diff --git a/libs/gui/LayerState.cpp b/libs/gui/LayerState.cpp
index 25c773c..07f62c4 100644
--- a/libs/gui/LayerState.cpp
+++ b/libs/gui/LayerState.cpp
@@ -72,8 +72,9 @@
status_t DisplayState::write(Parcel& output) const {
+ output.writeStrongBinder(token);
output.writeStrongBinder(surface->asBinder());
- output.writeInt32(displayId);
+ output.writeInt32(what);
output.writeInt32(layerStack);
output.writeInt32(orientation);
memcpy(output.writeInplace(sizeof(Rect)), &viewport, sizeof(Rect));
@@ -82,8 +83,9 @@
}
status_t DisplayState::read(const Parcel& input) {
+ token = input.readStrongBinder();
surface = interface_cast<ISurfaceTexture>(input.readStrongBinder());
- displayId = input.readInt32();
+ what = input.readInt32();
layerStack = input.readInt32();
orientation = input.readInt32();
memcpy(&viewport, input.readInplace(sizeof(Rect)), sizeof(Rect));