new listerner injection