When reporting views to accessibility services we are ordering the
children in a parent based on their location on the screen. The
initial implementation worked pretty well in practive but violated
the transitivity property leading to rare crashes in apps. The current
implementation does not violate transitivity but does not produce
good ordering.
Given the lack of time and to minumize risk this change uses the
old strategy which works most of the time and if that fails we
fall back to the current strategy. Coming up with a correct strategy
that produces good results requires more time.
bug:17887986
Change-Id: I1c233ecdf318befc315e793696ac48bd6c652ab6
Negative margins can cause all sorts of other problematic assumptions,
subtle errors and unexpected behavior. While they technically work
developers should steer clear of them.
Change-Id: Ia1f7d9a33e25444ebdc3c32679ae1179210558e1
Help developers during debugging bad calls to addView by throwing an
IllegalArgumentException earlier rather than implicitly tossing NPE
the first time the child view is accessed.
Change-Id: I4a554635815a5d0b415f637b93592fb45973f26d
Like "0.0.0" will be separated to "0.0 .0" now, just to make sure we are more
complied with svg path data.
b/17892882
Change-Id: Id7b64e9882f5174aa794a0256e2a29d66c724876
After completely iterating over a UsageEvents object, the internal parcel
is recycled. If resetToStart is called then, it does nothing.
Bug:17909428
Change-Id: I7bc68d3429e4621a50dedbfc1789576d44dbb3be
- Add entries for units and range into javadoc
- Fix up existing units entries and add new ones
- Fix up range entries to be consistent for enums
- Add range entries where it makes sense
- Minor fix to javadoc gen to allow for code indentation
- Lots of edits for consistency, especially to
available* entries.
Bug: 16525650
Change-Id: Id09663d897ec98122073e6e13719731ec0de4dad
When we added scan paths, we forgot to bring them along through
Parcel and copy constructor.
Bug: 17900178
Change-Id: I0ee9374f909d375768045976fd88cee7431f7d4d
When Battery Saver mode is enabled, we set the animation duration
scale factor to 0 to effectively disable all animations. Later
when it is disabled, we reset the animation duration scale
factor to 1.
This change ensures that we reapply the duration scale factor
whenever the animation is started instead of only applying it
once when the duration is set (usually when the animation is
created). This ensures that the correct scale factor is applied
even when it changes after the animation has been initialized.
Previously, certain animations would continue to be suppressed
even after Battery Saver mode was disengaged. This wasn't much
of an issue when the duration scale was initially implemented as
a developer setting but now that it is exposed via Battery Saver
the artifacts caused by this bug have become visible to users.
Bug: 17887431
Change-Id: I91ba5ca0505d02ac389a31d067e38886112fa0c8
This ensures that drawables are completely separated from their cached
constant states before applying a theme. After this, we can remove the
implicit (and incomplete) mutation in the clone constructors.
Also implements missing mutate() method on ClipDrawable.
BUG: 17646144
Change-Id: If0d66b0a85724d76e0a4f506758c7ba3c0aa3410