* changes:
Check that the window which wants to force hide is visible before setting the flag forceHiding to true. If we do layout the surfaces again this flag gets set no matter what since the keyguard window is always present in the list of tokens and this hides the window which would have become visible since the keyguard just got dismissed. This causes unnecessary focus changes due to changes in visibility of current window.
in the case where we fade a 32-bits surface (ie: GL_MODULATE w/ a,a,a,a + blending),
we first make a copy of the background into a RGB buffer, then we blend the 32-bits
surface as usual (without the alpha component), and finally blend the copy of
the background on top with 1-a. This uses a lot of bandwidth, but no CPU time.
again this flag gets set no matter what since the keyguard window is always present in the list of tokens and this hides the window which would
have become visible since the keyguard just got dismissed.
This causes unnecessary focus changes due to changes in visibility of current window.
This will resolve issues related to current focus and time outs when dispatching key events.
add a function that uses replace() to replace all
instances of '<' and '>' with the HTML entities and use
this wherever the query text is added onto the page.
- Added new functions to PerformanceCollector and PerformanceResultsWriter
- Modified unit tests to test new functionality and fix flakiness reported in
2218327 and 2118268
- Added PerformanceCollectorTest to small suite
Because of the asynchronous behavior of keyguard, and incall explicitly
disabling keyguard, sometimes the window manager would wind up in a state in
which the "correct" app and activity window were shown, but focus was
recalculated "too soon," at a time when keyguard was just about gone but not
quite, and incall was not yet fully shown. In this case there was no currently
valid event target, but the final show of the incall window would not prompt a
focus recalculation, so that "no current focus" state would incorrectly persist,
resulting in spurious ANRs until some other phone activity forced a focus
update.
We now detect the problematic case when windows are shown, and make sure to
recalculate focus explicitly thereafter. This change does *not* fix the
underlying race conditions that have been resulting in mismatched state within
the window manager, but it does force a validation pass that puts things in
order so that normal operation can continue.
Change-Id: I8e7f5f0795f0042a0da074aeed385e3fbc210360
Merge commit 'd14f1bd7e4ba28489bdc472aa736aee5a587cb98' into eclair
* commit 'd14f1bd7e4ba28489bdc472aa736aee5a587cb98':
docs: add 2.0 video to developer site feature videos
Merge commit '5a4d66965d3c5061d47201fcaa62c90d126e7187' into eclair
* commit '5a4d66965d3c5061d47201fcaa62c90d126e7187':
doc change: some fixes for online sdk docs. update "testing" section of screens support doc.
* changes:
Fix bug 2201417. Whenever the System setting that indicates whether the notifcation stream uses the ring volume changes, the table of stream volume aliases in AudioService is updated. But the name of the alias stored in VolumeStreamState.mVolumeIndexSettingName was not updated whenever the NOTIFICATIONS_USE_RING_VOLUME setting was updated. This caused the wrong volume setting to be persisted. This change ensures the setting name is updated whenever the volume alias is, and persists the notification volume change right away (instead of after a delay), so that registered observers are notified right away. The notification seekbar in the sound settings is an example of such an observer.
Fixes a deadlock that occurred because mAnimatingScreenOff was left set to true
after aborting turning off the screen.
This change removes the mAnimatingScreenOff flag and checks for
(mScreenBrightness.animating && mScreenBrightness.targetValue == 0) instead.
Fixes bug b/2219706
Change-Id: I081f08c14ad7585a953fb567867238b1f3db841f
Signed-off-by: Mike Lockwood <lockwood@android.com>
The locale picker and the activity transition would both change the
configuration, and depending upon the timing, the activity transition
would undo what the locale picker had just done. Usually it worked right,
but would often fail if the user changed locales just after a data wipe,
when the media scanner was working hard in the background to index
the contents of the SD card.
http://b/issue?id=2216298
whether the notifcation stream uses the ring volume changes, the
table of stream volume aliases in AudioService is updated. But the
name of the alias stored in VolumeStreamState.mVolumeIndexSettingName
was not updated whenever the NOTIFICATIONS_USE_RING_VOLUME setting
was updated. This caused the wrong volume setting to be persisted.
This change ensures the setting name is updated whenever the volume
alias is, and persists the notification volume change right away
(instead of after a delay), so that registered observers are notified
right away. The notification seekbar in the sound settings is an
example of such an observer.
Merge commit '675eb31d8d3f349de3d4f8db11631aee0118d85d' into eclair
* commit '675eb31d8d3f349de3d4f8db11631aee0118d85d':
docs: fix broken link for download page.
a script was inserting a path that is no longer needed.
the removed class was the script identifier, so removing
this class means the path won't be added.
Use EGLImageKHR instead of copybit directly.
We now have the basis to use streaming YUV textures (well, in fact
we already are). When/if we use the GPU instead of the MDP we'll
need to make sure it supports the appropriate YUV format.
Also make sure we compile if EGL_ANDROID_image_native_buffer is not supported
Sometimes quickly touching the screen with two fingers will result
in the firmware thinking one finger moved very quickly. This code
tries to identify the difference between the two based on velocity
of the last N points versus the velocity of the last M points and
figure out if there was mostly acceleration or a sudden deceleration.
It's still not perfect and very dependent on the touch hardware.