- Don't use reverse-JNI to access metadata ptr, pass it as an arg instead
- Use @FastNative since the calls are short and bounded in time
Performance improvement:
- On a 10-second trace of camera app running on sargo, percentage of
time used in CameraMetadataNative.get went from 4.36% to 3.77%, a 15%
reduction in time.
Test: atest CtsCameraTestCases
Bug: 150214459
Change-Id: I28d9428beaa7eada6292e24fe6ca1dbd9c2ff153
attach() may throw various kinds of runtime exceptions, and since there
is no way to represent them in attach() other than returning null (it
is not supposed to throw), we should catch them here and log them.
Bug: 153332815
Change-Id: Icbb7643c3abf6c6b0edc9d1eb9a74c38c731acdf
Add API (backed by Setting) to enable/disable volume changes via HDMI
CEC for HDMI CEC source devices.
This state is persisted via Settings.
If volume control is disabled, no incoming HDMI CEC commands related to
volume will be processed. If disabled, no HDMI CEC volume control
messages will be sent by the device.
Test: atest com.android.server.hdmi
Bug: 149800547
Merged-In: I83ae9b423122b540b9adb156fb1c6f5964dd6105
Change-Id: I83ae9b423122b540b9adb156fb1c6f5964dd6105
Due to a binder limitation (b/150808347), any unexpected exception
thrown by a binder service while processing an RPC call, will be
silently discarded and the client will get back a default-initialized
result parcelable (i.e. in most cases, won't know that anything wrong
happened).
We work around this issue by throwing a ServiceSpecificException,
which does get delivered, having a special code to designate an
internal error. Errors resulting from a HAL malfunctions will result
in a HAL reboot, which leads to recovery.
Bug: 154089179
Test: Manual verification of basic error recovery scenarios by
injecting HAL error codes and crashes.
Change-Id: Ib5dbe08a362e545501c04204bebad5ab95f5d632
Using arrays in Objects.hash() is error prone. Instead we
call Arrays.hashCode().
Test: m services
Bug: 154302664
Change-Id: Icf00fbaa465ef60951998659ae0333b2faf7042b
Align physical camera request key documentation with the
camera service implementation. Specifically remove any
repeating request limitations.
Bug: 154673381
Test: Successful doc build
Change-Id: I563542e819ef57a99f762d7cfd653cced2423ebb
When taking the screenshot, passing the width and height
of the display, and the rotation according to the current
device orientation.
Bug: 153173726
Test: a11y CTS & unit tests
Test: manual test
Change-Id: I19eea2046da282155719b1dfdf9a3f53ad95e13b
KeyphraseEnrollmentInfo is used for testing the system enrollment
application support within GTS.
Bug: 153264697
Test: gts-tradefed run gts-dev -m GtsAssistIntentTestCases \
-t com.google.android.assist.gts.KeyphraseModelManagerTest# \
testAllSystemKeyphrasesAndLocales
Change-Id: I66558cf849f2815f2c917d128f9f9cc0673750ef
Merged-In: I66558cf849f2815f2c917d128f9f9cc0673750ef
Map the camera2 CONTROL_ZOOM_RATIO to legacy zoomRatio in Camera.Parameters.
Test: Force Pixel 2 HAL to HAL1, and run testZoomRatioTest
Bug: 149052011
Change-Id: I888c919ae10d3e2882f3df797524a06e2b3be259
This CL adds a field relativeAddress to DeviceProductInfo which
contains the device address in the display network. For example,
for HDMI connections the field is populated with the physical address.
Bug: 147994746
Test: adb shell dumpsys display
Change-Id: I87d9fd00bd16abc7594dc3f6b6d4e00c8968af07
- minZoomRatio can be larger than 1.0f
- assert both min and max zoom ratios to be greater than 0.
- assert min zoom ratio to be equal or smaller than max zoom ratio.
Test: CTS on Cuttlefish camera
Bug: 153377715
Change-Id: Ia5d3f2ec7a51d4a35f199abe15a90c72cb7f3456
Allow WindowManager to get display position from DisplayManager. This
will allow display animations to work since we need to know the initial
position of the display to correctly handle animations
Test: LogicalDisplayTest
Bug: 149490428
Change-Id: I5de2495982294ffa0437d8e87a43bf1d2fd0d86a
The application can request to mirror default display by using MediaProjection.
However, there is no way to mirror the specific display on multi-display enviroment.
Now, the application can set displayIdToMirror through VirtualDisplayConfig class.
Test: atest FrameworksServicesTests:DisplayManagerServiceTest
Bug : 127687569
Change-Id: I1ef94bfa79e103d0a4a05a10fc8705ed3bbcc0c9
The navigation bar dismissal animation caused by "activity finish"
should be invoked in some cases immediately when the user
cancels authentication. Add a "early user cancel" message
for ConfirmDeviceCredentialActivity to subscribe to. This
message is sent immediately when the user invokes a back gesture or
cancels authentication.
Bug: 148273355
Test: Set up work profile with separate password and biometric
Unlock work profile
Lock screen
Open work profile app
Cancel authentication at various states in various ways
Notice no navigation bar jank
Test: atest com.android.systemui.biometrics
Change-Id: I89c5b5e2782339cae15f936268e6e7b8ad4e5359
* changes:
Allow BIOMETRIC_CONVENIENCE to register with BiometricService
Improve AuthService logging
Only BIOMETRIC_STRONG HATs should be sent to KeyStore
Creating a new API, screenshotWithoutSecureLayer(), to get the
graphic buffer of screenshot for all displays including non-default
display and virtual one. We can use it to support multi-display
of takeScreenshot() API.
Bug: 145893483
Test: a11y CTS & unit tests
Test: manual testing to take screenshot of second display which is a
monitor with chrome cast
Change-Id: I474c71f7e01d57b5a318b2a5bfb690a2e01c128c
Bug: 150014844
Bug: 141025588
Bug: 151967372
Test: Configure a device to have weak biometrics only, then
run CtsVerifier Weak Biometrics section
Test: com.android.server.biometrics
Change-Id: I866e84b2f88c24faeaf42452d44f651ec220858a
To better document how android.control.zoomRatio works, add diagrams to
illustrate its relationship with scalerCropRegion.
Test: Build and read docs
Bug: 144780745
Change-Id: I90b93c4d516f6f1e2d427ed3d56e85b6c94befe8
The current text was misleading, since minimum frame duration of a
stream affects the aggregate minimum frame duration of a session
whether a stream is in use for a given request stream or not.
Test: Docs build
Bug: 147080626
Change-Id: Ic884cd0bb3ea184383944cb78e9713d6044b1959
Remove check associated with enrollment application UID, and allow
enrollment applications holding the KEYPHRASE_ENROLLMENT_APPLICATION
privledged permission to enroll.
Bug: 151405284
Test: Confirm enrollment from both enrollment application and active
voiceinteraction service. Confirm enrollment can still occurr after
system user switch.
Change-Id: I8686f705fe5405523004eef5de834282a7382464
Migrate BOKEH_MODE_STILL_CAPTURE and BOKEH_MODE_CONTINUOUS to be 2 enums
of CONTROL_EXTENDED_SCENE_MODE.
Test: Camera CTS, VTS
Bug: 151759402
Change-Id: I2373f3cb37bbca72cdf403b209f2375c1954fb9a
It would better move logic of transferTouchFocusToImeWindow
from WindowManagerService to InputMethodManagerService.
Bug: 149574510
Test: atest CtsAutoFillServiceTestCases
Test: atest CtsInputMethodTestCases
Change-Id: I268b09781e5eb7c77c4912efdc8fd5d6936ada27
This reverts commit ef410e3c1e.
Reason for revert: the implementation is untested in R; moving to S.
Bug: 139317981
Bug: 151331855
Change-Id: If6a2fdb26e1ffbdb2cad7dfc16a7cd579f513d5c
Implementation is not complete yet, so hide the feature for now.
Test: Adjusted camera CTS continues to pass
Bug: 150036107
Change-Id: Ifc49766d3e7ebd5a785424cf9a59e9c0f805aabc