Detecting when the Shift state "changed" wasn't working because of a self-assignment. Since cursor motion always refreshes, this isn't an especially noticeable an issue.
Detecting when the Shift state "changed" wasn't working because of a self-assignment. Since cursor motion always refreshes, this isn't an especially noticeable an issue.