Fix component's listener collecting bug