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 '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.
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.
This fixes a problem that resulted in bogus battery statistics for the prox and light sensors
due to the sensors being enabled in an app's context and disabled in the system context.
Fixes problems reported in bug b/2211960
Change-Id: Ib0d3d9d06f043b386d3b8d494b9bad5bd40bb6e1
Signed-off-by: Mike Lockwood <lockwood@android.com>
Merge commit 'a250f0c808ff01f7a5c9fe393ef2bdf4266a7d9f' into eclair
* commit 'a250f0c808ff01f7a5c9fe393ef2bdf4266a7d9f':
doc change: fix broken link at top of installing doc
This change forces metadata retreiver threads to background priority.
Uses an inner class to encapsulate the priority change so that it
automatically restores priority when returning to the client.
This is the simple fix for bug 2199271 which increases the timeout
for DEACTIVATE thus allowing more time to complete before SETUP_DATA_CALL
is retried. This should fix some occurrences of this bug as the current
time is known to be too short.
Bug: 2199271
Change-Id: I11c3cdc74678399de5f812133c83d687d0ed9937
Fixes bug b/2198028 (testDirectionsFromScratchByTyping fails because of android.permission.ACCESS_WIFI_STATE)
Change-Id: I44e95981d805189ed6d906d388c5189ee788802f
Signed-off-by: Mike Lockwood <lockwood@android.com>
Use auth type to setup data connection.
This value defaults to -1 (unset) to maintain compatibility.
When the value is -1, the auth type gets set to 0 (if no user is specified)
or 3.
Bug: 181700
Bluetooth A2DP suspend-resume improvements.
This change will reduce the occurence rate of A2DP sink suspend resume failures observed in issues 2184627, 2181005 and possibly 2189628.
More robust suspend/resume logic.
Use only the suspend request to audio hardware to avoid having two concurent suspend resume control paths.
This is deprecated and will be removed in the next release.
Change-Id: I23c5e711fd8e6768da2f5190d1b6c9fa77de41a6
Signed-off-by: Mike Lockwood <lockwood@android.com>