We're defining a new compat framework change id that restricts
the other aspect ratio overrides for devices in portrait fullscreen.
Fix: 218959984
Test: As manual testing use 'adb shell am compat disable/enable OVERRIDE_MIN_ASPECT_RATIO_EXCLUDE_PORTRAIT_FULLSCREEN <package-name>'. For the unit tests run 'atest WmTests:SizeCompatTests'.
Change-Id: I84eaab4df045c93fb2c159a789852094caf9121a
Add the AudioDeviceVolumeManager and VolumeInfo classes to the
system API. Unhide only the method for changing the volume
of a given audio device.
Bug: 236764441
Test: atest AudioDeviceVolumeManager
Change-Id: If715a28afb79ee1a9625781d814652365e9fbfb7
The underlying Skia implementation of Path has APIs for
querying the data in a path (via SkPath::Iter). It also exposes
the ability to add conic sections (conicTo()), which is useful
since a Path can contain conics (even if it was not created with
conics directly). And it adds a method to get the generationId
from a Path, used to see whether a Path changed since the
last time that Id was retrieved. Finally, it exposes a simple
interpolate() function to allow linear interpolation between
two paths.
This CL adds PathIterator to enable querying Path data, and
adds conicTo, isInterpolatable(), and interpolate() to Path,
all of which wrap the underlying, existing Skia functionality.
Bug: 157391114
Bug: 223586753
Test: Added PathIteratorTest plus new tests on PathTest
Change-Id: Iddadfde24dd75ac04d0a2f3ebca767613af25360
So that we can verify the API in CTS.
Bug: 232476698
Test: CtsWindowManagerDeviceTestCases:TaskFragmentOrganizerPolicyTest
Change-Id: I0e064f8cae48cc0281a0b462b8d072baceeeca9f
performHandwritingGesture should take an optional IntConsumer
& executor to provide result of Gesture operation back to IME.
Bug: 210039666
Bug: 239783077
Test: atest InputConnectionEndToEndTests
Change-Id: I2ca7eaa182159b7ffef0812d970512ffcf817ce2
Editors should declare which Scribe Gestures do they support
as a means of providing this info to IME.
Bug: 239783077
Test: atest CtsInputMethodTestCases
Change-Id: Ic52a48c0a04d405e65ad49e9d447d603fefb4eb0
This disallows calls to runtime.gc() in the new version of Android.
Explicit GC calls are blocking and can thus cause runtime overhead.
They used to be performed as a pattern in order to avoid GC_FOR_ALLOC.
However, that was only the case for Dalvik, that is now discouraged for
ART.
Bug: 3400644
Test: m
Test: atest StrictModeTest
Change-Id: I4720f2b4c4047bb90a88b924c539690e3c202e08
During a stylus handwriting session, user can perform a
stylus gesture operation like Select, delete, insert on an
area of text. IME needs APIs to perform these gestures on text.
This CL introduces API signature for Select, delete, insert gestures.
Design doc: go/scribe-gestures-api
Bug: 239783077
Bug: 210039666
Test: Manually build & compile HandwritingIme
Change-Id: I53bcb62e03ac1c371feb60d1385c88c921754092
This change bypasses the AccessibilityService and directly
connects AccessibilityInteractionClient to ViewRootImpl's
AccessibilityInteractionController.
Bug: 238391032
Test: Use for Espresso a11y testing
Test: atest AccessibilityEndToEndTest
Change-Id: I0881067a9e5290e208cf3065c149f2a3b433b80c
Before, when receive TaskFragment transaction, we apply changes in
multiple WindowContainerTransactions. Now, update to apply all changes
in one WCT for the whole TaskFragment transaction.
Bug: 240519866
Test: pass existing
Change-Id: I943d6232ff226ed6f67367fa9b7f73e1f861de64
Merged-In: I943d6232ff226ed6f67367fa9b7f73e1f861de64
Before, when receive TaskFragment transaction, we apply changes in
multiple WindowContainerTransactions. Now, update to apply all changes
in one WCT for the whole TaskFragment transaction.
Bug: 240519866
Test: pass existing
Change-Id: I943d6232ff226ed6f67367fa9b7f73e1f861de64
Add factory method for BLE output device with volume information
Bug: 233975367
Test: atest frameworks/base/media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/unit/BluetoothProfileConnectionInfoTest.java
Change-Id: If9f88e2489f93f05c6c83424fc7b7a12671c1f32
Introduces a UserProperties class, which holds (potentially dynamic)
information about each user, where the (default) values depend on the
user type.
This can usually be used instead of
isManagedProfile() calls, giving fine-grained information, rather than
course-grained queries about the user type.
The system copies this object before delivering it to any callers,
filtering the properties by the permissions held by the caller.
The object can be parsed from XML, which is used for both persisting a
user's properties to disk, as well as for reading in the default
properties for each user type.
Bug: 235065648
Bug: 237399048
Bug: 170249807
Bug: 234439331
Test: atest UserManagerServiceUserPropertiesTest
Test: atest android.multiuser.cts.UserManagerTest
Test: atest com.android.server.pm.UserManagerTest
Test: atest UserManagerServiceUserTypeTest
Change-Id: If37480abafa784ce197b482103b6537a60fe2653
The permission is privileged, so it was already accessible to
non-framework apps. Some methods that require it (such as
ActivityOptions.setLaunchTaskId) are @SystemApi, and it is used in the
Permissions Mainline Module, so the permission constant needs to be
@SystemApi.
Fixes: 242905922
Test: Build
Change-Id: I6105e9b5a7913c14c8824dfda230b753c4e67bf5