Commit Graph

33828 Commits

Author SHA1 Message Date
Dianne Hackborn
3d658bf20e Improve logging of first wake lock, history size.
We now try to have a better label for the first wake lock
that is acquired in the log.  This is done in two ways:

- The alarm manager now sorts the alarms it is going to
  execute so that wakeup alarms are first, which are more
  important w.r.t. which one should be logged.
- There is a new power manager facility to make a wake lock
  as "unimportant for logging," which just means in battery
  stats that a wake lock acquired after that can be considered
  the actual one to log.  This is only used by the alarm manager
  to mark its TIME_TICK alarms as unimportant for logging.

Also reworked the battery history code to be cleaner and a bit
smaller.  There is no longer a separate EVENT command, instead
the event code and tag are just another thing that can be included
in an UPDATE command.

The bits used in the first history int are also re-arrange, so
that only the ones that really change a fair amount in the state
bits are up at the top and there is no longer space used for
the command code (since now it is always just UPDATE).  This
allows us to have more room for the time delta at the bottom,
to better avoid situations where we need to write an int delta.

Change-Id: I1bb860ae5b558a248800b090b03a84fbf7acd68a
2014-02-05 16:40:51 -08:00
Dianne Hackborn
e8d916c04c Merge "More battery history improvements." 2014-02-03 21:32:33 +00:00
Zhijun He
6c90d43975 Merge "Camera2: Update sceneFlicker tag spec" 2014-02-03 21:10:19 +00:00
Zhijun He
208fb6c321 Camera2: Update sceneFlicker tag spec
Change-Id: Ieb083b653b83f0373661fc15895ce23a4342a47f
2014-02-03 13:09:06 -08:00
Zhijun He
37bac0aecb Merge "Camera2: update lens state tag specs" 2014-02-03 20:41:43 +00:00
Zhijun He
ca1b73a5f4 Camera2: update lens state tag specs
Change-Id: I630d45945f2806bde748f440c8203e08a70f59c9
2014-02-03 12:39:53 -08:00
Christopher Tate
31b4834b6d Merge "Introduce "IdleService" API to expose idle-time maintenance to apps" 2014-02-03 20:35:01 +00:00
Zhijun He
153ac102d3 Camera2: Update pixelArraySize and analog sensitivity tags
Change-Id: I07424afb44c70b5bcd600f1265efa969fdeac7e5
2014-02-03 12:25:12 -08:00
Dianne Hackborn
71fc13eb58 More battery history improvements.
- Better batching of history items.  Fixed problems where empty
  entries would be created because state toggles got lost.
- The string pool is now a HistoryTag pool, containing both a string
  and uid; now an entry only requires 16 bits in the history data.
- Acquiring the first wake lock also now includes a HistoryTag
  identifying who did the aquisition.
- Cleaned up printing of signal strengths and cell radio types.
- There was code that tried to allow you to add new history entries
  while iterating the history...  but these should never happen
  together, so turned that into a failure...  and fixed an issue
  where we could leave the battery stats in a state where it
  thinks it is continually iterating.

Change-Id: I1afa57ee2d66b186932c502dbdd633cdd4aed353
2014-02-03 10:58:50 -08:00
John Spurlock
53a470af65 am be878d87: am b6a4926c: am 647db9fa: am 76ecd66a: am 0196e561: Fix typo in ImageView.java
* commit 'be878d8773cc841e5e144a6332c576c650e88126':
  Fix typo in ImageView.java
2014-02-03 17:36:11 +00:00
John Spurlock
be878d8773 am b6a4926c: am 647db9fa: am 76ecd66a: am 0196e561: Fix typo in ImageView.java
* commit 'b6a4926c670244fbf7d7033f2a1b46da25b35d39':
  Fix typo in ImageView.java
2014-02-03 17:27:11 +00:00
John Spurlock
b6a4926c67 am 647db9fa: am 76ecd66a: am 0196e561: Fix typo in ImageView.java
* commit '647db9fae37b36d99ce290acfae7b453f00ae5af':
  Fix typo in ImageView.java
2014-02-03 17:24:05 +00:00
John Spurlock
647db9fae3 am 76ecd66a: am 0196e561: Fix typo in ImageView.java
* commit '76ecd66a6d5f8ceaebbe9cd109948f01aff4cd27':
  Fix typo in ImageView.java
2014-02-03 17:21:25 +00:00
John Spurlock
76ecd66a6d am 0196e561: Fix typo in ImageView.java
* commit '0196e561f280e6cc361442036da277a630e68558':
  Fix typo in ImageView.java
2014-02-03 17:18:37 +00:00
John Spurlock
0196e561f2 Fix typo in ImageView.java
Change-Id: Iaa7b020f09c893a5fe006a8523686dd8b9a8f872
2014-02-03 09:00:35 -05:00
Alan Viverette
edc4664d60 Fix broken build in BridgeResources
Change-Id: Iec58a2acda6b9538bcb5974d3d5c45ea6e53eac5
2014-02-01 01:43:16 -08:00
Christopher Tate
d417d625d2 Introduce "IdleService" API to expose idle-time maintenance to apps
When an application wishes to do low-priority background work when the
device is otherwise idle (e.g. in a desk dock overnight), it declares
a service in its manifest that requires this permission:

     android:permission="android.permission.BIND_IDLE_SERVICE

to launch, and which publishes this intent filter:

    <intent-filter>
        <action android:name="android.service.idle.IdleService" />
    </intent-filter>

This string is declared in the API as IdleService.SERVICE_INTERFACE.

The service must be implemented by extending the new "IdleService"
class, which provides the API through which the system will communicate
with the app.

IdleService declares three methods, two of which are lifecycle callbacks
to the service, and the third of which is for the service itself to
invoke when appropriate.  The lifecycle callbacks are

    public abstract boolean onIdleStart();
    public abstract void onIdleStop();

The first of these is a notification to the service that an idle
maintenance interval has begun.  The service can then spin off
whatever non-UI work it wishes.  When the interval is over, or if
the OS determines that idle services should be shut down immediately,
the onIdleStop() method will be invoked.  The service must shut down
any background processing immediately when this method is called.

Both of these methods must return immediately.  However, the OS
holds a wakelock on the application's behalf for the entire period
between the onIdleStart() and onIdleStop() callbacks.  This means
that for system-arbitrated idle-time operation, the application does
not need to do any of its own wakelock management, and does not need
to hold any wakelock permissions.

The third method in IdleService is

    public final void finishIdle();

Calling this method notifies the OS that the application has finished
whatever idle-time operation it needed to perform, and the OS is thus
free to release the wakelock and return to normal operation (or to
allow other apps to run their own idle services).

Currently the idle window granted to each idle service is ten minutes.
The OS is rather conservative about when these services are run; low
battery or any user activity will suppress them, and the OS will not
choose to run them particularly often.

Idle services are granted their execution windows in round-robin
fashion.

Bug 9680213

Change-Id: Idd6f35940c938c31b94aa4269a67870abf7125b6
2014-01-31 15:41:40 -08:00
Alan Viverette
fe0ea8c21f Merge "Allow specification of View theme override as a theme attribute" 2014-01-31 21:05:24 +00:00
Craig Mautner
624e98f539 am d5f1fcb7: am 56bf2f67: Merge "Clarify FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET usage" into klp-modular-dev
* commit 'd5f1fcb7a4d6cc11b727bdf79fab7693a5dd7117':
  Clarify FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET usage
2014-01-31 19:32:18 +00:00
Craig Mautner
d5f1fcb7a4 am 56bf2f67: Merge "Clarify FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET usage" into klp-modular-dev
* commit '56bf2f670c800f569fc72102e79fd555b6102677':
  Clarify FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET usage
2014-01-31 19:26:17 +00:00
Craig Mautner
56bf2f670c Merge "Clarify FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET usage" into klp-modular-dev 2014-01-31 19:23:36 +00:00
Alan Viverette
8b725dcbe1 Merge "Improve encapsulation of Resources" 2014-01-31 19:22:24 +00:00
Craig Mautner
e1f3fa2482 Clarify FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET usage
Fixes bug 12592453.

Change-Id: Ib64559727d59b3433c3753f9fda88329effc7e26
2014-01-31 11:20:40 -08:00
Chris Wren
5c57c44eea Merge "record the notification style" 2014-01-31 19:19:23 +00:00
Alan Viverette
562a6a8d83 Improve encapsulation of Resources
Change-Id: Ic408915d2695ac8906231da1d2dc127f94bdd0cc
2014-01-31 11:18:28 -08:00
Chris Craik
1d89563ff8 Merge "Add initial hidden outline APIs" 2014-01-31 18:56:41 +00:00
Chris Wren
91ad563da3 record the notification style
Bug: 10634902
Change-Id: I7d29f252367f4ab58e97a6ac8b0c6702f558e5cf
2014-01-31 12:15:03 -05:00
Narayan Kamath
90b8eaa68b am 797b5adc: am 77a1986c: am 49b7ba4d: Merge "AArch64: Make AssetManager and related classes 64-bit compatible"
* commit '797b5adcb4ead3c687db3d9fd831dff93760dd4a':
  AArch64: Make AssetManager and related classes 64-bit compatible
2014-01-31 17:12:42 +00:00
Narayan Kamath
fd6a44d0b5 am ff62e966: am 149510e0: am b9f960e0: Merge "Fixed cancel() not working correctly"
* commit 'ff62e966b60bb20dc7c3384485816b1e7bf06057':
  Fixed cancel() not working correctly
2014-01-31 16:41:42 +00:00
Narayan Kamath
797b5adcb4 am 77a1986c: am 49b7ba4d: Merge "AArch64: Make AssetManager and related classes 64-bit compatible"
* commit '77a1986c69760583f05eabbf7dac7c25dd8b7e7b':
  AArch64: Make AssetManager and related classes 64-bit compatible
2014-01-31 16:29:23 +00:00
Narayan Kamath
ff62e966b6 am 149510e0: am b9f960e0: Merge "Fixed cancel() not working correctly"
* commit '149510e010b46a445355a8d7fcdb8401125b92c3':
  Fixed cancel() not working correctly
2014-01-31 16:29:16 +00:00
Ashok Bhat
896043d67d AArch64: Make AssetManager and related classes 64-bit compatible
Following changes have been done:

[x] Long is used to store native pointers as pointers can be
    64-bit.

[x] AssetManager openAsset native function returned -1 if
    file name was empty and java function considered any
    non-zero value as success. This has been fixed by native
    function throwing Illegal Argument Exception as well.

[x] AssetManager incRefsLocked and decRefsLocked now accept
    long as input to support 64-bit native references.

[x] AssetManager incRefsLocked method incorrecly used
    'this.hashCode()' instead of the passed parameter id.
    This has been fixed.

[x] Some minor changes have been done to conform with
    standard JNI practice (e.g. use of jint instead of int
    in JNI function prototypes)

Change-Id: I095b9f900d49e51f43ad6afc47cbc23116a6a64a
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
Signed-off-by: Craig Barber <craig.barber@arm.com>
Signed-off-by: Kévin PETIT <kevin.petit@arm.com>
2014-01-31 14:14:29 +00:00
Narayan Kamath
b9f960e094 Merge "Fixed cancel() not working correctly" 2014-01-31 13:20:58 +00:00
Narayan Kamath
5cdbac1e44 am 70986e19: am ab71f8b6: Merge "AArch64: Use of long for pointers in PropertyValuesHolder"
* commit '70986e197bbaf4de4f8126519a75df2b057c3b52':
  AArch64: Use of long for pointers in PropertyValuesHolder
2014-01-31 12:17:09 +00:00
Hui Lu
945d69d7b8 am 3cab7fc1: Merge "Add proxy as another network." into klp-modular-dev
* commit '3cab7fc1b8f06166df3a58cf10d4a0db36bde788':
  Add proxy as another network.
2014-01-31 08:11:57 +00:00
George Mount
d085625976 Merge "Add PathInterpolator to interpolate along a Path." 2014-01-31 00:53:20 +00:00
George Mount
6e5f045ddf Add PathInterpolator to interpolate along a Path.
Change-Id: I45b361ef8edd49b5e22d66ba9e25600065e0d5e7
2014-01-30 16:50:15 -08:00
Chris Craik
a2fe7affd3 Add initial hidden outline APIs
Background drawable outline usage and drawable outline calculation
still to come.

Change-Id: I8c7539f1638f86e1f8eb11f4fe49f705f61d58ba
2014-01-30 16:04:16 -08:00
Hui Lu
3cab7fc1b8 Merge "Add proxy as another network." into klp-modular-dev 2014-01-30 22:58:48 +00:00
Hui Lu
1c5624a012 Add proxy as another network.
Change-Id: I70cb6ac5604c4f0d6a752a291c40de2445ae98bb
2014-01-30 17:26:18 -05:00
Fabrice Di Meglio
d95dc28f8e Merge "Make public but hide OnPreferenceTreeClickListener" 2014-01-30 22:17:16 +00:00
Fabrice Di Meglio
25da1bac82 Merge "Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216)" 2014-01-30 22:15:07 +00:00
Andy McFadden
acdbb9a9e1 Merge "Allow "opaque" flag to be updated" 2014-01-30 21:41:38 +00:00
Dan Sandler
a5e0f415d3 SystemUI support for notification visibility.
In this implementation, DISABLE_NOTIFICATION_TICKER (which was never
really used on its own and can be safely subsumed by
DISABLE_NOTIFICATION_ICONS) is now DISABLE_PRIVATE_NOTIFICATIONS;
when this SystemUI bit is set by the keyguard, SystemUI knows to switch
its presentation into "public" mode, in which
VISIBILITY_PRIVATE notifications are replaced with their
publicVersion's contentView (or a placeholder view,
synthesized by SystemUI, that leaks no additional
information about the notification). VISIBILITY_SECRET
notifications are suppressed altogether in this mode.

This behavior is enabled but not activated by default. To
turn it on, run:

  $ adb shell settings put secure lock_screen_allow_notifications 1

and restart SystemUI.

Change-Id: Id660bef7737580e16a83f60567c22b53ee81c602
2014-01-30 13:23:14 -05:00
Dan Sandler
0bf2ed8ae3 Notification visibility APIs.
The new visibility property allows an application to signal
to SystemUI whether a notification's contents are safe to
show in "public" situations, i.e. outside of a secure
lockscreen, or whether they should be treated as "private"
(where only the icon is revealed).

Apps that post information that includes no personal or
sensitive information (e.g. a weather alert) can use
VISIBILITY_PUBLIC to allow users to see (and potentially
even dismiss) this kind of notification without unlocking
their devices.

The historical treatment of Android notifications
corresponds to VISIBILITY_PRIVATE, which is the default
visibility setting for all notifications, including apps
that are not aware of this API.

VISIBILITY_PRIVATE notifications may optionally specify a
publicVersion, which is a whole other Notification object
whose contentView will be shown in public contexts. This
allows an app to provide a "redacted" public version of its
notification that is more useful than the system-supplied
version (showing just the icon and app name) but still
conceals private information. For example, a messaging app
that today posts a Notification including the sender and
contents of each message could additionally specify a
publicVersion that says, simply, "N new messages".

There's also VISIBILITY_SECRET for notifications that should
be totally concealed (that is, no icon) in public contexts.
To reveal any hint of this kind of notification would
require the user to unlock the device.

Change-Id: I1552db36c469954d27d3c92ba21ac5c703d47ae1
2014-01-30 12:26:30 -05:00
jl1990
3cd12a5155 Fixed cancel() not working correctly
The method handleMessage(Message msg) from mHandler variable was
not checking if the timer was cancelled, so
sendMessageDelayed(obtainMessage(MSG), delay) was keeping the
timer alive. The patch simply adds a boolean and checks if the
CountDownTimer was cancelled before calling
sendMessageDelayed(obtainMessage(MSG), delay)

bug: https://code.google.com/p/android/issues/detail?id=58668

Change-Id: Ic6bbb9d33a3616f8503db222513cc14ad2270cb8
Signed-off-by: jl1990 <jlcarrasco1990@gmail.com>
2014-01-30 13:46:44 +00:00
Przemyslaw Szczepaniak
8399aae0a0 Add public SynthesisRequestV2 constructor.
While implementing the new TTS API, I found out that it's very difficult
to create an SynthesisRequestV2 instance for testing purposes - it's
a final class, with no publicly visible constructors.

Bug: 8259486
Change-Id: I88b84fd8ad1ac6960f3932863ca758657f9547ff
2014-01-30 13:27:00 +00:00
Przemyslaw Szczepaniak
1ca1d88658 Allow clients to extend the TTS UtteranceId class.
This change allows TTS clients to create (and use) classes derived from the
UtteranceId class. This allows to attach a custom data and methods that
can be reached later in callbacks that take the UtteranceId instance as
parameter.

Also, since we can't depend on the identityHashCode results being unique,
this change adds AtomicInteger to generate unique identifiers for UtteranceId
instances.

Bug: 8259486
Change-Id: Id1e9eabc890ec585a7f8570fd20e287dcda9a11d
2014-01-30 10:41:26 +00:00
Andy McFadden
314405bf89 Allow "opaque" flag to be updated
Added a setOpaque() call and a bunch of comments.

Bug 12387406

Change-Id: Ic066cba926223f22f9bc56a7013987001d9cc795
2014-01-29 17:38:10 -08:00
Chris Craik
0e7eb954f1 Fix build breakage
Change-Id: I65ab3cb691935db23b7a1f600e421fb5d8e850cd
2014-01-29 15:30:50 -08:00