During processing, if the set of selected files with `n` files change (usually in form of removal of one selected item that is moved to a different section, either album or cluster), a number `n-1` of checks and updates are executed. These checks are caused by MainPanel._view_update_selection, as detailed in #1543 (comment) .
The already existing `_ignore_selection_changes`, that skips the `_view_update_selection` check, is used to mitigate that issue, ignoring selection changes during moves.
The other mitigation reduces explicit UI updates by removing `if self.isSelected(): [...]` code blocks of all `update()` calls of every class in `itemviews.py`. This delays screen updates of individual changes, but reduces the amount of calls to draw, which speed up operations such as saving.
The overall results are faster moves (clustering, tagging, lookup, manual move) and no slowdown during operations (move, save, etc) due to selecting files.