Application gets left-bracket keypress when window is clicked

Discussion in 'Windows Virtual Machine' started by asfarley, May 30, 2017.

  1. asfarley

    asfarley Bit poster

    Messages:
    8
    I'm running Windows 10 Home as a guest on Parallels Desktop Lite. Inside Windows, I'm running a terminal application (Tera Term VT). If TeraTerm has focus and I click on a different application window, the TeraTerm window indicates that it received a '(' keypress. The same thing happens if a different window is initially selected and then I click on the TeraTerm window.

    I do not see this behavior when running Windows natively; TeraTerm only receives keypresses generated intentionally.

    This issue seems to occur more frequently if TeraTerm and the other application are running on separate monitors. I've noticed that the mouse cursor changes from white (Windows has focus) to black (OSX has focus) when the cursor crosses monitor boundaries, so I suspect this issue is related to what happens when OSX and Windows are swapping focus and simultaneously selecting a new application window.

    Has anyone else seen this kind of behavior? Strangely, I don't see a ( character appear in any other applications; TeraTerm is the only one where this shows up.
     
  2. asfarley

    asfarley Bit poster

    Messages:
    8
    Just adding to this: it's not necessarily a left-bracket character, I was mistaken about that. But the terminal application is definitely getting some unexpected key-presses when I switch between monitors in Parallels.
     
  3. asfarley

    asfarley Bit poster

    Messages:
    8
    Following up on this. This behavior is extremely annoying for my situation, and very consistent/easy to reproduce.

    Install TeraTerm in Win10 guest. Attach a USB-serial cable. Set TeraTerm to local echo so you can see any characters which are sent to the application (Setup->Terminal->Check 'Local Echo' box).

    I can see that changing monitors (causing MacOS to grab focus) and then clicking on TeraTerm causes TeraTerm to receive the following characters:
    PPOPPPOPPP

    This definitely doesn't happen on a native Win10 machine.
     
  4. asfarley

    asfarley Bit poster

    Messages:
    8
    Hi, just bumping this issue - I'm still running into this, in both TeraTerm and RealTerm. So I think it's pretty clear that this isn't isolated to a single application; both TeraTerm and RealTerm don't have this issue on a non-Parallels version of Windows.

    Can someone at Parallels confirm that this is a bug? I suspect it's related to the details of when and how the mouse-coordinates are sent to an application.
     
  5. DanielK29

    DanielK29 Bit poster

    Messages:
    1
    I have this exact same issue. The characters show up as "^[OP^[OP" when returning focus from a Mac application running natively to the TeraTerm application running in a Parallels VM in Windows 10.

    My Parallels version is
    Version 16.1.1 (49141)

    Has anyone ever figured this one out? I can confirm it is very annoying.
     
  6. JohnL46

    JohnL46 Bit poster

    Messages:
    1
    Yes, this is VERY annoying- after a LOT of digging I figured out what is going on and have a "fix"..

    For whatever reason, when switching focus back to TeraTerm the "numlock" key is being "pressed". In TeraTerm this is mapped to the VT100 "PF1" key, which is the sequence ESC-OP, which is the noise we are seeing in the serial stream. Understanding all of this is a deep web of key code handling though three or four generations of computing... (VT100 vs IBM PC vs Apple vs USB, argh- its a real mess...)

    I "fixed" it by changing the keymap for TeraTerm. This is in a file named KEYBOARD.CNF (in the TeraTerm application directory) and search down to the line that says "PF1=325" (it was line 59 in my file). The 325 is the "numlock" key (its the "clear" key on the 10-key pad on the full apple keyboard). I changed the 325 to 106, which is F19 - a key I never, ever use. (There is a companion program included with TeraTerm called keycodes.exe that you can use to see the key code for a given key.)

    An ACTUAL fix would be to figure out why numlock is being "pressed" when the window focus changes in the first place....
     

Share This Page