adding progress listener