On-screen keyboard delay

When an external keyboard (e.g. Bluetooth keyboard or barcode scanner which connects as an HID keyboard) is used with a device, the on-screen keyboard is hidden. When the screen is touched, there is a hard-coded delay period of 60 seconds before the on-screen keyboard reappears. Typically, the user selects an input field on the screen and then uses the external keyboard/barcode scanner to enter the data.

This customization enables an OEM to change that delay period. The delay value is read on boot-up and cannot be changed during runtime. The optional customization specifies the delay in seconds with a default value of 60. If the value is set to 0, then the on-screen keyboard is not hidden.

Constraints: ImageTimeOnly


  1. Create a customization answer file using the contents shown in the following code sample.

    <?xml version="1.0" encoding="utf-8" ?>
    <ImageCustomizations xmlns="http://schemas.microsoft.com/embedded/2004/10/ImageUpdate"
         Description="Use to configure the setting for the delay in showing the on-screen keyboard when an external keyboard is connected"
                 <Setting Name="HWKeyboardActivityInterval" Value="" />
                 <RegistrySource Type="REG_DWORD" Path="HKEY_LOCAL_MACHINE\Software\Microsoft\Input\HWKeyboardActivityInterval" />
  2. Specify an Owner.

  3. Set the value to the required delay between when a user touches the screen of the device, and when the on-screen keyboard appears, in seconds.

Testing steps

  1. Flash the build containing this customization to a device
  2. Connect an external Bluetooth keyboard to the device
  3. Select the input field on the screen via the on-screen keyboard
    1. Type abc via the on-screen keyboard.
    2. Type dce via the external keyboard. The on-screen keyboard shrinks from the screen.
    3. Touch the screen again and confirm the on-screen keyboard remains hidden until the specified delay expires.

Prepare for Windows mobile development

Customization answer file overview