fix event listen