It turns out switching to the new kernel alarm
reporting causes lots and lots of spurious flags
that the clock has changed. The alarm manager
would blindly trust these, thinking the world has
changed on it and recomputing everything and reporting
this to everyone else. This was expensive.
We now verify that the time has changed sufficiently
that it is worth caring about. This is basically the
same algorithm that battery stats was using to avoid
recording small clock changes, so we are really just
pushing this down into the alarm manager and can now
remove that from battery stats.
Also since we are getting these so much, make use of
the other information in about the wakeup that tells us
if an alarm went off to avoid doing anything if it didn't.
Change-Id: I6f4f4226db6eb2b38ca73860786e7cf7c9136cc3
Some RILs don't support RIL_REQUEST_GET_RADIO_CAPABILITY. Add
code to RIL.java to notice a REQUEST_NOT_SUPPORTED response and
check config.xml (config_radio_access_family) for a static answer.
Also catching GENERIC_FAILURE responses because Hammerhead modem
returns that. B 21079604 created for this.
If neither Modem nor config.xml provide data, uses RAF_UNKNOWN
so we don't lie about capabilities and also so we fail fast
(setPreferredNetwork won't work).
bug:20561357
Change-Id: I49e4527fe94919a7094bc7c1e100d20e8f833865
After a handle is snapped to the word, the difference was
tracked in offset. It can break grapheme clusters, ignores
character width, and makes it difficult to select text near
line breaks.
Bug: 21005599
Change-Id: I42402a377670c7e3c6d6e6583744d085ae52bba2
- renamed MediaPlayer.*OnTimedMetaData* to *OnTimedMetaDataAvailable*
- added `final` modifier to TimedMetaData class
- added javadocs for TimedMetaData public methods
- renamed private members and cooresponding accessors for TimedMetaData
- reworded existing TimedMetaData javadoc
Bug: 21045118
Change-Id: If0113307fce08083226fc7f64c4fe6f93553d899
This moves the non-public API classes backing Android Keystore from
android.security to android.security.keystore, a package specially
created for Android Keystore.
Bug: 18088752
Change-Id: Ibf04d6a26c54d310b0501fc5e34f37b1176324ad
- tune Intent resolution candidates filtering: remove the undefinedList
from the results and then add it again it there is no more candidates.
See bug #19628271
Change-Id: I9ab077f6a431367be8bab30c134d34e1e7ac51ed
Rename reprocessible to reprocessable and OPAQUE reprocessing to
PRIVATE reprocessing. Also fix a few broken links in reprocessing
APIs.
Bug: 21044522
Change-Id: I155b62d8743b036bd4b46f0da87749ce4e20b467
For internal and unknowable wired devices, return the product name (i.e. "Nexus 7").
For connected devices with manufacturer-supplied product names, return those.
Change getName() to getProductName().
Bug: 20880296
Change-Id: I67ef3d4c73b3acab368b0879faa26fa9127c21bb
The access mock location is no longer a runtime permission. It is a
signature protected one that apps cannot get but the fact they request
it means they want to inject location into the system. Now the user
gets to choose the current mock location app in developer options from
the apps that request the mock location permission. The access to mock
location is no longer guarded by the permisson but from a new app op
which is off by default and the settiings UI sets it to enabled only
for the currently selected mock location app.
bug:21078873
Change-Id: I19e3f9dc7c7de82eab46b30fec1abfbca54a0e59