-> Fixed a bug with multiple animations occuring at the same time
-> Added looping paramater to AdapterViewAnimator
-> Added restoration of state to AdapterViewAnimator
-> Fixed a flicker in the default AdapterViewAnimator transition
(could be seen in AdapterViewFlipper)
-> Fixed a bug where touch events of StackView weren't be
propagated to the proper child
Change-Id: I270280cabc42ad77d28e3e7d7d80aa4c17548cab
Previously, the input dispatcher assumed that the input channel's
receive pipe file descriptor was a sufficiently unique identifier for
looking up input channels in its various tables. However, it can happen
that an input channel is disposed and then a new input channel is
immediately created that reuses the same file descriptor. Ordinarily
this is not a problem, however there is a small opportunity for a race
to arise in InputQueue.
When InputQueue receives an input event from the dispatcher, it
generates a finishedToken that encodes the channel's receive pipe fd,
and a sequence number. The finishedToken is used by the ViewRoot
as a handle for the event so that it can tell the InputQueue when
the event has finished being processed.
Here is the race:
1. InputQueue receives an input event, assigns a new finishedToken.
2. ViewRoot begins processing the input event.
3. During processing, ViewRoot unregisters the InputChannel.
4. A new InputChannel is created and is registered with the Input Queue.
This InputChannel happens to have the same receive pipe fd as
the one previously registered.
5. ViewRoot tells the InputQueue that it has finished processing the
input event, passing along the original finishedToken.
6. InputQueue throws an exception because the finishedToken's receive
pipe fd is registered but the sequence number is incorrect so it
assumes that the client has called finish spuriously.
The fix is to include a unique connection id within the finishedToken so
that the InputQueue can accurately confirm that the token belongs to
the currently registered InputChannel rather than to an old one that
happened to have the same receive pipe fd. When it notices this, it
ignores the spurious finish.
I've also made a couple of other small changes to avoid similar races
elsewhere.
This patch set also includes a fix to synthesize a finished signal
when the input channel is unregistered on the client side to
help keep the server and client in sync.
Bug: 2834068
Change-Id: I1de34a36249ab74c359c2c67a57e333543400f7b
* Make Header fields public so activities can write them
* Recycle views properly
* Also made the HeaderAdapter and HeaderViewHolder static inner classes
for a little extra efficiency.
Change-Id: If0a9276e4609e2e8568c7c5a6963f3ed3e25565f
Add extension to WifiLock to allow apps to operate
in high performance mode (high power & disable suspend
optimizations for battery consumption).
Bug: 2834260
Change-Id: I8b33d307f3d569bc92ba2139b9ed224ffc147547
This enforces the new policy if menu items are created
programmatically instead of inflated from menu xml.
This reverts commit fbb72fdbe58142e0f1f7ffa17f009b0d829b33c3.
Change-Id: I102e93b80a3248634e98e0d7dc3321bf1d8b263b
Handles are now centered on selection corners.
Touch regions tuned, especially for the one line / last line case.
Selection mode is stopped when text is entered or modified.
New temporary assets.
New selection background color.
Using references to theme for some hard-coded colors.
Change-Id: I820ec39bb6d5a3c6598c7c34b9c8f90b848da9f3
Merge commit 'e6bfceeb10a01c8e89f712c0ffddc9e5e3ad1842' into gingerbread-plus-aosp
* commit 'e6bfceeb10a01c8e89f712c0ffddc9e5e3ad1842':
Adding a sample accessibility service -make
Merge commit '3b70e159a8168c1154d31d7b0552bb3b0c099334' into gingerbread
* commit '3b70e159a8168c1154d31d7b0552bb3b0c099334':
Adding a sample accessibility service -make
Partial updates are not cached by the AppWidgetService.
-> Added the ability to insert commands with no parameters into
RemoteViews objects.
-> Added showNext() and showPrevious() methods to RemoteViews.
-> Made showNext() / showPrevious() of AdapterViewFlipper remotable.
Change-Id: Ic5491bb374424a54728c4ca92b94b1f00dfb87ff
Apps commonly edit + commit redundant changes to their
SharedPreferences, not checking the existing values. Rather than
force all apps to double-check that their settings writes aren't
redundant, we should just make .commit() faster (avoiding the disk
write) when the file already exists on disk and no effective changes
were made.
Change-Id: I7edbd0d3ace5b69b7af6d12c39797c8b7f86230b
Merge commit 'ddbcce3afbb38680fb84583f7bad5209307e6459'
* commit 'ddbcce3afbb38680fb84583f7bad5209307e6459':
Keep track of remaining fd when devices are removed
Merge commit 'ab59914de7ac714d04a5013c53aa9c7edb5421a2'
* commit 'ab59914de7ac714d04a5013c53aa9c7edb5421a2':
New download manager error code when we can't resume.
Merge commit 'b3e957bb9d3a3811412e5d94233c7f7e2e777c28' into gingerbread-plus-aosp
* commit 'b3e957bb9d3a3811412e5d94233c7f7e2e777c28':
New download manager error code when we can't resume.
Merge commit '5085848ddbadaafa088ed85753156adc2e54554d'
* commit '5085848ddbadaafa088ed85753156adc2e54554d':
Make the LED colors when charging customizable by the vendor