On some computers I use, vncviewer treats alt+tab as remote machine input and alternates between applications on the server, on others, alt+tab alternates between apps on the local computer and effectively disrupts vncviewer input so that input then goes to the terminal. This also makes it possible to kill vncviewer using ctrl+c (which is normally how I exit vncviewer). I realized that I use both ctrl and alt in this process and it is my belief that those key presses aren't being registered as released. Though I cannot easily duplicate the exact circumstances that cause this on a day-to-day basis, I CAN duplicate this problem using more contrived methods:
1. Connect to server from remote computer.
2. Press and hold ctrl or another key on the remote computer.
3. While holding the key, forcibly terminate the connection (such as unplugging the network cable).
This will cause the server to believe the the key is still being pressed. If you then try to input anything through server, or by reconnecting client, you will find that it still thinks that key is pressed until that key is explicitly pressed on the keyboard and the system registers its release.
On some computers I use, vncviewer treats alt+tab as remote machine input and alternates between applications on the server, on others, alt+tab alternates between apps on the local computer and effectively disrupts vncviewer input so that input then goes to the terminal. This also makes it possible to kill vncviewer using ctrl+c (which is normally how I exit vncviewer). I realized that I use both ctrl and alt in this process and it is my belief that those key presses aren't being registered as released. Though I cannot easily duplicate the exact circumstances that cause this on a day-to-day basis, I CAN duplicate this problem using more contrived methods:
1. Connect to server from remote computer.
2. Press and hold ctrl or another key on the remote computer.
3. While holding the key, forcibly terminate the connection (such as unplugging the network cable).
This will cause the server to believe the the key is still being pressed. If you then try to input anything through server, or by reconnecting client, you will find that it still thinks that key is pressed until that key is explicitly pressed on the keyboard and the system registers its release.
Hope this helps.