Using a contract class requires that a provider implement it exactly
with little help. This change introduces a DocumentsProvider abstract
class that provides a client-side implementation of the contract that
greatly reduces developer burden, and improves correctness.
This also moves to first-class DocumentRoot objects, and moves calls
with complex side effects to be ContentProvider.call() invocations,
offering more granular permission control over Uri operations that
shouldn't be available through Uri grants.
This new design also relaxes the requirement that root information be
burned into every Uri. Migrate ExternalDocumentsProvider and
DocumentsUI to adopt new API.
Bug: 10497206
Change-Id: I6f2b3f519bfd62a9d693223ea5628a971ce2e743
Previously, the TextChange transition didn't handle interruption/
cancellation at all, which made it problematic to use in any real
situation where a transition might get interrupted mid-animation.
Also, the way that it side-effected the text of TextView objects caused
errors in the UI when the transition was interrupted, because it would
not clean up after itself properly as new transitions queried the
current state of the UI.
Also, the prior cancellation logic for all transitions was not quite
correct; we were pausing transitions but resuming the animations, making it
tricky to write transitions that would restore state correctly.
Change-Id: I5a9f3c915e9834ec59ce1e1c3c96a88d11e4aa1b
- Gets rid of all assumptions about the hotword service
- Fixes bug where the hotword detection would keep running accidentally
even when the screen got turned off
Change-Id: Ie86c1a4f4343bdf7e61f7c21114fd3b287bd5401
- Make it more intuitive by enforcing callers to set a listener while
starting recognition
- Fix TODO to resolve the ComponentName if none is provided
- Unbind from the Hotword service if stopRecognition is called
- Get rid of the callback in onStopHotwordRecognition
Change-Id: I8edad0ef0f3671283aeb51eaed1d3b8dab01baa0
As per UX, we're removing the EXTRA_DELETE_AFTER_USE flag. Instead,
apps that pick up these intents should automatically delete alarms
and timers, unless the user is taken into the app to explicicitly
specify the time/length.
Change-Id: Ibd582788c04e121427467f6549759c8b7706df8c
Even if the bars are transparent / invisible.
Refactor the PSB bar mode override logic to take the IME hint into
account. Bars are overriden to opaque when hint is showing.
Initialize bar state to showing, fix bug that would mark state
as hidden pre-show (on shell restart).
Bug:10505132
Bug:9499956
Change-Id: I21e830e90c7e9812b4192ca65c3c0cd7a6b72798
Sets contentInvalid for TextViews with errors, sets collection
and item properties in AbsListView, GridView, and ListView.
BUG: 10391326
Change-Id: I91191c8ce1e10a1112f74215e30b26349396344b
The alpha channel is applied by modulateAlpha(). Setting it to
mAlpha in ensureValidRect() locked the maximum alpha channel to
whatever value was set before layout. Setting it to BLACK
ensures it can be modulated later.
BUG: 10514848
Change-Id: If7a824410a66f1e9b648e20ee627bdf99a42ae78