Create a ClipArea class to handle tracking clip regions. This class can
select the most efficient implementation depending on the types of
clipping presented.
ClipArea re-used the rectangle and region-based clipping
implementations as well as adding a "list of rotated rectangles"
approach that is more efficient for rotated views with children.
Change-Id: I2133761a2462ebc0852b394220e265974b3086f0
Previously we canceled the hardware animations but neglected to reset
the state, which left us drawing in the pressed state.
Bug: 19020524
Change-Id: I439a18126b9093cac40006361be99f8d077b95a9
bug:18921087
This fixes issues where bitmaps are cached as textures, and not
reuploaded when reused by BitmapRegionDecoder, showing stale content.
Change-Id: I7626fd6acd36d8e38723689734855ce9154eb8c8
MIDI ports are now implemented as file descriptors directly between the sender
and receiver, so the MidiService is no longer in the message path.
To facilitate the above, each port has its own file descriptor, rather than multiplexing
all ports on a device through a single socket.
Added a new class MidiDeviceServer, which is used by implementors of MIDI devices.
This replaces the MidiVirtualDevice class (which only was included in changes that were reviewed but never submitted).
The USB MIDI implementation has moved from the MIDI service to the USB service.
The USB MIDI implementation uses MidiDeviceServer as its interface, so we now have a common
interface for all MIDI device implementations.
Change-Id: I8effd1583f344beb6c940c3a24dbf20b477a6436
We'd observed a bug in which an unchanged file was nevertheless
being redundantly transmitted for backup on every backup pass.
The underlying issue turns out to have been the FileBackupHelper
base implementation's logic for diffing the prior-state file
set against the current state, in the case when there had been
deletions of prior files. In addition, there was also a
parallel bug in which file checksums were not calculated
properly in some cases, leading to at least one additional
redundant backup of the file in question.
Bug 18694053
Change-Id: Ie0dec06486b5fef4624561737019569c85d6b2a0
A previous change (df68999dc7de3893ca80e4c736704dcc9ed94e35) adjusted
the clipRect slightly on the right side, but didn't adjust the
padding offset used in fading.
Bug: 18820846
Change-Id: I68c0918f914742d1e7b91f9ea8d5acbd41938233
Issue #18983662: API Reivew: clarify Intent docs for URI_ANDROID_APP_SCHEME
Issue #19019830: Bump up battery stats checkin version
Change-Id: I0bd8f32b9d8d5978bd01d421ea2232d20def340a
The locale in the Paint used by TextView is set at the time the view
is created. If the locale changes and the locale hasn't been explicitly
set, better behavior is "whatever the current locale is." This patch
updates the locale in that particular case.
Bug: 16274782
Change-Id: I3b1b8e77c9508c757543ea50de3590d254404c1e
The method had multiple inner loops and was a less efficient form of
rebuildAppWindowsLocked(). Rewritten to use rebuildAppWindowsLocked()
and small other refactors.
Item #1 of bug 18088522.
Change-Id: If93fa961922c77c9f0af719e535ae5ca5d30fe59
Changed so that the API sendStandby() transform the request to
a MHL subcommand if the call is done against a MHL device.
Also hooked up the dump() to print out information on MHL.
Bug: 18451257
Change-Id: I1927855e0e4c45a731f0fd97ba572bfc2a894557
Update the list of audio devices that cause the
ACTION_AUDIO_BECOMING_NOISY intent to be broadcast according
to the FOR_MEDIA forced configuration.
Synchronize access to list of "noisy" audio devices on the
connected devices, as it can be updated from different
threads.
Bug 18313377
Change-Id: Iffd95861d0796691350b0e19b596dd1db0567836
The Android KeyStore backed KeyPairGenerator can generate EC key
pairs, but it cannot be instantiated via the standard JCA approach of
KeyPairGenerator.getInstance("EC", "AndroidKeyStore"). Instead, the
user must invoke KeyPairGenerator.getInstance("RSA",
"AndroidKeyStore") and then tell it to generate an EC key pair.
This CL fixes this weirdness.
The fix requires the introduction of late resolution of key algorithm
and default key size. Prior to this CL, these parameters were resolved
prior to KeyPairGenerator initialization, inside KeyPairGeneratorSpec.
In this CL, these parameters are resolved during KeyPairGenerator
initialization. This is fine because KeyPairGeneratorSpec should be as
dumb as possible and all the logic should reside in KeyPairGenerator
and lower layers.
Bug: 19018089
Change-Id: I114502356e6c9691518cf05b6d9eb0920b4fe0b2
Previously baseline alignment was handled as a separate pass after
normal bottom/top/etc. alignment, but this prevented views from being
laid out relative to baseline-aligned views.
BUG: 17938274
Change-Id: I5965110f012f3b27149b437ba3524cda84e9daf4
When addAppWindowToListLocked defaults to adding based on mBaseLayer
it went from the lowest window to the highest window looking for a
window whose base layer was larger and dropping the new window below
that window.
If the Home activity is the InputMethodTarget then when the home
ActivityStack moves to the back the InputMethod will follow. This
puts the InputMethod, with it's high base layer value below most
activities. If a new activity window is added using the mBaseLayer
rule above it was placed at the bottom of the window list below the
InputMethod window. Being at the bottom it never received focus and
input to the activity timed out causing ANR.
This change starts the mBaseLayer search at the top window and works
its way down looking for the first window whose mBaseLayer is less
than or equal to the new window's mBaseLayer and inserting the new
window above that window. This causes it to be placed at the top of
all activities even if the InputMethod is near the bottom.
Fixes bug 17721767.
Change-Id: I037064de7604b670841e985479eb5857b47af1d7