Fix issue with aspect ratio not applying correctly when PIP is expanded

- The current code always used the default min edge size to calculate the
  PIP bounds when the aspect ratio changes, so if a PIP app sets the aspect
  ratio in response to the an action, the bounds would be resized down
  incorrectly.
- This CL fixes the issue with current aspect ratio not being initialized
  correctly, and also ensures that SystemUI always updates the min edge
  size when expanding the PIP.

Bug: 38324839
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: go/wm-smoke

Change-Id: Ida0f68b2f8f93f9bf1915dda8762a156704d4709
This commit is contained in:
Winson Chung
2017-05-22 11:14:22 -07:00
parent aa051df3b6
commit a71febe2aa
7 changed files with 60 additions and 48 deletions

View File

@@ -29,6 +29,14 @@ interface IPinnedStackController {
*/
oneway void setIsMinimized(boolean isMinimized);
/**
* Notifies the controller of the current min edge size, this is needed to allow the system to
* properly calculate the aspect ratio of the expanded PIP. The given {@param minEdgeSize} is
* always bounded to be larger than the default minEdgeSize, so the caller can call this method
* with 0 to reset to the default size.
*/
oneway void setMinEdgeSize(int minEdgeSize);
/**
* @return what WM considers to be the current device rotation.
*/