summaryrefslogtreecommitdiff
path: root/libs/hostgraphics/HostBufferQueue.cpp
diff options
context:
space:
mode:
author Tiger <tigerhuang@google.com> 2024-05-17 23:18:58 +0800
committer Tiger Huang <tigerhuang@google.com> 2024-05-22 06:56:12 +0000
commitb033de9f5477b7efc38d55ef4b089704c2ac36f9 (patch)
tree165cc0a356e2d70167547e01238268c0821560de /libs/hostgraphics/HostBufferQueue.cpp
parent2674c808641130f193211afa1760151377a9c6b5 (diff)
Update the leash position when gaining a new control
If there is an animation playing, the leash position will be updated after calling InsetsAnimationControlRunner#updateSurfacePosition in the next animation frame or the end of animation. However, if there is no animation playing. The client wouldn't update the leash position if the surface position of the insets source window is changed at the server side. This is fine in most of time because the server will update the leash position. But if the client is playing the animation while the server is updating the leash position, and then the client finishes the animation right before receiving the new control, the position can be overwritten by the client animation. This CL updates the leash position when the client gains a new control if there is no leash-animation playing, like we did to the visibility. Bug: 337018949 Flag: NA Test: Turn screen off while the device is unfolded, fold the device, and then turn screen on. See if the taskbar position is expected. Merged-In: I5ba0c33ca4542d27bb4dee4ce849f34721f20b14 Change-Id: I5ba0c33ca4542d27bb4dee4ce849f34721f20b14 (cherry picked from commit 8fab62792e461cf97f3aba5fba4b431793eb4579)
Diffstat (limited to 'libs/hostgraphics/HostBufferQueue.cpp')
0 files changed, 0 insertions, 0 deletions