! Connect a global hardware keyboard (key.connect_global_keyboard)
This function is available in versions after 20260805
Declaration
keyboard, err = key.connect_global_keyboard([properties])
Parameters
- properties
Table. Optional. Uses the same default properties and constraints as
key.connect_keyboard.
Returns
- keyboard
Hardware keyboard object. Returns
nilif the connection fails. - err String. Error message returned when the connection fails.
On failure, the two return values are nil, error.
Description
Create and connect the global hardware keyboard. Waiting for the connection may yield; other threads may run before the function returns.
- After connection, standard keyboard and keypad input from
key.press,key.down,key.up,key.send_text, andkey(...):press/down/upuses this object - Media and vendor-defined keys keep their previous behavior
- When no global hardware keyboard is connected, the existing APIs behave as before.
- A
key.downcall remains paired with its matchingkey.upeven if the connection changes between the calls, preventing duplicate input or an incorrect release - Only one global hardware keyboard may be connected at a time. Calling this function again while a connection is in progress or while a global keyboard is already connected returns a failure.
Example
local keyboard, err = key.connect_global_keyboard({
Product = "XXTouch Keyboard",
})
assert(keyboard, err)
key.press("A")
key.send_text("Hello")
local current = key.get_global_keyboard()
assert(current == keyboard)
assert(key.disconnect_global_keyboard())