Prevent NotificationSwipeHelper from retaining notification

It has been observed that NotificationSwipeHelper can retain an
ExpandableNotificationRow in memory after the notification has been
dismissed. To prevent this, this change breaks the reference chain
between the NotificationSwipeHelper and the NotificationMenuRow. A weak
reference is used to refer to the NotificationMenuRow in the
NotificationSwipeHelper.

Fixes: 157506961
Bug: 161119435
Test: manual - Swipe to dismiss notifiation. Take heap dump. Verify that
NotificationMenuRow isn't retained view NotificationSwipeHelper.

Change-Id: Ibe445c31494b592f657b5ae94e4a7ee478a40070
1 file changed