bug:17702227
Add details useful to developers (such as layer size/View name), and
switch away from logging implementation names/details, since they
are generally not relevant to developers.
Change-Id: Iee605d182f241450f7e75a6d0c283d51fa1312f5
The "moreChars" test in StaticLayout's generate method would evaluate to
false when the last character in a word caused the break. This in turn
suppressed the ellipsis in this case. The proposed fix is always to set
moreChars true in the code path where the line is broken because more
text wouldn't fit.
Bug: 17738112
Change-Id: Ifa1a69841ca952da4d1937dc8326778179b026b3
The animation scaled was not being factored in early enough in the
activity lifecycle. Also, setCurrentPlaytTime() was not accounting for
the scaled duration correctly. Finally, added setCurrentFraction() as
a more general-purpose seeking facility.
Issue #18222006 Animator duration scale ignored in some situations
Issue #17951668 add ability to seek fraction, not just time
Change-Id: Idad401f5ff5026d7046c36eee09d78a4793215dc
All but a few lines of this is for issue #16013164, which allowed
apps to do some operations as the media uid by having it call
back to them to open a file. The problem here is with the tempory
identity stuff in the activity manager, allowing us to make the open
call as the original caller... ideally we should figure out a way
to just get rid of all of that, but the solution here is actually
easier (even though it doesn't look it) -- we now hand a token over
to the openFile() call that it can use when doing permission checks
to say "yes I would like the check to be against whoever is responsible
for the open". This allows us to do the uid remapping for only this
one specific set of permission checks, and nothing else.
Also fix issue #17487348: Isolated services can access system services
they shouldn't be able to. Don't send any system service IBinder objects
down for the first initialization of an isolated process.
Change-Id: I3c70e16e0899d7eef0bae458e83958b41ed2b75e
The WeView provider implementation needs access to
these APIs to implement the WebView functionality.
BUG:18152150
Change-Id: I6b41c623b1e8a776dcee8977d0d17259cb4b34f1
(cherry picked from commits 94ef789f0c
and 53f2569487)
installd can then clear the ".booting" marker from the dalvik-cache
(owned by root). This marker is used to detect boot loops.
bug: 18280671
(cherry picked from commit 76a748e62f)
Change-Id: I2364c05837ac04d428b5a34ab1802964a11d2df4
This CL improves the method by which excess space is distributed in GridLayout.
Previously, GridLayout would assume weights were arranged in a 'line' and
sum the weights in the assumed line to figure out the proportional allocation
to each view. The system involved running GridLayout's internal constraint
solver twice.
Behavior was unspecified (and surprising) when weights appeared in views
that were not linked together linearly, typically leaving the last view
in each axis with more space than expected (in GridLayout's Bellman-Ford
constraint solver, remaining space goes to the last span of the axis).
This CL changes the weight distribution mechanism to effectively integrate it
with the Bellman-Ford constraint resolution algorithm. It does this
by returning a boolean value from the constraint solver saying whether or
not the constraints could be solved and then using a binary chop to find
a maximum amount of space that can be distributed without violating the
constraints.
This implementation runs the solver log(<axis size> * <number of Views>)
times until finding the maximum amount of space that can be distributed according
to the weights without causing a contradiction. We expect the cost of this
variation to be around a factor of 10 worse than the previous implementation
but to provide a simple and general definition of space distribution via
weights that will be open to many future optimizations.
As a side effect, this CL also fixes a bug in GridLayout where remaining space
was distributed only along the major axis.
Bug: 17485996
Change-Id: I120f39e95e90b5b35072ef8a6c348ec541aae42a