Fix remaining cause of a leak in SecondaryDropTarget

Bug: 139137636
Change-Id: Ib94c5804616910ee562d63c022579042bb1727f5
This commit is contained in:
vadimt
2020-02-28 18:02:30 -08:00
parent 64a932ed2a
commit 908e9bb1cc

View File

@@ -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;
}