add cancellistener

Signed-off-by: Grarak <williye97@gmail.com>