summaryrefslogtreecommitdiffstats
path: root/policy/src
diff options
context:
space:
mode:
authorJim Miller <jaggies@google.com>2012-12-04 12:33:49 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2012-12-04 12:33:49 -0800
commiteac4be7ef28a9dfba9e6cc6d0501b4bd2146041a (patch)
treeaf23daeb50de8b8f685b932302eb13bf51ec152c /policy/src
parent5cb09b7dc5b2a3bfa895bca5402af9edc8ec9d9a (diff)
parent4fa27f314038620fd3c50170d2f8caebeb6005bb (diff)
downloadframeworks_base-eac4be7ef28a9dfba9e6cc6d0501b4bd2146041a.zip
frameworks_base-eac4be7ef28a9dfba9e6cc6d0501b4bd2146041a.tar.gz
frameworks_base-eac4be7ef28a9dfba9e6cc6d0501b4bd2146041a.tar.bz2
am 4fa27f31: am 80a90efc: Merge "Fix ring volume issue by addressing focus regression in keyguard." into jb-mr1.1-dev
* commit '4fa27f314038620fd3c50170d2f8caebeb6005bb': Fix ring volume issue by addressing focus regression in keyguard.
Diffstat (limited to 'policy/src')
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java7
-rw-r--r--policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java1
2 files changed, 8 insertions, 0 deletions
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
index 8502d78..94cd0b5 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
@@ -286,6 +286,11 @@ public class KeyguardHostView extends KeyguardViewBase {
showPrimarySecurityScreen(false);
updateSecurityViews();
+
+ // Make sure at least this view is focusable in case nothing below it is. Otherwise,
+ // requestFocus() on this view will fail and allow events, such as volume keys, to be
+ // handled by the fallback handler. See bug 7546960 for details.
+ setFocusableInTouchMode(true);
}
private boolean shouldEnableAddWidget() {
@@ -881,6 +886,7 @@ public class KeyguardHostView extends KeyguardViewBase {
if (mViewStateManager != null) {
mViewStateManager.showUsabilityHints();
}
+ requestFocus();
}
@Override
@@ -900,6 +906,7 @@ public class KeyguardHostView extends KeyguardViewBase {
if (cameraPage != null) {
cameraPage.onScreenTurnedOff();
}
+ clearFocus();
}
public void clearAppWidgetToShow() {
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java
index efd09e0..dac852a 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardViewManager.java
@@ -216,6 +216,7 @@ public class KeyguardViewManager {
if (force || mKeyguardView == null) {
inflateKeyguardView(options);
+ mKeyguardView.requestFocus();
}
updateUserActivityTimeoutInWindowLayoutParams();
mViewManager.updateViewLayout(mKeyguardHost, mWindowLayoutParams);