adjust listener return value behavior