xkb: use dixAddAtom()

Use the new helper for creating atoms on demand.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
This commit is contained in:
Enrico Weigelt, metux IT consult
2025-07-22 15:20:32 +02:00
committed by Enrico Weigelt
parent 39ef9586be
commit 48f8aad89b
3 changed files with 59 additions and 63 deletions

View File

@@ -32,6 +32,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <X11/keysym.h>
#include <X11/extensions/XI.h>
#include "dix/dix_priv.h"
#include "xkb/xkbsrv_priv.h"
#include "inputstr.h"
@@ -90,26 +91,24 @@ static char doesPitch = 1;
#define STICKY_UNLOCK "AX_StickyUnlock"
#define BOUNCE_REJECT "AX_BounceKeyReject"
#define MAKE_ATOM(a) MakeAtom(a,sizeof(a)-1,TRUE)
static void
_XkbDDXBeepInitAtoms(void)
{
featureOn = MAKE_ATOM(FEATURE_ON);
featureOff = MAKE_ATOM(FEATURE_OFF);
featureChange = MAKE_ATOM(FEATURE_CHANGE);
ledOn = MAKE_ATOM(LED_ON);
ledOff = MAKE_ATOM(LED_OFF);
ledChange = MAKE_ATOM(LED_CHANGE);
slowWarn = MAKE_ATOM(SLOW_WARN);
slowPress = MAKE_ATOM(SLOW_PRESS);
slowReject = MAKE_ATOM(SLOW_REJECT);
slowAccept = MAKE_ATOM(SLOW_ACCEPT);
slowRelease = MAKE_ATOM(SLOW_RELEASE);
stickyLatch = MAKE_ATOM(STICKY_LATCH);
stickyLock = MAKE_ATOM(STICKY_LOCK);
stickyUnlock = MAKE_ATOM(STICKY_UNLOCK);
bounceReject = MAKE_ATOM(BOUNCE_REJECT);
featureOn = dixAddAtom(FEATURE_ON);
featureOff = dixAddAtom(FEATURE_OFF);
featureChange = dixAddAtom(FEATURE_CHANGE);
ledOn = dixAddAtom(LED_ON);
ledOff = dixAddAtom(LED_OFF);
ledChange = dixAddAtom(LED_CHANGE);
slowWarn = dixAddAtom(SLOW_WARN);
slowPress = dixAddAtom(SLOW_PRESS);
slowReject = dixAddAtom(SLOW_REJECT);
slowAccept = dixAddAtom(SLOW_ACCEPT);
slowRelease = dixAddAtom(SLOW_RELEASE);
stickyLatch = dixAddAtom(STICKY_LATCH);
stickyLock = dixAddAtom(STICKY_LOCK);
stickyUnlock = dixAddAtom(STICKY_UNLOCK);
bounceReject = dixAddAtom(BOUNCE_REJECT);
return;
}

View File

@@ -1,13 +1,12 @@
/* This file generated automatically by xkbcomp */
/* DO NOT EDIT */
#ifdef HAVE_DIX_CONFIG_H
#include <dix-config.h>
#endif
#include "dix/dix_priv.h"
#ifndef DEFAULT_H
#define DEFAULT_H 1
#define GET_ATOM(d,s) MakeAtom(s,strlen(s),1)
#define DPYTYPE char *
#define NUM_KEYS 1
@@ -136,33 +135,33 @@ static XkbKeyTypeRec dflt_types[] = {
static void
initTypeNames(DPYTYPE dpy)
{
dflt_types[0].name = GET_ATOM(dpy, "ONE_LEVEL");
lnames_ONE_LEVEL[0] = GET_ATOM(dpy, "Any");
dflt_types[1].name = GET_ATOM(dpy, "TWO_LEVEL");
lnames_TWO_LEVEL[0] = GET_ATOM(dpy, "Base");
lnames_TWO_LEVEL[1] = GET_ATOM(dpy, "Shift");
dflt_types[2].name = GET_ATOM(dpy, "ALPHABETIC");
lnames_ALPHABETIC[0] = GET_ATOM(dpy, "Base");
lnames_ALPHABETIC[1] = GET_ATOM(dpy, "Caps");
dflt_types[3].name = GET_ATOM(dpy, "KEYPAD");
lnames_KEYPAD[0] = GET_ATOM(dpy, "Base");
lnames_KEYPAD[1] = GET_ATOM(dpy, "Number");
dflt_types[4].name = GET_ATOM(dpy, "PC_BREAK");
lnames_PC_BREAK[0] = GET_ATOM(dpy, "Base");
lnames_PC_BREAK[1] = GET_ATOM(dpy, "Control");
dflt_types[5].name = GET_ATOM(dpy, "PC_SYSRQ");
lnames_PC_SYSRQ[0] = GET_ATOM(dpy, "Base");
lnames_PC_SYSRQ[1] = GET_ATOM(dpy, "Alt");
dflt_types[6].name = GET_ATOM(dpy, "CTRL+ALT");
lnames_CTRL_ALT[0] = GET_ATOM(dpy, "Base");
lnames_CTRL_ALT[1] = GET_ATOM(dpy, "Ctrl+Alt");
dflt_types[7].name = GET_ATOM(dpy, "THREE_LEVEL");
lnames_THREE_LEVEL[0] = GET_ATOM(dpy, "Base");
lnames_THREE_LEVEL[1] = GET_ATOM(dpy, "Shift");
lnames_THREE_LEVEL[2] = GET_ATOM(dpy, "Level3");
dflt_types[8].name = GET_ATOM(dpy, "SHIFT+ALT");
lnames_SHIFT_ALT[0] = GET_ATOM(dpy, "Base");
lnames_SHIFT_ALT[1] = GET_ATOM(dpy, "Shift+Alt");
dflt_types[0].name = dixAddAtom("ONE_LEVEL");
lnames_ONE_LEVEL[0] = dixAddAtom("Any");
dflt_types[1].name = dixAddAtom("TWO_LEVEL");
lnames_TWO_LEVEL[0] = dixAddAtom("Base");
lnames_TWO_LEVEL[1] = dixAddAtom("Shift");
dflt_types[2].name = dixAddAtom("ALPHABETIC");
lnames_ALPHABETIC[0] = dixAddAtom("Base");
lnames_ALPHABETIC[1] = dixAddAtom("Caps");
dflt_types[3].name = dixAddAtom("KEYPAD");
lnames_KEYPAD[0] = dixAddAtom("Base");
lnames_KEYPAD[1] = dixAddAtom("Number");
dflt_types[4].name = dixAddAtom("PC_BREAK");
lnames_PC_BREAK[0] = dixAddAtom("Base");
lnames_PC_BREAK[1] = dixAddAtom("Control");
dflt_types[5].name = dixAddAtom("PC_SYSRQ");
lnames_PC_SYSRQ[0] = dixAddAtom("Base");
lnames_PC_SYSRQ[1] = dixAddAtom("Alt");
dflt_types[6].name = dixAddAtom("CTRL+ALT");
lnames_CTRL_ALT[0] = dixAddAtom("Base");
lnames_CTRL_ALT[1] = dixAddAtom("Ctrl+Alt");
dflt_types[7].name = dixAddAtom("THREE_LEVEL");
lnames_THREE_LEVEL[0] = dixAddAtom("Base");
lnames_THREE_LEVEL[1] = dixAddAtom("Shift");
lnames_THREE_LEVEL[2] = dixAddAtom("Level3");
dflt_types[8].name = dixAddAtom("SHIFT+ALT");
lnames_SHIFT_ALT[0] = dixAddAtom("Base");
lnames_SHIFT_ALT[1] = dixAddAtom("Shift+Alt");
}
/* compat name is "default" */
@@ -461,11 +460,11 @@ static XkbCompatMapRec compatMap = {
static void
initIndicatorNames(DPYTYPE dpy, XkbDescPtr xkb)
{
xkb->names->indicators[0] = GET_ATOM(dpy, "Caps Lock");
xkb->names->indicators[1] = GET_ATOM(dpy, "Num Lock");
xkb->names->indicators[2] = GET_ATOM(dpy, "Shift Lock");
xkb->names->indicators[3] = GET_ATOM(dpy, "Mouse Keys");
xkb->names->indicators[4] = GET_ATOM(dpy, "Scroll Lock");
xkb->names->indicators[5] = GET_ATOM(dpy, "Group 2");
xkb->names->indicators[0] = dixAddAtom("Caps Lock");
xkb->names->indicators[1] = dixAddAtom("Num Lock");
xkb->names->indicators[2] = dixAddAtom("Shift Lock");
xkb->names->indicators[3] = dixAddAtom("Mouse Keys");
xkb->names->indicators[4] = dixAddAtom("Scroll Lock");
xkb->names->indicators[5] = dixAddAtom("Group 2");
}
#endif /* DEFAULT_H */

View File

@@ -53,8 +53,6 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#define _XKB_RF_NAMES_PROP_ATOM "_XKB_RULES_NAMES"
#define CREATE_ATOM(s) MakeAtom(s,sizeof(s)-1,1)
#if defined(__alpha) || defined(__alpha__)
#define LED_COMPOSE 2
#define LED_CAPS 3
@@ -387,7 +385,7 @@ XkbInitNames(XkbSrvInfoPtr xkbi)
xkb = xkbi->desc;
if ((rtrn = XkbAllocNames(xkb, XkbAllNamesMask, 0, 0)) != Success)
return rtrn;
unknown = CREATE_ATOM("unknown");
unknown = dixAddAtom("unknown");
names = xkb->names;
if (names->keycodes == None)
names->keycodes = unknown;
@@ -403,25 +401,25 @@ XkbInitNames(XkbSrvInfoPtr xkbi)
names->compat = unknown;
if (!(xkb->defined & XkmVirtualModsMask)) {
if (names->vmods[vmod_NumLock] == None)
names->vmods[vmod_NumLock] = CREATE_ATOM("NumLock");
names->vmods[vmod_NumLock] = dixAddAtom("NumLock");
if (names->vmods[vmod_Alt] == None)
names->vmods[vmod_Alt] = CREATE_ATOM("Alt");
names->vmods[vmod_Alt] = dixAddAtom("Alt");
if (names->vmods[vmod_AltGr] == None)
names->vmods[vmod_AltGr] = CREATE_ATOM("ModeSwitch");
names->vmods[vmod_AltGr] = dixAddAtom("ModeSwitch");
}
if (!(xkb->defined & XkmIndicatorsMask) ||
!(xkb->defined & XkmGeometryMask)) {
initIndicatorNames(NULL, xkb);
if (names->indicators[LED_CAPS - 1] == None)
names->indicators[LED_CAPS - 1] = CREATE_ATOM("Caps Lock");
names->indicators[LED_CAPS - 1] = dixAddAtom("Caps Lock");
if (names->indicators[LED_NUM - 1] == None)
names->indicators[LED_NUM - 1] = CREATE_ATOM("Num Lock");
names->indicators[LED_NUM - 1] = dixAddAtom("Num Lock");
if (names->indicators[LED_SCROLL - 1] == None)
names->indicators[LED_SCROLL - 1] = CREATE_ATOM("Scroll Lock");
names->indicators[LED_SCROLL - 1] = dixAddAtom("Scroll Lock");
#ifdef LED_COMPOSE
if (names->indicators[LED_COMPOSE - 1] == None)
names->indicators[LED_COMPOSE - 1] = CREATE_ATOM("Compose");
names->indicators[LED_COMPOSE - 1] = dixAddAtom("Compose");
#endif
}