{"record":{"id":"609dd061bce86dc4","repo":"slint-ui/slint","slug":"error-compiling-keymap","errorCode":null,"errorMessage":"Error compiling keymap","messagePattern":"Error compiling keymap","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"internal/backends/linuxkms/calloop_backend/input.rs","lineNumber":328,"sourceCode":"                        let pos = take_touch_pos(&mut self.last_touch_positions, slot);\n                        window.dispatch_event(WindowEvent::internal(InternalEvent::Touch {\n                            id: slot,\n                            position: logical_point_from_api(pos),\n                            phase: i_slint_core::input::TouchPhase::Cancelled,\n                        }));\n                    }\n                    _ => {}\n                },\n                input::Event::Keyboard(input::event::KeyboardEvent::Key(key_event)) => {\n                    // On Linux key codes have a fixed offset of 8: https://docs.rs/xkbcommon/0.6.0/xkbcommon/xkb/struct.Keycode.html\n                    let key_code = xkb::Keycode::new(key_event.key() + 8);\n                    let state = key_event.key_state();\n\n                    let xkb_key_state = self.keystate.get_or_insert_with(|| {\n                        let xkb_context = xkb::Context::new(xkb::CONTEXT_NO_FLAGS);\n                        let keymap =\n                            xkb::Keymap::new_from_names(&xkb_context, \"\", \"\", \"\", \"\", None, 0)\n                                .expect(\"Error compiling keymap\");\n                        xkb::State::new(&keymap)\n                    });\n\n                    let sym = xkb_key_state.key_get_one_sym(key_code);\n\n                    xkb_key_state.update_key(\n                        key_code,\n                        match state {\n                            input::event::tablet_pad::KeyState::Pressed => xkb::KeyDirection::Down,\n                            input::event::tablet_pad::KeyState::Released => xkb::KeyDirection::Up,\n                        },\n                    );\n\n                    let control = xkb_key_state\n                        .mod_name_is_active(xkb::MOD_NAME_CTRL, xkb::STATE_MODS_EFFECTIVE);\n                    let alt = xkb_key_state\n                        .mod_name_is_active(xkb::MOD_NAME_ALT, xkb::STATE_MODS_EFFECTIVE);\n","sourceCodeStart":310,"sourceCodeEnd":346,"githubUrl":"https://github.com/slint-ui/slint/blob/3fd8f2ec03c2aa8a95d5f4b9daa299c7b8bf4016/internal/backends/linuxkms/calloop_backend/input.rs#L310-L346","documentation":"Error \"Error compiling keymap\" thrown in slint-ui/slint.","triggerScenarios":"Thrown at internal/backends/linuxkms/calloop_backend/input.rs:328 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check the keymap file for syntax errors.","Ensure the xkbcommon version supports the keymap features used."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"3fd8f2ec03c2aa8a95d5f4b9daa299c7b8bf4016","analyzedAt":"2026-08-19T23:23:16.610Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}