Battery stats used to revolve around a single time base
it maintained, "battery uptime and realtime." This is derived
from the system's uptime and realtime, but only increments while
the device is on battery. It is used to update its timers for
things like the screen being on, wake locks, etc only while the
device is not plugged in to power.
This change formalizes that time base into a separate class that
maintains all of its state. This is used to introduce a new
time base, "battery screen off," which only increments while the
device is on battery *and* the screen is off. Wake locks are now
based on this time base, so we don't count them while the screen
is on -- it is misleading to have them increment while the screen
is on because the device is defined to always stay awake anyway
during that time, so what they are doing is irrelevant.
Change-Id: I020e20c930d8dca2953c6c3ddef1dc93c24161a5
addExtras allows merging with exiting set extras instead of replacing
them. This matches the similar function putExtras in Intent.
Both functions are useful for multi-stage notification building logic.
Change-Id: Ice3e4a53ec05b7129ebdac14e2084163946273a4
* commit '71c3a3d9474e1ce4210209bbd68055f3b780057d':
Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216) - DO NOT MERGE
* commit 'cf33fe683d2cd9ea25fa83f5354c682a788ec074':
Fix bug #12422326 Unable to change text direction programmatically using setTextDirection Android SDK API - DO NOT MERGE
* commit '6c3a45d7df0dc708e3981c79df32b5bb3fb1758a':
Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216) - DO NOT MERGE
* commit 'e1190a994e7d86ae7ad6f4680b7cd58d50d4a770':
Fix bug #12422326 Unable to change text direction programmatically using setTextDirection Android SDK API - DO NOT MERGE
* commit '57f8a4b4ed48ae3e2488bb3bafcd40137c71ec18':
Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216) - DO NOT MERGE
* commit 'cb6dcd7af2d015b7a3d49f1224936241747bcb43':
Fix bug #12422326 Unable to change text direction programmatically using setTextDirection Android SDK API - DO NOT MERGE
* commit '1ff2df6194148f487ccb014a7c5302fa8ffe2571':
Fix bug #12066726 java.lang.NullPointerException at android.widget.CalendarView.onScroll(CalendarView.java:1216) - DO NOT MERGE
* commit '2b58a29f825e6442d8767a36adaf1770b86d5725':
Fix bug #12422326 Unable to change text direction programmatically using setTextDirection Android SDK API - DO NOT MERGE
* commit '1ae480a24deed18cb1ca95344995150f3a3f5c98':
Passing and using defStyle in ViewGroup initFromAttributes.
Set android:descendantFocusability to blocksDescendants for all NumberPicker in clockwork.
* changes:
Passing and using defStyle in ViewGroup initFromAttributes.
Set android:descendantFocusability to blocksDescendants for all NumberPicker in clockwork.
Bug: 13324734
Editor was using isValid as a mechanism to track whether or not it
needed to re-record the DisplayList. This is not correct as isValid()
is not a general-purpose dirty bit. Add an explicit dirty bit for
Editor to use instead
Change-Id: I5608b151791870fca3681056b5507bd39ee48f52
NumberPicker is composed of three areas, increment, decrement, and value,
which take the entire space. Hence, adding a click listener was a no-op.
Clicking on the value brings up the IME but for devices with very small
screens a developer may want to override this default behavior to say
confirm the selection.
This change allows adding a click listener to NumberPicker to override the
behavior of clicking on the current value. This is applicable only to the
new look and feel of the NumberPicker, i.e. the holo themes. This change
is safe as previously setting a click listener had no effect.
bug:13287234
Change-Id: I34e12a2e2bd64344a4797153fa6c820001a4722e
(cherry picked from commit 46a27efe95)
Bug: 13324014
Bug: 13324861
Don't use a DisplayList for the background if the View is detached.
mAttachInfo can be null in onDetachedFromWindow
Change-Id: I6d1413b956dd35cd2f5256860223013d2a570870
- force TextView internal layout recreation when its TextDirection is changed
Change-Id: I7d6b088a9235362e03cb6694392df71bbf5a323a
(cherry picked from commit 22228fec05)
I want to expose this flag so that gmail can sort
based on it. Plus, it provides generally useful information.
Bug: 13173524
Change-Id: I93a35f8822b55f97b15e1fbb783110e3674c1622
Original commit message:
Add swipe-to-dismiss support to PhoneWindow.
This adds a new window feature -- FEATURE_SWIPE_TO_DISMISS -- and a
theme attribute to activate that feature. When the feature is
activated, a SwipeDismissLayout is inflated as the DecorView layout.
SwipeDismissLayout intercepts touch events and steals ones that are
large swipes to the right if its children don't. PhoneWindow
registers handlers that listen for these swipe events, translate the
window when necessary, and finish the activity at the end of the
gesture.
Conflicts:
core/java/android/view/Window.java
core/res/res/values/attrs.xml
Change-Id: I943290b436864ca4a1bd401b88d696e08c921cdd
Due to race conditions or programming errors, the NsdManager
can attempt to process an asynchronous status message (and issue
a callback to the listener) after the listener has already been
removed from the NsdManager state. This causes dereferencing of
null objects, and a crash.
Split out the three async-queue message cases: these are ones
in which message.arg2 does not hold an NsdManager array index
and the code should not interpret this field as if it were.
Add an explicit check for "null listener" (the array index in the
message has already been released), log a warning, and exit early.
Safeguard accesses to the "NSD service type" string from a (possibly
null) NsdServiceInfo object... return a constant "?" string rather
than crashing.
Bug: 9016259
Change-Id: I40aabdfc65d86fdd0eaac7a1e7e56e6ff69796cf