summaryrefslogtreecommitdiff
path: root/libs/androidfw/AssetsProvider.cpp
diff options
context:
space:
mode:
author Tiger Huang <tigerhuang@google.com> 2022-03-18 15:00:23 +0800
committer Tiger Huang <tigerhuang@google.com> 2022-03-19 01:47:42 +0800
commit07d9444ed8d1ea8ace02d5411c281366b4b380f9 (patch)
tree6cd048f1848fee31f328d4b759799666a324ccf2 /libs/androidfw/AssetsProvider.cpp
parentd755637641d6c129362d8038e1ee24176d62f423 (diff)
Push the frame to InsetsSourceProvider
This CL stops InsetsSourceProvider from reading the frame from the window. Instead, the caller sets the frame via #updateSourceFrame. When the window layout is moved to the client side, when the rotation is changed, we need to dispatch the InsetsState computed from the new rotation to all the clients. At this moment, the window frames of insets source windows are not up-to-date yet, and we cannot use them to generate insets sources. Instead, we pre-compute the window frames based on the new rotation at the server side, and use them to update InsetsState. In this way, the first InsetsState dispatched to the client after rotation will be correct. This CL also - unbundles the calling order of setServerVisible and updateSourceFrame. The calling order won't affect the result. - moves logic from DisplayPolicy#layoutWindowLw to WindowState#setFrames because we plan to remove layoutWindowLw in the future. - removes redundant logs about layout. The log in WindowLayout#computeFrames can cover them all. Bug: 161810301 Test: Perform fixed rotation, seamless rotation, and regular rotation and see if the layout of each window is expected. Change-Id: Ie7845de2830cdbdfd0049b8eef5a5f0704f796e8
Diffstat (limited to 'libs/androidfw/AssetsProvider.cpp')
0 files changed, 0 insertions, 0 deletions