When app is resized in multi-window mode we preserve the window along
with the decor view. If action mode view was shown before such config
change, its view is detached, but the mPrimaryActionModeView variable
is not cleared. So when action mode view is shown again after that it
thinks that its view is still alive.
This CL adds additional check to inflate new mPrimaryActionModeView
if it is not attached to any window.
Bug: 28971666
Change-Id: Ia8c24d4322be32e8b2c8967301beb3a4d889d501
For SurfaceView's which do not implement
SurfaceRedrawNeeded we can see holes through to the
background in various scenarios. We prevent this by
placing a DimLayer behind opaque SurfaceViews. SurfaceFlinger
will remove it from the visible layers when the SurfaceView
totally obscures it.
Bug: 28763785
Change-Id: I9b4d1ba8be786f30432a6a3b42e5616662cdc090
Prior to c/1106850 setCropInTransaction hid the surface
for crop width and height <= 0. That CL allowed
setting -1 for crop width and height which SF
determines as clearing the crop. Other portions of the code
depend on the old behavior though for negative values, so restore
the behavior of setCropInTransaction and use a new clearCrop
method for the new code.
Bug: 29276588
Change-Id: I728666009c362ff635c7ebfb3ef2e83428fb03fe
Also moves discharge coulomb data to BATTERY_DISCHARGE_DATA checkin line.
Bug:29264326
Bug:28743761
Change-Id: I78881e166c11f40b2397e04d2cab8d5200c71eea
5000 msec timeout is set for waiting DefaultContainerService, but
it's not working. It's not possible to exit a wait loop even if it
takes over 5000 msec.
Bug: 29232999
Change-Id: I74a45637e0a3fa5a7b151e6b3dc0b3aaece96d53
Remove MANAGE_USERS permission from shell and whitelist it for
some specific functionality.
Bug: 29189712
Change-Id: Ifb37448c091af91991964511e3efb1bb4dea1ff3
This reverts a part of Ifb724b5c5feea3ed70d68e5bd7615fa91185e743:
Since we enforce the background to be non-translucent, this part
can be reverted and only causes unnecessary regressions.
Change-Id: Ide7b60ee05eb275344fee2f4370f0e8461ef2783
Fixes: 29192742
Previously it was checked if the volume was visible to user, but
transient volumes (such as USB drives) are not marked as such.
Fixes: 29174953
Change-Id: I5dbcc42c5b31c6856e01f73815d73482822785d9
The FLAG_INCLUDE_INVISIBLE was created to let SM.getStorageVolumes()
return mounted volumes (like USB drives), but in the current form it
might return invalid volumes. For example, when a SD Card is adopted as
an internal storage, it will return 2 volumes instead of one, the "bad"
one being:
VolumeInfo{emulated}:
type=EMULATED diskId=null partGuid=null mountFlags=0 mountUserId=-1
state=UNMOUNTED
fsType=null fsUuid=null fsLabel=null
path=null internalPath=null
As such, we need to filter out those volumes that don't have a path.
BUG: 29250241
Change-Id: I3f84b53eac98f31f918d843c70f9d42983e2a438
There are scenarios - like when an SD Card is adopted as internal
storage - where the getBestVolumeDescription() returns null, in which
case we should use the StorageVolume description instead (or a default
value if such description is also null)>
Change-Id: Ia11c3f4069dfbe252c568210ee60b5d8c384d863
Fixes: 29198046
Fix until we figure out if Gamepad not eating key events during talkback is
inteneded behavior.
BUG: 29208918
Change-Id: Iffe652f10e88d0218875264f31e9d7658d75e71e
Existing code assumed that ICameraDeviceCallbacks and
CameraDevice.StateCallback have the same error code values for matching
errors.
They do not.
Also remove duplicate error code definitions now present in the AIDL
file for ICameraDeviceCallbacks.
Bug: 29248704
Change-Id: I069e2b7ef3be7887634e128f1accb50b7558f3fd
Multiple CameraMetadataNative objects could be reading and writing
to the metadata marshaler registry simultaneously.
This can lead to an infinite loop in the HashMap in the worst case,
so add synchronization against this.
Bug: 29043079
Change-Id: Ic5e9e58a9333b99b4bea87bf790c9fbfadfbbea9
The location manager service keeps update records for all apps
registered to receive location updates. If an app does not have
the location permission then its update record is skipped when
dispatching location updates. However, the battery blame is spread
across all apps requesting location updates even if they don't
receive such because of lacking permission.
bug:28804546
Change-Id: Iee96fd6f304c7a49f9c70484e52abc0ed1538a29
For devices that report battery discharge via a coulomb counter,
record how much of the battery was discharged while the screen
was on/off.
Bug:28743761
Change-Id: Ie2d1708864352029ff466c1fed14fc057e19b93b
bug:29127615
Primarily fixes case where 0 dimensioned layers could be
created/updated. Additionally, adds more logging in incomplete
framebuffer cases, if they still occur.
Change-Id: Ib90dbbafd6905aca3c8f46e64064e13a308f713d
When forceStopPackageLocked is used to kill existing app process for
relaunching with debugger, user id could be -1 and getPackageUid will
already return -1. This results in killPackageProcessesLocked() not
able to find and kill the app, and wait for debugger will.
This also revert commit 55c9d739 (ag/969408) which tried to fix the
same problem but got it wrong. It's valid to -D when the process is
already running, as we're supposed to kill it. The really problem is
that the killing fails because of bad appId.
bug: 28980761
Change-Id: Ibebdcc26865464216a1f4b6773e540921cdad7d2
Gracefully no-op if apps attempt to restore themselves while there is
a backup pass in flight.
Bug 29135379
Change-Id: I8f0b5cd9d149b703e1de7a3a0b4b54c3aff766b6
Fixes: 29223302
If the surface only changed we want to just call onSurfaceChanged,
not onSurfaceCreated.
Change-Id: I65c8b210a7e34eaa2862020335ee7f6ef56eeac2
Parse the last_install and report the source build version of an ota
update.
Related CL in: ag/1121141
Bug: 28658632
Change-Id: I5e835c144aabe97fda681f60397ebf4416f7bd4f