- viewports: support moving both separator axes at the same time when clicking the viewport crossing.
- MainWindow: refactor code so input handling is now in a separate file.