Implement onDrawImage, onDrawImageRect and onDrawImageLattice in
SkiaCanvasProxy. This allows to replay SkPicture with HWUI pipeline.
This CL is needed to keep up with other changes in SkiaRecordingCanvas,
because Canvas::drawBitmap is translated to SkCanvas::drawImage.
Test: Built and ran angler-userdebug, ran HWUI unit tests.
Change-Id: Icd6cfd3bc51628a2c336faf4c95dfd5366a949a9
System services can use it during the boot to submit tasks that can be run in
parallel with the main thread.
Switched PersistentDataBlockService and FingerprintService from FgThread to
the new thread pool.
UiModeManagerService: update initial configurations on init thread. They run
while holding the mLock so no extra synchronization barriers are needed at a
later stage.
Test: manual - device boots without errors
Test: ParallelPackageParserTest passes
Change-Id: I548f34b0a18f61924e09a39afb12e085cde35442
PM should already provide the real path of the application directory.
Test: runtest -x .../DexManagerTests.java
Bug: 33807524
Bug: 32871170
Change-Id: I700419157bf5532af6437812b7e0a76f80057022
Test: make cts -j20 && cts-tradefed run cts --module CtsDevicePolicyManagerTestCases --test com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testScreenCaptureDisabled_allowedPrimaryUser
It is not really a CTS verifies the change directly.
But I can observe that keyguard is dismissed by a test running in managed profile
Bug: 34049587
Change-Id: I94e3d0cd01b10f31745781f35fdc8e3554994db8
Bug: 34095835
Test: manual tests (automated tests will be added later): 1. take a
picture and share it to Photos; 2. take a bug report and share it to
Gmail; 3. launch Chrome app, share a webpage to Drive; and 4. launch Contacts
and share a contact to Messenger.
Change-Id: Ie50c8305f90b6df69aa1e47c01d0b2212da0a37a
We save about 2800ms of cold startup time over baseline on a marlin,
and ~1200 ms over the parallel parsing case.
warm cold
---------------
Baseline : 1700ms 4300ms
Parallel : 1400ms 2700ms
Cache : 1000ms 1600ms
Cache & parallel : 900ms 1500ms
Note that further changes will improve the speed of cache processing.
This change also includes support for :
- a flag that been flipped in code (currently set to false).
- disabling the cache via a system property.
- wiping the cache on system upgrades.
- cache versioning.
Bug: 30792387
Test: FrameworksServicesTests
Test: manual timing
Change-Id: I281710c110af5307901dd62ce93b515287c91918
Modify RingtoneManager.getCursor so that the cursor returned also
retrieves the parent profile's ringtones, adding the parent's id to
those ringtones
Test: manual (use ringtone picker in associated CL)
Bug: 30658854
Change-Id: I3b52b0dc41a5a3ff1a71a89fd8a0d33023021aba
Given a Uri, if it is a media file in one of the external ringtone
storages, this API deletes its file and database entry.
Test: manual - associated CL
Bug: 30658854
Change-Id: I987bd18577960f9a2b02ce37a4a2d5d033d7a969
So far, the only way for users to add custom ringtones was to either use
a 3rd party app or copy files to a specific directory in the storage,
and there was no API to make it easier to add custom ringtones.
This CL creates a hidden API in RingtoneManager that allows adding any
audio file as a custom ringtone, by copying that file into the ringtone
storage and asking MediaScanner to scan that file.
This API is not intended to be used by existing apps, but an associated CL
uses it in RingtonePickerActivity
Test: make && vendor/google/tools/flashall, plus manual testing with associated CL
Bug: 30658854
Change-Id: I2b291847c5430e1fc2c3fc6a351b6111a49fcbf3
ProcessCpuTracker.init is slow to start, moving it out of main thread
will accelerate the boot up. ProcessCpuTracker.init is protected with
synchronized keyword, so once the CpuTracker thread is up and running,
we should not see any racing condition caused by this move.
This changes saves ~140ms starting time on marlin
Test: run test frameworks/base/tests/ActivityTests
Bug: 33681304
Change-Id: I260a57ca721999be3a84c0e43837d684e47e3941
When receiving updates about players, check the validity of the call:
- the piid must be valid
- the uid of the caller and that of the player must match
Test: adb shell dumpsys audio
Bug: 30955183
Change-Id: Id15e2b69764ed7db0b93e2c0c96472c30b1d2070
OEMs can overlay the default 9 dots by providing two drawables that represent
those dots:
* lockscreen_notselected: asset to display when a cell has not been selected.
* lockscreen_selected: asset to display when a cell has been selected.
BUG: 33755663
Change-Id: Ic595b01f5e1321696b7a3feb0ff73c1acccfb942
Make ZygoteConnection call ZygoteInit.maybePreload via an overridable
method on itself, so that the WebView zygote's subclass of
ZygoteConnection can override it to do nothing; the WebView zygote
doesn't want to do this preloading and can't due to permissions.
Test: enable multiprocess webview, test webview apps work
Bug: 32735001
Change-Id: Ia6ac7d35172ba69ff861fe5a44b09ac52b0afbf0
This reenables color conversion to sRGB at decode time.
Use the value ANDROID_LINEAR_BLENDING_ENABLED to decide
whether to use the codec's linear premultiply or manually
perform a legacy premultiply.
Test: Demonstrated that legacy premultiply is still
faster than the linear premultiply. So the performance
of the two pass approach (decode, then premultiply)
is acceptable. Skia tests both of these decoding modes.
BUG:33741991
BUG:8860389
BUG:24279600
Change-Id: Idea0f359565bd8c7c3ba06e77a897173677db1c6
Otherwise: if the DO sets remove managed profile user restriction:
the profile owner of a managed profile cannot remove this managed
profile.
BUG:33854430
Test: adb shell am instrument -e class com.android.server.devicepolicy.DevicePolicyManagerTest -w
com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner
Change-Id: I90b2028ea627a2073298bf9ef3c07b4fdf8d13a1