When Drawables are inflated during preload (or otherwise without a theme)
they cache their themeable attributes in their constant state as an array
keyed on attribute index. Drawables inflated with a theme will simply
resolve theme attributes as part of normal inflation, and they will not
cache any themeable attributes.
Drawables obtained from Resources are pulled from theme-specific cache
when possible. If an unthemed Drawable exists in the preload cache, a
new constant state will be obtained for the Drawable and the theme will
be applied by resolving the cached themeable attributes and overwriting
their respective constant state properties. If no cached version exists,
a new Drawable is inflated against the desired theme.
Constant states from themed drawables may be cached if the applied theme
is "pure" and was loaded from a style resource without any subsequent
modifications.
This CL does not handle applying themes to several Drawable types, but it
fully supports BitmapDrawable, GradientDrawable, NinePatchDrawable,
ColorDrawable, and TouchFeedbackDrawable.
BUG: 12611005
Change-Id: I4e794fbb62f7a371715f4ebdf946ee5f9a5ad1c9
Bug: 13360343
Change DisplayList to be more forgiving with weaker lifecycle
requirements. Is more self-managed with a strong reference
to the renderer it needs
Also fix naming mismatch
Change-Id: I5c89453a72a52954f6f959f0846199705dbb6476
Add check for invalid range before setting for further check
at end of parse() loop.
Bug:12936072
Change-Id: Ie0b33b8e69fe47e5d3371640be5681f13a4e4f6e
(cherry picked from commit ea4adf2847)
Bug: 13338698
Move the releasing of hardware resources to a new
@hide onDetachedFromWindowInternal
Change-Id: I52b4e6ba4d5b3ce20b89cabffa248d1d780e3e81
If a view does not have callbacks, or content description, or does not draw
content, and it is marked as important for accessibility auto, then the system
decides it is not important and does not report it. Apparently progress bar
draws content that means something and it should be important for accessibility
by default.
Change-Id: Icd3837fb8b9e208c98b90707f3b195622d71949e
(cherry picked from commit 7face75f2c)
* 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
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)
- force TextView internal layout recreation when its TextDirection is changed
Change-Id: I7d6b088a9235362e03cb6694392df71bbf5a323a
(cherry picked from commit 22228fec05)
Fixes a bug in Switch that ignores the switch intrinsic height. Reverts
list selectors since they're not implemented in AbsListView yet. Also
adds Quantum for some miscellaneous widgets and icons.
Change-Id: I918bb0165b84e108cdf17a29eadc8424ac35f9ee
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
If a view is scrapped without layout params being set, it will
incorrectly be recycled as item type 0.
BUG: 13212603
Change-Id: I2a42c04ec5065067ab260a0a8afb07207db729f6
Cleans up APIs a little, since I think we may want to add tinting
modes beyond what Porter-Duff can provide. Plus we don't actually
support some of the Porter-Duff modes in hardware.
Change-Id: I2cea1b737cc93607a24842c54eb9f0d8346b29d4