While RMB was canceling, the check for Escape was overridden by the modal keymap, causing Escape to confirm. Resolve by: - Removing Escape binding from the modal keymap, rely on hard coded check as Escape to cancel is an assumption made in many places. - Move RMB hard-coded check into the modal keymap since it's non-default keymaps may use mouse buttons differently.