Apps from different developers will now receive a different
ID for the same dynamic sensor. Additionally, all apps
will now receive a different/new ID for the same dynamic
sensor after a factory reset.
Bug: 28775590, 29547335
Change-Id: I15b48b974cbb1d53cc33dfdb7b9eb5f1b562190c
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
Revert added language about shading map being the full flat-field
correction; it's actually the same correction as applied to camera
device-processed data.
Also fix a few other wording issues in the lens shading documentation.
Bug: 18175853
Change-Id: I27691925e6496afe18f3506084d89f2523b5555d
Since LocaleList needs to depend on android.os.Parcelable, we cannot let
that class belong to "android.util" package, which causes layering
violation.
Bug: 28819696
Change-Id: Ia8de2ee9df3dd0a42b1fe84574439519b680fe18
The underlying implementation needs to be completely rethought. If a
process crashed while you were in pointer capture mode, you were
pretty much stuck in it. If the mouse happened to move outside of
your bounds right before you called the API, you'd never actually get
an event (whatever it was hovering over would). There's no easy way
for the system to tell you when you enter or exit this mode because
it doesn't actually track who the current request is from.
These are all solvable, but not in the N time frame. Maybe next time.
Bug: 26830970
Change-Id: I03efd63c499b86dc278491ca3284566c1965581f
If there are no enrollment applications on the system, but someone still
makes a KeyphraseEnrollmentInfo and tries to print it, it would generate
a NPE on a map object. Instead of setting the map to null when we don't
find any enrollment applications, we can just set it to an empty map.
Bug:28622866
Change-Id: I023e6fd90effd3143c19817a0d6637a013bebc31
- Ensure that app to host events are not filtered out
- Populates the app handle appropriately for clients to reference the
nano app sending the event
Bug: 28273520
Bug: 28272149
Change-Id: I7373fc84abcadc2ab17109484f2d04b02a474593
This fixed an "invoke method on null object" error, because of
Sensor.mUuid field is uninitialized.
Bug: 28305085
Change-Id: Ic0139986b3d623c198068585a411814ab4f5f83a
There are two types of IMEs:
A. IMEs that have one or more subtypes
B. IMEs that have no subtype
The initial implementation to update hardware keyboard layout per
subtype change of layout (See Bug 25752812) has supported IMEs in the
category A only, and IMEs in the category B are just ignored in both
system and Settings app.
In order to support IMEs in the category B, InputMethodSubtypeHandle and
related methods need to accept null InputMethodSubtype. Technically
this is a straightforward change, because in InputMethodManagerService
we have already used InputMethodUtils.NOT_A_SUBTYPE_ID for those IMEs in
the category B. We also need to update Setting App, which will be done
by a different CL [1].
[1]: I46b9c5b018f08e3eaa4614a0893db0be91652f3c
Bug: 28182650
Change-Id: Ia013784a594ad3beaf30976d047f5ac0fa8185be
As a workaround for b/27870771, convert fatal exception into a
warning.
Duplicate calls to finishPendingSequence with the same sequenceId
are seen in user crash reports, but with no further context and
inability to reproduce after testing various hypothesis, just
warn about it happening.
Bug: 27870771
Change-Id: Icd7d408887e04b94092689ce61809d6c664d8e3a
- cleaned up private API to ensure userId is distinct from groupId.
- fixed bug where we were sending the wrong userId when attempting to
- fix warning about wrong fingerId when receiving final id of 0.
Fixes bug 28268635
Change-Id: I9507723c1a763152775f2feff76c16762f23cf2d
- Allows several callbacks from different processes to register with
the ContextHub service.
- Add an 'internal' callback that can be used for primary clients.
- Fix issue with parceling NanoApp info
Change-Id: Iec203e8b8bc847cb9274f3f4157d0773984dd87c
This undoes the automerger skip which occured in
commit e740c84dc3 and
replays it as a standard (NOT -s ours) merge.
Change-Id: If5a47be26f73d6a0735c425cd66310a3e2a89086
This CL fixes that physical keyboard layout is not changed when user
changes it in settings. This happened because we compare
InputDeviceIdentifier instances by using Object#equals to choose
specified input device. However, one of them has been serialized and
deserialized, so it never be true.
Bug: 27747115
Change-Id: Ied84c510ccb8e2de919ba8bb326e0355a065e604
Stop repeating request if any of its output stream is abandoned
and notify that repeating request has been stopped.
Update binder tests for binder interface changes.
Update CameraDeviceImpl to expect an exception when canceling
a repeating request that is already stopped.
Bug: 21270879
Change-Id: I9fa72ae7218948aac88cb1a8e57839bd022c4a5e
- Make FingerprintService more closely track the expected state of fingerprintd.
- Don't switch to a new operation until fingerprintd completes previous operation.
- Refactor clients into separate classes and add tracking logic.
- Add missing enumerate()/cancelEnumeration() methods to IFingerprintDaemon
- Make late-binding decision of "foregroundness" of activity so that it's
decided in the order the events are actually handled.
- Add more logging so we can determine FingerprintService state when errors occur.
- Cache a copy of authenticator_id from the last time it was set so we don't
interrupt the driver during actual authentication.
- Don't allow clients to access authenticator_id unless they're current.
Fixes: 27902478, 26273819
Change-Id: Ic1f9e30bd89bcdbb8fe7f69e0545e68339317721
Lens shading correction should be full correction that
corrects both color shading and vignetting.
Bug: 18175853
Change-Id: Ia552345b2bd78b1b2eed2472096ebae80680d70b
- Rename "surface set ID" to "surface group ID"
- Remove setSurfaceSetId
- Use constructor overloads to set surface group ID, make
OutputConfiguration immutable
- Add Surface.getConsumerDescriptor to make it possible to verify
if two Surfaces have the same backing consumer
- Cache initial surface generation ID in OutputConfiguration so that
changes in a Surface's internals will label it is as a
new output
- Add sample use case for surface group IDs
Bug: 27950763
Bug: 28076469
Change-Id: I13251d1dd3d26a978ffbedc519966524e93bc61c
We provide a preferred constructor for the user which will
always generate a serializable NanoApp object. While we
still support the other path, we throw a specific exception
when trying to serialize a bad NanoApp object to ease
debugging.
Change-Id: I7ee610f0fce2f0dd489526e4819f66035281024b
Per API concil recommendation, made below API change:
* change method name from createCaptureSessionByOutputConfiguration to
createCaptureSessionByOutputConfigurations
* Change method name from
createReprocessableCaptureSessionWithConfigurations to
createReprocessableCaptureSessionByConfigurations
Bug: 27950067
Change-Id: I8346d384210556a40bc2544c3660cc4819f304a1
Previously, the KeyphraseEnrollmentInfo would iterate through the list
of Enrollment APKs and just use the first one for a list of supported
keywords (of which there only could be one). Now, all APKs will be
enumerated and the enrollment APK that provides the given
keyphrase/locale will be used for the enrollment intent.
Change-Id: I78b0ef758c6c024b5787603bba5907a646f3c3f1