Support for concurrent extension processing sessions
is not yet mandated. To avoid inconsistent behavior
across devices, explicitly document and disallow
concurrent extension sessions at the framework level.
Bug: 187341271
Test: Manual using test application,
Camera CTS
Change-Id: Ibff194c58bbb37e884c27151a2a27fb21e3db928
Load composition and pwle limits from the HAL and apply them on
VibrationThread to split long vibrations in multiple calls.
This ensures that long vibration will be performed by the HAL.
Bug: 188431691
Fix: 183517124
Test: VibrationThreadTest & VibrationInfoTest
Change-Id: I09a04c7b1de331320d453899f59b01e4bbb42ac3
Defines refresh-rate limits for high-brightness-mode in display-config
xml files. DisplayModeDirector listens to HBM status changes from
DisplayManager and applies the pre-defined refresh-rate limits when HBM
is enabled.
Test: Manual, verify a Refresh Rate vote when HBM is enabled, and a
null-vote when disabled.
Test: atest com.android.server.display
Bug: 181955334
Change-Id: Id642cbff96fca9ce79a50d6cd97e75cd6061ac74
Some sensors can limit the range of supported refresh rate when
enabled. This change adds a way to specify that limit withing the
display device config file.
Bug: 175793106
Test: Verify that when sensor is enabled, there is an additional
refresh rate vote for the rate specified in config file.
Test: atest DisplayModeDirectorTest, LocalDisplayAdapterTest
Change-Id: Id210c25fe56cd5353a2436b9b97f2ad01980e465
1) Adds UserManager#DISALLOW_BIOMETRIC. We actually need to
pass a restriction from settings to ActionDisabledByAdmin area,
otherwise the biometric-specific dialog would be shown outside of
biometric flows.
2) Adds an interface to ActionDisabledByAdminController to return a
optional OnClickListener for the positive dialog button
3) Returns an instance of the biometric controller when conditions
are met
4) Adds string interfaces to DeviceAdminStringProvider to retrieve
biometric-specific strings
Bug: 188847063
Bug: 191306258
Test: manual
Change-Id: Iaeffdeb1336d5db56d464104cdc7677b9021f609
ActionDisabledByAdminControllerFactory is also in frameworks/base,
and should take test mode into consideration.
Bug: 188847063
Test: atest ParentalControlsUtilsTest
Change-Id: I0195478606361aa8b6406376d96b2fc219d9cc4d
The current service package name is somewhat generic. To avoid
any potential name clashes, include the word 'extensions'.
Bug: 191192321
Test: Camera CTS
Change-Id: Ib89c455bcadc2c7c888ababd077d4deebe3e8d14
Camera extensions characteristics will bind to the camera extensions
proxy service without passing a dedicated executor for the connection
callbacks. In this case, the callbacks will be called in the main thread
which can be problematic for clients using the same thread.
Bug: 191192317
Test: Camera CTS
Change-Id: Ic952edd766d26016b6203c84d067a6b1061ed090
The dialog that's shown when admin disables functionality lives in
frameworks/base. This change extracts common logic required there
into frameworks/base.
Bug: 188847063
Test: atest ParentalControlsUtilsTest
Change-Id: I9aa9f5664e04a226d2c30a72585bebeb8645494b
This is needed to filter out small JPEG sizes based on targetSdkVersion
to maintain backward compatibility.
Test: Camera CTS
Bug: 187913092
Change-Id: I75bbb4d6130df62c32b01de862ad1b79fcdb7b63
When refresh rate switching is set to SWITCHING_TYPE_NONE, DisplayManager
limits the refresh rate to a single value. Calling setFrameRate to SF
is redundant and causes unnecessary duplicate events.
Bug: 189174620
Bug: 189191861
Test: atest SetFrameRateTest
Test: atest FrameRateOverrideHostTest
Test: atest ChoreographerNativeTest
Test: atest FrameRateSelectionPriorityTests
Change-Id: I77ca430555c57c13a6e36707b344537deee5c2d7
With Frame Rate Override enabled, an app could get an
AChoreographer_refreshRateCallback callbacks which seem redundant.
An example would be:
1. Display changed refresh rate to 60Hz - callback
2. App's frame rate override changed to 60Hz - callback
To avoid sending these redundant callbacks, DisplayManagerGlobal caches
the last DisplayInfo that was reported to the app and based on it, it
decides whether to send the event or not.
Bug: 184588343
Bug: 189174620
Test: atest SetFrameRateTest
Test: atest FrameRateOverrideHostTest
Test: atest ChoreographerNativeTest
Change-Id: Ia0278e98d06bc790810c31dcda8244181e8e1d5d
OutputConfiguration uses writeIntArray in writeToParcel. It must use
readIntArray in createFromParcel instead of readList.
Bug: 188675581
Test: Sample app which tries to write invalid data into an
OutputConfiguration parcel. When read again, the exception is
thrown and not swallowed.
Test: create OutputConfiguration; add certain sensorPixelModes;
writeToParcel; set parcel's data position to 0; create
OutputConfiguration from same parcel and read sensor pixel modes.
They match.
Change-Id: Id50396d328ba6fc830012a1c359934cf82249764
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
Do not catch exceptions when we attempt to create the following classes
from a parcel
- OutputConfiguration
- VendorTagDescriptor
- VendorTagDescriptorCache
- SessionConfiguration
This could cause subsequent parcel information to be read incorrectly.
Bug: 188675581
Test: Sample app which tries to write invalid data into an
OutputConfiguration parcel to send in an intent via Broadcast. When read by the receiving app,
gets an exception (not swallowed).
Change-Id: I745ca49daa6ca36b1020d518e9f346b52684f2b1
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>
Update Camera2 extensions to:
- Query advanced API support
- Be able to query latency ranges when using
legacy extensions
- Trigger the camera extension initializer
for both the legacy and advanced cases
Bug: 188579227
Test: Camera CTS
Change-Id: I8db505d0c649f6c664f60c1c1e3cd17de54abe3a
- By default, udfps cannot be triggered from screen off (aod disabled)
- To enable udfps to be triggered from screen off, use the following adb
command: `adb shell settings put secure screen_off_udfps_enabled 1` and
re-enter doze
- On AOD: on udfps failure, stay in AOD 2 (do not go to the lock
screen). This reverts ag/14021076. The cancelAodInterrupts were
redundant, since these are taken care of by
FingerprintAuthenticationClient.
Fixes: 190526395
Fixes: 189956809
Test: manual
Change-Id: Ife8aa2ce5f509b6923b8e8dbe229653cd285b852
Prevent unnecessary use of HBM. This change decouples illumination
state from touch state. onFingerUp should always be called whenever
the finger leaves the HBM area, and not only when illumination was
requested (isFingerDown was actually isIlluminationRequested()).
Moves the check to onFingerUp to stop illumination only if illumination
was actually happening.
Bug: 187460696
Test: atest UdfpsControllerTest
Change-Id: I2eebe32990761d2fbf86cab228e4a7221a209b42
Add an enum value for test pattern BLACK, to be used with
camera muting on devices that can't implement the full
SOLID_COLOR test pattern API.
Also include it in test API to ensure correct behavior can
be tested.
Test: Camera CTS continues to pass
Bug: 189507251
Change-Id: Ie9449f722fdc356c690f1513d4cb25a43a14e4c8
OutputConfiguration.writeToParcel previously used writeList to parcel
the List<Integer> mSensorPixelModesUsed. The Integer list read from a
Parcel into a vector of int32_ts in cameraserver native code, doesn't get read correctly
(values sent are not the ones received).
Therefore, instead we explicitly convert the Integer list into an int[]
before parcelling using writeIntArray. We also explicitly use
readInt32Vector on the native side in readFromParcel now.
Bug: 184396641
Test: atest RobustnessTest.java#testConfigureInvalidSensorPixelModes
Change-Id: Ie0a8d0da2f89c959df6a3529d4836889e235fa93
Signed-off-by: Jayant Chowdhary <jchowdhary@google.com>