Skip to main content

watch_keyboard

Function watch_keyboard 

Source
pub(crate) fn watch_keyboard(
    connection: &Connection,
    queue: &mut EventQueue<Probe>,
    probe: &mut Probe,
    seconds: u64,
) -> Result<(), String>
Expand description

Map a window, take focus, and report every layout change that arrives.

WL_PROBE_KEYBOARD=<seconds>. The compositor switching its own active layout is one claim and the client being told is a different one, and only the second matters – a layout that changed and was not announced is a keyboard that types the wrong letters. A client only hears about it through wl_keyboard.modifiers, and only while it has focus, so this maps a window first and holds it.