Merge "Fix leak when keylock is recreated."

This commit is contained in:
Dianne Hackborn
2011-02-28 17:54:54 -08:00
committed by Android Code Review

View File

@@ -163,6 +163,12 @@ public class LockPatternKeyguardView extends KeyguardViewBase {
*/
private Configuration mConfiguration;
private Runnable mRecreateRunnable = new Runnable() {
public void run() {
recreateScreens();
}
};
/**
* @return Whether we are stuck on the lock screen because the sim is
* missing.
@@ -244,7 +250,8 @@ public class LockPatternKeyguardView extends KeyguardViewBase {
public void recreateMe(Configuration config) {
mConfiguration = config;
recreateScreens();
removeCallbacks(mRecreateRunnable);
post(mRecreateRunnable);
}
public void takeEmergencyCallAction() {
@@ -462,6 +469,12 @@ public class LockPatternKeyguardView extends KeyguardViewBase {
updateScreen(mMode);
}
@Override
protected void onDetachedFromWindow() {
removeCallbacks(mRecreateRunnable);
super.onDetachedFromWindow();
}
@Override
public void wakeWhenReadyTq(int keyCode) {
if (DEBUG) Log.d(TAG, "onWakeKey");