handle middle and ctrl-click