using on_modified event instead of more frequent on_selection_modified event