Improve firing of 'text:selection:changed'