From 80cb9bcfc0088e268b310780d64b72f2df180ccd Mon Sep 17 00:00:00 2001 From: Jim Miller Date: Wed, 13 Nov 2013 16:44:39 -0800 Subject: Don't set up external displays from binder thread This fixes a bug where keyguard was attempting to set up external presentation displays from the binder thread instead of the UI thread. Bad dog. Fixes bug 11676486 Change-Id: Iadbe485691acc56a41b23219fe399f7eda40cb7c --- .../Keyguard/src/com/android/keyguard/KeyguardViewMediator.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java b/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java index 49982ea..0283f41 100644 --- a/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java +++ b/packages/Keyguard/src/com/android/keyguard/KeyguardViewMediator.java @@ -614,7 +614,14 @@ public class KeyguardViewMediator { } } KeyguardUpdateMonitor.getInstance(mContext).dispatchScreenTurndOff(why); - mKeyguardDisplayManager.show(); + + // This needs to run on the UI thread + mHandler.post(new Runnable() { + @Override + public void run() { + mKeyguardDisplayManager.show(); + } + }); } private void doKeyguardLaterLocked() { -- cgit v1.1