fire after event callback even if source state is equal to destination state

created this PR for you to check, it fires only the after event callback