We should use freeform animation spec not only when the task is already
freeform, but also when it is entering freeform.
Bug: 25669457
Change-Id: I30cba79a149183b0a8b9e1e4751a215cef6a490f
- Evaluate touch exclusion region on per-task basis, instead of per
window. Smallest unit for exclusion is Task, if task has more than
one app window, we still need to use the visible area of the task
to do focus transfer properly.
- Only add back the touch region for focused task after all tasks
are processed for eclusion, otherwise the focused area could be
removed from exclusion incorrectly.
- Skip app windows that's exiting or hidden.
bug: 25494928
Change-Id: I972ba2149431557e7420b1095d9496a6cd821bdb
Display the device owner information if it has been provisioned by
DPC via DevicePolicyManager, else fallback into displaying the
current user owner information (if set).
Change-Id: Ie915d6669ecac06bfa7b57079b9dcd0fac56df57
The spec property requires an accessible getter and setter. This code
will be removed in a following CL that refactors magnification spec
animation.
Change-Id: Ia8fecf98700d18e62ae30aa437b81b061c9a9542
When invisible the dock divider would have its bounds adjusted to size
0, 0 and that would be sent to Surface Flinger. When it becomes visible
we immediately adjust the size of the surface, but it's too late for
Surface Flinger and it returns wrong size to the renderer. By not
adjusting the dock divider bounds when it's invisible, Surface Flinger
will always hold good size. The position will be adjusted when the
divider gets visible.
Bug: 25612050
Change-Id: Iab0798d6545ae0f8b46eabfe7e4100079779bd06
mPendingConfiguration is a parameter of IWindowSession.relayout.
And IWindowSession.aidl declared "out Configuration outConfig",
it will always create a new configuration for remote side to write.
If remote side does not write (WMS does not have config change),
the new default configuration will be returned.
In original code passes mPendingConfiguration to updateConfiguration
directly, then callbacks (sConfigCallbacks) receive the same
instance of mPendingConfiguration. And because the implementation
of callback may use the configuration after relayout has reset
the configuration to default, then it may have timing that results
"showing hybrid of portrait and landscape modes" which try to fix
in commit e36d6e27.
To avoid this, always create a copy to updateConfiguration.
MSG_RESIZED_REPORT from dispatchResized also did the same thing.
Related commit:
e36d6e277e49475076b7872d36ea6a5c5b996e9d
694f79b5d1196640d1beb680b7d1fc68e6e77cbd
Change-Id: Ic1abd596e384918224b3a7020583d9a04641cccc
For some reason BluetoothManagerService recently has been unable to bind
to the BluetoothService, causing timeouts, which in turn could lead to
Bluetooth not working immediately after boot.
While refactoring that code, the "get name and address" code was also
removed to make the startup sequence more transparent and easier to
debug.
Bug: 25597150
Change-Id: I62ffe4589a76ea8a6db75e3c7599f149db677ea3
- The TaskThumbnailInfo can have the same lifecycle as the TaskRecord, and
we should just reset it instead of setting it to null when the thumbnail
is disposed.
Bug: 25652261
Change-Id: I54384e208b19e60d469bf3471dd555f78f04290c
Add a new mechanism where we retain previously used provided
processes in the "last activity" oom adj state for 20 seconds,
before allowing them to fall down to a regular cached process.
This should help reduce thrashing when something is acquiring
and releasing a provider repeatedly.
Change-Id: I889472de7bb4da574b46f07e36a99978813643cb
- We should have been using onEnterAnimationComplete instead, which is
more reliable and respects the window transition developer option.
Change-Id: Ib7cd2868283cfe0e5fc79863818a614375072e0f