Unlock delay

The x3270 family has an often-misunderstood feature called unlock delay. In simplest terms, this means that when the host unlocks the keyboard, the emulator waits an additional 350ms before actually allowing new keystrokes to be processed.

The reason for this is that some hosts unlock the keyboard before they are actually finished processing the last AID (the last command). The emulator has no other way of knowing that the command is finished, and that it is now safe to accept more keyboard input. Humans accommodate this by watching screen updates; they don't type another command until the screen looks "done". Scripts and macros, however, may not be sophisticated enough to do this kind of analysis. The 350ms delay is there to give the host a chance to actually finish processing.

Unlock delay is controlled by two resources: unlockDelay and unlockDelayMs. unlockDelay controls whether unlock delay happens at all. unlockDelayMs controls how long the delay is.

The unlockDelay resource presently defaults to false in all of the emulators. It had defaulted to true in different versions at different points in time.