convenience changed_and_ended callback