If a tool does not inherit fromIUVToolSupportsSelection, then selection will automatically be cleared before the tool invocation via an undoable transaction, to avoid a state where the selection refers to invalid items after tool completion. If a tool does inherit fromIUVToolSupportsSelection, then the UV editor will not clear the selection before invocation, allowing the tool to use it. However, the tool is expected to properly deal with selection itself and avoid an invalid state (including avoiding incorrect undo/redo selection event ordering.