Fix nav bar leak in SystemUI
- Ensure that the composition sampling listener is destroyed when the nav
bar is destroyed instead of waiting for the finalize callback. That
callback would never be made since the sampling listener has a reference
to the outer class and has a strong ref from SF, and the other class
has itself a reference to the listener.
- Always unregister the nav bar fragment from the mode change callbacks
Bug: 141473489
Test: Switch navigation modes a couple times, take hprof dump and verify
there aren't leaking classes
Change-Id: Ic389a559a3d430af495365102854d531f7d1966d
3 files changed