FingerprintManager internally creates a Handler which needs to be
bound to a Looper thread. Prior to this CL the Handler was bound to
the Looper of the current thread. This caused issues:
* Different instances of FingerprintManager could be bound to
different Looper threads.
* Callbacks from FingerprintManager were invoked on arbitrary
threads (or not at all if the Looper was there but wasn't running).
* FingerprintManager couldn't be obtained by apps on most non-main
threads leading to java.lang.RuntimeException: Can't create handler
inside thread that has not called Looper.prepare().
This CL fixes the issue by binding the FingerprintManager's Handler to
the Looper running on the main thread.
Bug: 20725228
Change-Id: I4a0382d6e11df9f23b8db9f0deec77369af31b5e
The FragmentManagerImpl is intimately tied with a FragmentActivity. In
many cases, we want to be able to create / manage Fragments outside of
a FragmentManager. This defines a FragmentController interface that can
be used by any class to host Fragments.
Bug: 19569654
Change-Id: I6816a5c1815122d206062b9f4584ad460b3d41dd
The gesture is: stylus touching screen + button pressed, the event
is recognized when the button is pressed, not when it's released.
It can be pressed during DOWN or MOVE.
If the stylus touch + press button is occurring longpress cannot
occur and vice versa. Also adds the haptic feedback and accessibility
bits specific to the new gesture.
Bug: 19620479
Change-Id: Ibc4654978ef39e7b4251d17636453d90f3bf622d
- Add system condition provider for calendar event-based rules.
- Add stub condition provider for handling event conditions.
- Add various shared items to support new settings subpage.
Bug: 20064962
Change-Id: I6f5afe0f1444976f0dc6807048e0580e8a28070e
This replaces mOperationPending, which was in an odd place. It adds
a new PackageSetting.frozen flag that is a last-ditch effort to
prevent ActivityManager from starting an app while it's being moved
or upgraded.
Also provides clearer guarding around all upgrades by freezing,
killing, upgrading, then unfreezing.
Bug: 20275579
Change-Id: I28bb0359a6f4e05080fb336b18dd2a249509d989
Finish wiring up notifications to jump back into in-progress wizard
flow, using moveId as identifier.
Split move events back into separate creation and progress events,
and pass details as bundle to pass extra stuff like UUID. Null
package still means moving primary storage.
Add explicit "volume forgotten" event for PackageManager to clean
up internal state with.
Plumb through internal path reported by vold, and bring back FUSE
bypass rewriting optimization.
Bug: 19993667
Change-Id: I0f43edbba36c58c5cd33550022c54c4eb9f01a48
Now that we have a separate foreground service proc state
(above a sleeping top app), update various system services
to put their bindings into this state when appropriate.
There are two new bind flags for this -- one that just always
makes it a foreground service, another that only does it when
the device is awake (useful for things like the wallpaper).
And with all of that, tweak network policy manager to only
include apps that are at least foreground service state when
in power save and device idle modes. This will allow us to
further reduce the set of apps that have network access
(in particular not giving access to the current top app when
the screen is off), hopefully leading to even better battery
life.
Change-Id: I91d85a5c5ed64e856149e9a5d94a634a7925ec7f
Moves the queryHint to defaultQueryHint, specifies the override order
as queryHint > SearchableInfo > defaultQueryHint.
Cleans up annotations and comments for several related methods.
Bug: 20614122
Change-Id: Ib58ec309e6814cd512df147d789ec0cd546018af