app listener update