Opened 9 months ago

Closed 9 months ago

#21611 closed enhancement (fixed)

libxkbcommon-1.10.0

Reported by: Bruce Dubbs Owned by: Bruce Dubbs
Priority: normal Milestone: 12.4
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New minor version.

Change History (3)

comment:1 by Bruce Dubbs, 9 months ago

Owner: changed from blfs-book to Bruce Dubbs
Status: newassigned

comment:2 by Bruce Dubbs, 9 months ago

libxkbcommon [1.10.0] – 2025-05-21

API

Breaking changes

  • *Modifiers masks* handling has been refactored to properly handle virtual modifiers. Modifier masks are now always considered as an *opaque encoding* of the modifiers state:
    • Modifiers masks should not be interpreted by other means than the provided API. In particular, one should not assume that modifiers masks always denote the modifiers *indexes* of the keymap.
    • It enables using virtual modifiers with arbitrary mappings. E.g. one can now reliably create virtual modifiers without relying on the legacy X11 mechanism, that requires a careful use of keys’ real and virtual modmaps.
    • It enables *interoperability* with further implementations of XKB.
  • Changed *Compose* behavior so that sequences defined later always override ones defined earlier, even if the new sequence is shorter.

Deprecated

  • Server applications using xkb_state_update_mask() should migrate to using xkb_state_update_latched_locked() instead, for proper handling of the keyboard state.
  • The following modifiers names in xkbcommon/xkbcommon-names.h are now deprecated and will be removed in a future version:
    • XKB_MOD_NAME_ALT: use XKB_VMOD_NAME_ALT instead.
    • XKB_MOD_NAME_LOGO: use XKB_VMOD_NAME_SUPER instead.
    • XKB_MOD_NAME_NUM: use XKB_VMOD_NAME_NUM instead.

New

  • Added xkb_state_update_latched_locked() to update the keyboard state to change the latched and locked state of the modifiers and layout.

This entry point is intended for *server* applications and should not be used by *client* applications. This can be use for e.g. a GUI layout switcher.

  • Added xkb_keymap_mod_get_mask() to query the mapping of a modifier.
  • Added VoidAction() action to match the keysym pair NoSymbol/VoidSymbol. It enables erasing a previous action and breaks latches.

This is a libxkbcommon extension. When serializing it will be converted to LockControls(controls=none,affect=neither) for backward compatibility.

  • Improved syntax errors in XKB files to include the expected/got tokens.

Fixes

  • *Compose*: fixed sequence not fully overriden if the new sequence has no keysym or string.

Tools

New

  • xkbcli-compile-keymap: Added option --modmaps that prints modifiers mappings. This is similar to the legacy xmodmap -pm.

Build system

Breaking changes

  • Removed support for byacc -- use bison instead.

comment:3 by Bruce Dubbs, 9 months ago

Resolution: fixed
Status: assignedclosed

Fixed at commits

99c5953dac Update to glib-2.84.2.
fd51e5c3fe Update to libnvme-1.14.
2f2190ea61 Update to valgrind-3.25.1.
c9dd9469d7 Update to mupdf-1.26.1.
d93fa79f93 Update to libxkbcommon-1.10.0.
Note: See TracTickets for help on using tickets.