Details

[Home]

Issue of the Implementation # D0087

Brief

Incorrect behaviour of the interfaces for obtaining partial keyboard mapping component definitions from the server

Detailed Description

Each of the following set of the interfaces:

  1. XkbGetKeyTypes
  2. XkbGetKeySyms
  3. XkbGetKeyModifierMap
  4. XkbGetKeyActions
  5. XkbGetKeyExplicitComponents
  6. XkbGetKeyBehaviors
  7. XkbGetVirtualMods
implements a request to the server by the opcode "XkbGetMap", to obtain a partial keyboard mapping component definition from the server. As described in the "The X Keyboard Extension: Protocol Specification; Protocol Version 1.0 / Document Revision 1.0, Chapter 16 XKB Protocol Requests; 16.3.6 Querying and Changing the Keyboard Mapping" for the XkbGetMap this should be performed by setting up appropriate mask value in the "partial:KB_MAPPARTMASK" field. Currently these interfaces leave the "partial" field of the "xkbGetMapReq" filled with 0, thus the server does not return the expected values.

Problem location(s) in the standard

Linux Standard Base Desktop Specification 3.1, Chapter 6. Libraries, 6.1.1.1 Interfaces for X Windows System Interface that refers The X Keyboard Extension: Library Specification (Library Version 1.0 / Document Revision 1.1), Chapter 15 Xkb Client Keyboard Mapping, Chapter 16 Xkb Server Keyboard Mapping

Possible solutions

Modify the code to set up the correct mask values for the "partial" field, as described in "The X Keyboard Extension: Protocol Specification (Protocol Version 1.0 / Document Revision 1.0), Chapter 16 XKB Protocol Requests; 16.3.6 Querying and Changing the Keyboard Mapping; page 67".

Component

X11 R6.4 or later

Accepted

freedesktop.org Bugzilla 16159

[Home]