diff --git a/src/com/android/launcher3/SecondaryDropTarget.java b/src/com/android/launcher3/SecondaryDropTarget.java index 114c49118f..184113413b 100644 --- a/src/com/android/launcher3/SecondaryDropTarget.java +++ b/src/com/android/launcher3/SecondaryDropTarget.java @@ -67,7 +67,6 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList super(context, attrs, defStyle); mCacheExpireAlarm = new Alarm(); - mCacheExpireAlarm.setOnAlarmListener(this); } @Override @@ -75,6 +74,7 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList super.onAttachedToWindow(); if (mHadPendingAlarm) { mCacheExpireAlarm.setAlarm(CACHE_EXPIRE_TIMEOUT); + mCacheExpireAlarm.setOnAlarmListener(this); mHadPendingAlarm = false; } } @@ -84,6 +84,7 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList super.onDetachedFromWindow(); if (mCacheExpireAlarm.alarmPending()) { mCacheExpireAlarm.cancelAlarm(); + mCacheExpireAlarm.setOnAlarmListener(null); mHadPendingAlarm = true; } } @@ -168,6 +169,7 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList } // Cancel any pending alarm and set cache expiry after some time mCacheExpireAlarm.setAlarm(CACHE_EXPIRE_TIMEOUT); + mCacheExpireAlarm.setOnAlarmListener(this); if (uninstallDisabled) { return false; }