summaryrefslogtreecommitdiff
path: root/libs/gui/LayerState.cpp
diff options
context:
space:
mode:
author chaviw <chaviw@google.com> 2017-07-27 10:25:59 -0700
committer chaviw <chaviw@google.com> 2017-08-23 11:28:02 -0700
commit0617894190ea0c3ee50889bee1d4df0f369b0761 (patch)
tree77cd6f74a747fa53216f7b55899030a45c35910a /libs/gui/LayerState.cpp
parent4908fe5617855aace933ad25b1071170e2606688 (diff)
Add a re-parent function to re-parent a specific child.
This is similar to reparentChildren, but the reparentChild will only re-parent a specific child to the new parent and not all children. Test: Added test in Transaction_test for reparentChild. Change-Id: I4275e0d5f1d5601b489956753c78a56d1a5d4c1c
Diffstat (limited to 'libs/gui/LayerState.cpp')
-rw-r--r--libs/gui/LayerState.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/gui/LayerState.cpp b/libs/gui/LayerState.cpp
index 9b06e63610..573f6856d6 100644
--- a/libs/gui/LayerState.cpp
+++ b/libs/gui/LayerState.cpp
@@ -45,6 +45,8 @@ status_t layer_state_t::write(Parcel& output) const
output.writeInt32(overrideScalingMode);
output.writeStrongBinder(IInterface::asBinder(barrierGbp));
output.writeStrongBinder(relativeLayerHandle);
+ output.writeStrongBinder(parentHandleForChild);
+ output.writeStrongBinder(childHandle);
output.write(transparentRegion);
return NO_ERROR;
}
@@ -77,6 +79,8 @@ status_t layer_state_t::read(const Parcel& input)
barrierGbp =
interface_cast<IGraphicBufferProducer>(input.readStrongBinder());
relativeLayerHandle = input.readStrongBinder();
+ parentHandleForChild = input.readStrongBinder();
+ childHandle = input.readStrongBinder();
input.read(transparentRegion);
return NO_ERROR;
}