Rename Listener to DestroyListener and fix the detach-in-notify bug