Index of Section 3 Manual Pages

Interix / SUAXkbSetServerInternalMods.3Interix / SUA

XkbSetServerInternalMods(3XKB FUNCTIONXkbSetServerInternalMods(3)



NAME
       XkbSetServerInternalMods  -  Sets  the  modifiers that are
       consumed by the server before events are delivered to  the
       client

SYNOPSIS
       Bool   XkbSetServerInternalMods  (  display,  device_spec,
       affect_real, real_values, affect_virtual, virtual_values )
             Display *display;
             unsigned int device_spec;
             unsigned int affect_real;
             unsigned int real_values;
             unsigned int affect_virtual;
             unsigned int virtual_values;

ARGUMENTS
       - display
              connection to the X server

       - device_spec
              device ID, or XkbUseCoreKbd

       - affect_real
              mask of real modifiers affected by this call

       - real_values
              values   for   affected   real  modifiers  (1=>set,
              0=>unset)

       - affect_virtual
              mask of virtual modifiers affected by this call

       - virtual_values
              values  for  affected  virtual  modifiers  (1=>set,
              0=>unset)

DESCRIPTION
       The  core protocol does not provide any means to prevent a
       modifier from being reported in events  sent  to  clients;
       Xkb, however makes this possible via the InternalMods con-
       trol. It specifies modifiers that should  be  consumed  by
       the  server  and  not  reported  to clients. When a key is
       pressed and a modifier that has its bit set in the  Inter-
       nalMods control is reported to the server, the server uses
       the modifier when determining the actions to apply for the
       key. The server then clears the bit, so it is not actually
       reported to the client. In addition,  modifiers  specified
       in  the  InternalMods  control  are  not used to determine
       grabs and are not used to calculate core protocol compati-
       bility state.

       Manipulate the InternalMods control via the internal field
       in the XkbControlsRec structure, using XkbSetControls  and
       XkbGetControls.    Alternatively,  use  XkbSetServerInter-
       nalMods.

       XkbSetServerInternalMods sends a request to the server  to
       change  the  internal  modifiers  consumed  by the server.
       affect_real and real_values are  masks  of  real  modifier
       bits  indicating  which real modifiers are to be added and
       removed from the server's internal modifiers control. Mod-
       ifiers  selected  by  both affect_real and real_values are
       added to the server's internal  modifiers  control;  those
       selected by affect_real but not by real_values are removed
       from the server's internal modifiers  mask.  Valid  values
       for affect_real and real_values consist of any combination
       of the eight core modifier bits: ShiftMask, LockMask, Con-
       trolMask,  Mod1Mask  -  Mod5Mask.  affect_virtual and vir-
       tual_values are masks of virtual modifier bits  indicating
       which  virtual  modifiers are to be added and removed from
       the  server's  internal   modifiers   control.   Modifiers
       selected  by  both  affect_virtual  and virtual_values are
       added to the server's internal  modifiers  control;  those
       selected  by  affect_virtual but not by virtual_values are
       removed from the server's internal modifiers control.  See
       below for a discussion of virtual modifier masks to use in
       affect_virtual  and   virtual_values.   XkbSetServerInter-
       nalMods  does  not  wait  for  a reply from the server. It
       returns True if the request was sent and False  otherwise.

       Virtual  modifiers  are  named  by converting their string
       name to an X Atom and storing the Atom in the  names.vmods
       array  in  an XkbDescRec structure. The position of a name
       Atom in the names.vmods array  defines  the  bit  position
       used  to represent the virtual modifier and also the index
       used  when  accessing  virtual  modifier  information   in
       arrays:  the  name  in  the  i-th  (0  relative)  entry of
       names.vmods is the i-th virtual modifier,  represented  by
       the  mask (1<SetNames(3)
       XkbAllComponentsMask   All Fields         (0x7f)

       SEE ALSO
              XkbGetControls(3), XkbGetNames(3), XkbSetControls(3), Xkb-



X Version 11               libX11 1.1.XkbSetServerInternalMods(3)

Interix / SUAHosted at SUA Community for Interix, SUA and SFUInterix / SUA