Do not fire `tool:changed` if tool already selected
Use `self` instead of closure scoped variable