xserver: Branch 'master' - 5 commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Feb 6 22:52:34 UTC 2025
hw/xfree86/sdksyms.sh | 1
include/meson.build | 1
include/xkbfile.h | 154 --------------------------------------------------
include/xkbsrv.h | 2
test/test_xkb.c | 1
xkb/XKBMisc.c | 5 +
xkb/ddxLoad.c | 2
xkb/xkb.c | 40 ++++++++++++
xkb/xkbInit.c | 1
xkb/xkbfile_priv.h | 45 ++++++++++++++
xkb/xkbfmisc.c | 45 +-------------
xkb/xkbfmisc_priv.h | 79 +++++++++++++++++++++++++
xkb/xkbout.c | 3
xkb/xkbout_priv.h | 32 ++++++++++
xkb/xkmread.c | 6 +
15 files changed, 213 insertions(+), 204 deletions(-)
New commits:
commit f8fc46cbbfa3253d24d65fc2d129f8b4b5fd76aa
Author: Enrico Weigelt, metux IT consult <info at metux.net>
Date: Fri Apr 5 17:09:31 2024 +0200
include: drop now empty xkbfile.h
This (public) file isn't used by anybody outside Xserver tree
and doesn't contain anything useful anymore, so lets drop it.
Signed-off-by: Enrico Weigelt, metux IT consult <info at metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1729>
diff --git a/hw/xfree86/sdksyms.sh b/hw/xfree86/sdksyms.sh
index 982987472..f2862b074 100755
--- a/hw/xfree86/sdksyms.sh
+++ b/hw/xfree86/sdksyms.sh
@@ -270,7 +270,6 @@ cat > sdksyms.c << EOF
#include "window.h"
#include "windowstr.h"
#include "xace.h"
-#include "xkbfile.h"
#include "xkbsrv.h"
#include "xkbstr.h"
#include "xkbrules.h"
diff --git a/include/meson.build b/include/meson.build
index ac2366519..d4ea7fe44 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -498,7 +498,6 @@ if build_xorg
'displaymode.h',
'window.h',
'windowstr.h',
- 'xkbfile.h',
'xkbsrv.h',
'xkbstr.h',
'xkbrules.h',
diff --git a/include/xkbfile.h b/include/xkbfile.h
deleted file mode 100644
index 9bc25cd94..000000000
--- a/include/xkbfile.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/************************************************************
- Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc.
-
- Permission to use, copy, modify, and distribute this
- software and its documentation for any purpose and without
- fee is hereby granted, provided that the above copyright
- notice appear in all copies and that both that copyright
- notice and this permission notice appear in supporting
- documentation, and that the name of Silicon Graphics not be
- used in advertising or publicity pertaining to distribution
- of the software without specific prior written permission.
- Silicon Graphics makes no representation about the suitability
- of this software for any purpose. It is provided "as is"
- without any express or implied warranty.
-
- SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
- SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
- GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
- DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
- OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
- THE USE OR PERFORMANCE OF THIS SOFTWARE.
-
- ********************************************************/
-
-#ifndef _XKBFILE_H_
-#define _XKBFILE_H_ 1
-
-#include "xkbstr.h"
-
-#endif /* _XKBFILE_H_ */
diff --git a/include/xkbsrv.h b/include/xkbsrv.h
index 2f291886b..ab3a40743 100644
--- a/include/xkbsrv.h
+++ b/include/xkbsrv.h
@@ -818,7 +818,7 @@ extern _X_EXPORT Bool XkbDeviceApplyKeymap(DeviceIntPtr /* dst */ ,
extern _X_EXPORT void XkbCopyControls(XkbDescPtr /* dst */ ,
XkbDescPtr /* src */ );
-#include "xkbfile.h"
+#include "xkbstr.h"
#include "xkbrules.h"
extern _X_EXPORT unsigned int XkbDDXLoadKeymapByNames(DeviceIntPtr /* keybd */ ,
diff --git a/test/test_xkb.c b/test/test_xkb.c
index 2fd9d1f36..11a0f4ce8 100644
--- a/test/test_xkb.c
+++ b/test/test_xkb.c
@@ -44,7 +44,6 @@
#include <xkbsrv.h>
#include "../xkb/xkbgeom.h"
#include <X11/extensions/XKMformat.h>
-#include "xkbfile.h"
#include <assert.h>
#include "tests-common.h"
diff --git a/xkb/xkbInit.c b/xkb/xkbInit.c
index 2819935eb..edd4de4b5 100644
--- a/xkb/xkbInit.c
+++ b/xkb/xkbInit.c
@@ -48,7 +48,6 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include "property.h"
#include "scrnintstr.h"
#include "xkbgeom.h"
-#include "xkbfile.h"
#define CREATE_ATOM(s) MakeAtom(s,sizeof(s)-1,1)
diff --git a/xkb/xkbout.c b/xkb/xkbout.c
index e1b97a56f..a8b2f1523 100644
--- a/xkb/xkbout.c
+++ b/xkb/xkbout.c
@@ -46,7 +46,6 @@
#include <xkbsrv.h>
#include "xkbgeom.h"
-#include "xkbfile.h"
#define VMOD_HIDE_VALUE 0
#define VMOD_SHOW_VALUE 1
commit 3f8a5475c917326c780f87e3f2dff11cd7d17d0f
Author: Enrico Weigelt, metux IT consult <info at metux.net>
Date: Fri Apr 5 16:46:59 2024 +0200
xkb: unexport remaining internal declarations
These are only used inside xkb/*, so no need to keep them exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info at metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1729>
diff --git a/include/xkbfile.h b/include/xkbfile.h
index 172d0c1f7..9bc25cd94 100644
--- a/include/xkbfile.h
+++ b/include/xkbfile.h
@@ -29,53 +29,4 @@
#include "xkbstr.h"
-typedef void (*XkbFileAddOnFunc) (FILE * /* file */ ,
- XkbDescPtr /* result */ ,
- Bool /* topLevel */ ,
- Bool /* showImplicit */ ,
- int /* fileSection */ ,
- void * /* priv */
- );
-
-/***====================================================================***/
-
-#define _XkbSuccess 0 /* unused */
-#define _XkbErrMissingNames 1
-#define _XkbErrMissingTypes 2
-#define _XkbErrMissingReqTypes 3
-#define _XkbErrMissingSymbols 4
-#define _XkbErrMissingVMods 5 /* unused */
-#define _XkbErrMissingIndicators 6 /* unused */
-#define _XkbErrMissingCompatMap 7
-#define _XkbErrMissingSymInterps 8 /* unused */
-#define _XkbErrMissingGeometry 9
-#define _XkbErrIllegalDoodad 10 /* unused */
-#define _XkbErrIllegalTOCType 11 /* unused */
-#define _XkbErrIllegalContents 12
-#define _XkbErrEmptyFile 13 /* unused */
-#define _XkbErrFileNotFound 14 /* unused */
-#define _XkbErrFileCannotOpen 15 /* unused */
-#define _XkbErrBadValue 16
-#define _XkbErrBadMatch 17
-#define _XkbErrBadTypeName 18
-#define _XkbErrBadTypeWidth 19
-#define _XkbErrBadFileType 20
-#define _XkbErrBadFileVersion 21
-#define _XkbErrBadFileFormat 22 /* unused */
-#define _XkbErrBadAlloc 23
-#define _XkbErrBadLength 24
-#define _XkbErrXReqFailure 25 /* unused */
-#define _XkbErrBadImplementation 26
-
-/***====================================================================***/
-
-_XFUNCPROTOBEGIN
-
-extern _X_EXPORT unsigned XkmReadFile(FILE * /* file */ ,
- unsigned /* need */ ,
- unsigned /* want */ ,
- XkbDescPtr * /* result */
- );
-
-_XFUNCPROTOEND
#endif /* _XKBFILE_H_ */
diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c
index 4446af8dc..a9a7ead59 100644
--- a/xkb/ddxLoad.c
+++ b/xkb/ddxLoad.c
@@ -40,6 +40,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include "dix/dix_priv.h"
#include "os/osdep.h"
+#include "xkb/xkbfile_priv.h"
#include "xkb/xkbfmisc_priv.h"
#include "inputstr.h"
diff --git a/xkb/xkbfile_priv.h b/xkb/xkbfile_priv.h
new file mode 100644
index 000000000..3a37b9d49
--- /dev/null
+++ b/xkb/xkbfile_priv.h
@@ -0,0 +1,45 @@
+/* SPDX-License-Identifier: MIT OR X11
+ *
+ * Copyright © 2024 Enrico Weigelt, metux IT consult <info at metux.net>
+ * Copyright © 1994 by Silicon Graphics Computer Systems, Inc.
+ */
+#ifndef _XSERVER_XKB_XKBFILE_PRIV_H
+#define _XSERVER_XKB_XKBFILE_PRIV_H
+
+#include <stdio.h>
+#include <X11/X.h>
+#include <X11/Xdefs.h>
+
+#include "xkbstr.h"
+
+/* XKB error codes */
+#define _XkbErrMissingNames 1
+#define _XkbErrMissingTypes 2
+#define _XkbErrMissingReqTypes 3
+#define _XkbErrMissingSymbols 4
+#define _XkbErrMissingCompatMap 7
+#define _XkbErrMissingGeometry 9
+#define _XkbErrIllegalContents 12
+#define _XkbErrBadValue 16
+#define _XkbErrBadMatch 17
+#define _XkbErrBadTypeName 18
+#define _XkbErrBadTypeWidth 19
+#define _XkbErrBadFileType 20
+#define _XkbErrBadFileVersion 21
+#define _XkbErrBadAlloc 23
+#define _XkbErrBadLength 24
+#define _XkbErrBadImplementation 26
+
+/*
+ * read xkm file
+ *
+ * @param file the FILE to read from
+ * @param need mask of needed elements (fails if some are missing)
+ * @param want mask of wanted elements
+ * @param result pointer to xkb descriptor to load the data into
+ * @return mask of elements missing (from need | want)
+ */
+unsigned XkmReadFile(FILE *file, unsigned need, unsigned want,
+ XkbDescPtr *result);
+
+#endif /* _XSERVER_XKB_XKBFILE_PRIV_H */
diff --git a/xkb/xkmread.c b/xkb/xkmread.c
index b40f8fc64..cdcb443ba 100644
--- a/xkb/xkmread.c
+++ b/xkb/xkmread.c
@@ -34,6 +34,7 @@
#include <X11/keysym.h>
#include <X11/extensions/XKMformat.h>
+#include "xkb/xkbfile_priv.h"
#include "xkb/xkbfmisc_priv.h"
#include "misc.h"
commit 660657a2c3a28d92d5671b44bc20de49ceacf971
Author: Enrico Weigelt, metux IT consult <info at metux.net>
Date: Fri Apr 5 16:33:44 2024 +0200
xkb: unexport functions from xkbout.c
These are only used inside xkb/*, so no need to keep them exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info at metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1729>
diff --git a/include/xkbfile.h b/include/xkbfile.h
index 317f15937..172d0c1f7 100644
--- a/include/xkbfile.h
+++ b/include/xkbfile.h
@@ -71,48 +71,6 @@ typedef void (*XkbFileAddOnFunc) (FILE * /* file */ ,
_XFUNCPROTOBEGIN
-extern _X_EXPORT Bool XkbWriteXKBKeycodes(FILE * /* file */ ,
- XkbDescPtr /* result */ ,
- Bool /* topLevel */ ,
- Bool /* showImplicit */ ,
- XkbFileAddOnFunc /* addOn */ ,
- void * /* priv */
- );
-
-extern _X_EXPORT Bool XkbWriteXKBKeyTypes(FILE * /* file */ ,
- XkbDescPtr /* result */ ,
- Bool /* topLevel */ ,
- Bool /* showImplicit */ ,
- XkbFileAddOnFunc /* addOn */ ,
- void * /* priv */
- );
-
-extern _X_EXPORT Bool XkbWriteXKBCompatMap(FILE * /* file */ ,
- XkbDescPtr /* result */ ,
- Bool /* topLevel */ ,
- Bool /* showImplicit */ ,
- XkbFileAddOnFunc /* addOn */ ,
- void * /* priv */
- );
-
-extern _X_EXPORT Bool XkbWriteXKBSymbols(FILE * /* file */ ,
- XkbDescPtr /* result */ ,
- Bool /* topLevel */ ,
- Bool /* showImplicit */ ,
- XkbFileAddOnFunc /* addOn */ ,
- void * /* priv */
- );
-
-extern _X_EXPORT Bool XkbWriteXKBGeometry(FILE * /* file */ ,
- XkbDescPtr /* result */ ,
- Bool /* topLevel */ ,
- Bool /* showImplicit */ ,
- XkbFileAddOnFunc /* addOn */ ,
- void * /* priv */
- );
-
-/***====================================================================***/
-
extern _X_EXPORT unsigned XkmReadFile(FILE * /* file */ ,
unsigned /* need */ ,
unsigned /* want */ ,
diff --git a/xkb/xkbfmisc.c b/xkb/xkbfmisc.c
index c09c11b1a..2ec3b85ed 100644
--- a/xkb/xkbfmisc.c
+++ b/xkb/xkbfmisc.c
@@ -37,6 +37,7 @@
#include <X11/Xproto.h>
#include "xkb/xkbfmisc_priv.h"
+#include "xkb/xkbout_priv.h"
#include "misc.h"
#include "inputstr.h"
diff --git a/xkb/xkbout.c b/xkb/xkbout.c
index 1fd45e7af..e1b97a56f 100644
--- a/xkb/xkbout.c
+++ b/xkb/xkbout.c
@@ -36,6 +36,7 @@
#include <X11/extensions/XKMformat.h>
#include "xkb/xkbfmisc_priv.h"
+#include "xkb/xkbout_priv.h"
#include "xkb/xkbtext_priv.h"
#include "misc.h"
diff --git a/xkb/xkbout_priv.h b/xkb/xkbout_priv.h
new file mode 100644
index 000000000..790a009ec
--- /dev/null
+++ b/xkb/xkbout_priv.h
@@ -0,0 +1,32 @@
+/* SPDX-License-Identifier: MIT OR X11
+ *
+ * Copyright © 2024 Enrico Weigelt, metux IT consult <info at metux.net>
+ */
+#ifndef _XSERVER_XKB_XKBFOUT_PRIV_H
+#define _XSERVER_XKB_XKBFOUT_PRIV_H
+
+#include <stdio.h>
+#include <X11/X.h>
+#include <X11/Xdefs.h>
+
+#include "xkbstr.h"
+
+typedef void (*XkbFileAddOnFunc) (FILE *file,
+ XkbDescPtr result,
+ Bool topLevel,
+ Bool showImplicit,
+ int fileSection,
+ void *priv);
+
+Bool XkbWriteXKBKeyTypes(FILE *file, XkbDescPtr result, Bool topLevel,
+ Bool showImplicit, XkbFileAddOnFunc addOn, void *priv);
+Bool XkbWriteXKBKeycodes(FILE *file, XkbDescPtr result, Bool topLevel,
+ Bool showImplicit, XkbFileAddOnFunc addOn, void *priv);
+Bool XkbWriteXKBCompatMap(FILE *file, XkbDescPtr result, Bool topLevel,
+ Bool showImplicit, XkbFileAddOnFunc addOn, void *priv);
+Bool XkbWriteXKBSymbols(FILE *file, XkbDescPtr result, Bool topLevel,
+ Bool showImplicit, XkbFileAddOnFunc addOn, void *priv);
+Bool XkbWriteXKBGeometry(FILE *file, XkbDescPtr result, Bool topLevel,
+ Bool showImplicit, XkbFileAddOnFunc addOn, void *priv);
+
+#endif /* _XSERVER_XKB_XKBFOUT_PRIV_H */
commit 5d98664ec13803b6ddfd0d317c8cc57765706b8c
Author: Enrico Weigelt, metux IT consult <info at metux.net>
Date: Fri Apr 5 16:14:12 2024 +0200
xkb: unexport functions from xkbfmisc.c
These are only used inside xkb/*, so no need to keep them exported.
Also replacing some macros by inline functions in order to improve
type-safety and debugging, and adding documentation.
Signed-off-by: Enrico Weigelt, metux IT consult <info at metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1729>
diff --git a/include/xkbfile.h b/include/xkbfile.h
index 706f94018..317f15937 100644
--- a/include/xkbfile.h
+++ b/include/xkbfile.h
@@ -71,21 +71,6 @@ typedef void (*XkbFileAddOnFunc) (FILE * /* file */ ,
_XFUNCPROTOBEGIN
-#define _XkbKSLower (1<<0)
-#define _XkbKSUpper (1<<1)
-
-#define XkbKSIsLower(k) (_XkbKSCheckCase(k)&_XkbKSLower)
-#define XkbKSIsUpper(k) (_XkbKSCheckCase(k)&_XkbKSUpper)
-#define XkbKSIsKeypad(k) (((k)>=XK_KP_Space)&&((k)<=XK_KP_Equal))
-
-extern _X_EXPORT unsigned _XkbKSCheckCase(KeySym /* sym */
- );
-
-extern _X_EXPORT int XkbFindKeycodeByName(XkbDescPtr /* xkb */ ,
- char * /* name */ ,
- Bool /* use_aliases */
- );
-
extern _X_EXPORT Bool XkbWriteXKBKeycodes(FILE * /* file */ ,
XkbDescPtr /* result */ ,
Bool /* topLevel */ ,
@@ -126,14 +111,6 @@ extern _X_EXPORT Bool XkbWriteXKBGeometry(FILE * /* file */ ,
void * /* priv */
);
-extern _X_EXPORT Bool XkbWriteXKBKeymapForNames(FILE * /* file */ ,
- XkbComponentNamesPtr /* names */
- ,
- XkbDescPtr /* xkb */ ,
- unsigned /* want */ ,
- unsigned /* need */
- );
-
/***====================================================================***/
extern _X_EXPORT unsigned XkmReadFile(FILE * /* file */ ,
diff --git a/xkb/XKBMisc.c b/xkb/XKBMisc.c
index cf582cffd..abbfed90e 100644
--- a/xkb/XKBMisc.c
+++ b/xkb/XKBMisc.c
@@ -29,9 +29,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <stdio.h>
#include <X11/X.h>
#include <X11/Xproto.h>
+#include <X11/keysym.h>
+
+#include "xkb/xkbfmisc_priv.h"
+
#include "misc.h"
#include "inputstr.h"
-#include <X11/keysym.h>
#include <xkbsrv.h>
/***====================================================================***/
diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c
index 379a555b4..4446af8dc 100644
--- a/xkb/ddxLoad.c
+++ b/xkb/ddxLoad.c
@@ -40,6 +40,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include "dix/dix_priv.h"
#include "os/osdep.h"
+#include "xkb/xkbfmisc_priv.h"
#include "inputstr.h"
#include "scrnintstr.h"
diff --git a/xkb/xkb.c b/xkb/xkb.c
index f553ef739..85659382d 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -34,6 +34,7 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include "dix/dix_priv.h"
#include "os/osdep.h"
+#include "xkb/xkbfmisc_priv.h"
#include "misc.h"
#include "inputstr.h"
diff --git a/xkb/xkbfmisc.c b/xkb/xkbfmisc.c
index a2063e40f..c09c11b1a 100644
--- a/xkb/xkbfmisc.c
+++ b/xkb/xkbfmisc.c
@@ -29,14 +29,15 @@
#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
-
#include <X11/Xos.h>
#include <X11/Xfuncs.h>
#include <X11/extensions/XKMformat.h>
-
#include <X11/X.h>
#include <X11/keysym.h>
#include <X11/Xproto.h>
+
+#include "xkb/xkbfmisc_priv.h"
+
#include "misc.h"
#include "inputstr.h"
#include "dix.h"
diff --git a/xkb/xkbfmisc_priv.h b/xkb/xkbfmisc_priv.h
new file mode 100644
index 000000000..b08947b91
--- /dev/null
+++ b/xkb/xkbfmisc_priv.h
@@ -0,0 +1,79 @@
+/* SPDX-License-Identifier: MIT OR X11
+ *
+ * Copyright © 2024 Enrico Weigelt, metux IT consult <info at metux.net>
+ */
+#ifndef _XSERVER_XKB_XKBFMISC_PRIV_H
+#define _XSERVER_XKB_XKBFMISC_PRIV_H
+
+/* needed for X11/keysymdef.h to define all symdefs */
+#define XK_MISCELLANY
+
+#include <stdio.h>
+#include <X11/X.h>
+#include <X11/Xdefs.h>
+#include <X11/keysymdef.h>
+
+#include "xkbstr.h"
+
+/*
+ * return mask bits for _XkbKSCheckCase()
+ */
+#define _XkbKSLower (1<<0)
+#define _XkbKSUpper (1<<1)
+
+/*
+ * check whether given KeySym is a upper or lower case key
+ *
+ * @param sym the KeySym to check
+ * @return mask of _XkbKS* flags
+ */
+unsigned int _XkbKSCheckCase(KeySym sym);
+
+/*
+ * check whether given KeySym is an lower case key
+ *
+ * @param k the KeySym to check
+ * @return TRUE if k is a lower case key
+ */
+static inline Bool XkbKSIsLower(KeySym k) { return _XkbKSCheckCase(k)&_XkbKSLower; }
+
+/*
+ * check whether given KeySym is an upper case key
+ *
+ * @param k the KeySym to check
+ * @return TRUE if k is a upper case key
+ */
+static inline Bool XkbKSIsUpper(KeySym k) { return _XkbKSCheckCase(k)&_XkbKSUpper; }
+
+/*
+ * check whether given KeySym is an keypad key
+ *
+ * @param k the KeySym to check
+ * @return TRUE if k is a keypad key
+ */
+static inline Bool XkbKSIsKeypad(KeySym k) { return (((k)>=XK_KP_Space)&&((k)<=XK_KP_Equal)); }
+
+/*
+ * find a keycode by its name
+ *
+ * @param xkb pointer to xkb descriptor
+ * @param name the key name
+ * @param use_aliases TRUE if aliases should be resolved
+ * @return keycode ID
+ */
+int XkbFindKeycodeByName(XkbDescPtr xkb, char *name, Bool use_aliases);
+
+/*
+ * write keymap for given component names
+ *
+ * @param file the FILE to write to
+ * @param names pointer to list of keymap component names to write out
+ * @param xkb pointer to xkb descriptor
+ * @param want bitmask of wanted elements
+ * @param need bitmask of needed elements
+ * @return TRUE if succeeded
+*/
+Bool XkbWriteXKBKeymapForNames(FILE *file, XkbComponentNamesPtr names,
+ XkbDescPtr xkb, unsigned want, unsigned need);
+
+#endif /* _XSERVER_XKB_XKBFMISC_PRIV_H */
diff --git a/xkb/xkbout.c b/xkb/xkbout.c
index 98130fc32..1fd45e7af 100644
--- a/xkb/xkbout.c
+++ b/xkb/xkbout.c
@@ -35,6 +35,7 @@
#include <X11/Xproto.h>
#include <X11/extensions/XKMformat.h>
+#include "xkb/xkbfmisc_priv.h"
#include "xkb/xkbtext_priv.h"
#include "misc.h"
diff --git a/xkb/xkmread.c b/xkb/xkmread.c
index 45da55660..b40f8fc64 100644
--- a/xkb/xkmread.c
+++ b/xkb/xkmread.c
@@ -27,14 +27,15 @@
#include <dix-config.h>
#include <stdio.h>
-
#include <X11/Xos.h>
#include <X11/Xfuncs.h>
-
#include <X11/X.h>
#include <X11/Xproto.h>
#include <X11/keysym.h>
#include <X11/extensions/XKMformat.h>
+
+#include "xkb/xkbfmisc_priv.h"
+
#include "misc.h"
#include "inputstr.h"
#include "xkbstr.h"
commit 114c1c84b1b1dae2d74f7a719e8e682920cc1557
Author: Enrico Weigelt, metux IT consult <info at metux.net>
Date: Fri Oct 18 12:45:55 2024 +0200
xkb: move XkbConvertGetByNameComponents and make it static
This function has only one caller in xkb.c, so no need to keep it exported,
can be moved over into xkb.c and made static.
Signed-off-by: Enrico Weigelt, metux IT consult <info at metux.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1729>
diff --git a/include/xkbfile.h b/include/xkbfile.h
index df2221313..706f94018 100644
--- a/include/xkbfile.h
+++ b/include/xkbfile.h
@@ -86,14 +86,6 @@ extern _X_EXPORT int XkbFindKeycodeByName(XkbDescPtr /* xkb */ ,
Bool /* use_aliases */
);
-/***====================================================================***/
-
-extern _X_EXPORT unsigned XkbConvertGetByNameComponents(Bool /* toXkm */ ,
- unsigned /* orig */
- );
-
-/***====================================================================***/
-
extern _X_EXPORT Bool XkbWriteXKBKeycodes(FILE * /* file */ ,
XkbDescPtr /* result */ ,
Bool /* topLevel */ ,
diff --git a/xkb/xkb.c b/xkb/xkb.c
index 9ede6f969..f553ef739 100644
--- a/xkb/xkb.c
+++ b/xkb/xkb.c
@@ -5906,6 +5906,45 @@ ProcXkbListComponents(ClientPtr client)
return Success;
}
+static unsigned
+XkbConvertGetByNameComponents(Bool toXkm, unsigned orig)
+{
+ unsigned rtrn;
+
+ rtrn = 0;
+ if (toXkm) {
+ if (orig & XkbGBN_TypesMask)
+ rtrn |= XkmTypesMask;
+ if (orig & XkbGBN_CompatMapMask)
+ rtrn |= XkmCompatMapMask;
+ if (orig & XkbGBN_SymbolsMask)
+ rtrn |= XkmSymbolsMask;
+ if (orig & XkbGBN_IndicatorMapMask)
+ rtrn |= XkmIndicatorsMask;
+ if (orig & XkbGBN_KeyNamesMask)
+ rtrn |= XkmKeyNamesMask;
+ if (orig & XkbGBN_GeometryMask)
+ rtrn |= XkmGeometryMask;
+ }
+ else {
+ if (orig & XkmTypesMask)
+ rtrn |= XkbGBN_TypesMask;
+ if (orig & XkmCompatMapMask)
+ rtrn |= XkbGBN_CompatMapMask;
+ if (orig & XkmSymbolsMask)
+ rtrn |= XkbGBN_SymbolsMask;
+ if (orig & XkmIndicatorsMask)
+ rtrn |= XkbGBN_IndicatorMapMask;
+ if (orig & XkmKeyNamesMask)
+ rtrn |= XkbGBN_KeyNamesMask;
+ if (orig & XkmGeometryMask)
+ rtrn |= XkbGBN_GeometryMask;
+ if (orig != 0)
+ rtrn |= XkbGBN_OtherNamesMask;
+ }
+ return rtrn;
+}
+
/***====================================================================***/
int
ProcXkbGetKbdByName(ClientPtr client)
diff --git a/xkb/xkbfmisc.c b/xkb/xkbfmisc.c
index 146e36683..a2063e40f 100644
--- a/xkb/xkbfmisc.c
+++ b/xkb/xkbfmisc.c
@@ -390,42 +390,3 @@ XkbFindKeycodeByName(XkbDescPtr xkb, char *name, Bool use_aliases)
}
return 0;
}
-
-unsigned
-XkbConvertGetByNameComponents(Bool toXkm, unsigned orig)
-{
- unsigned rtrn;
-
- rtrn = 0;
- if (toXkm) {
- if (orig & XkbGBN_TypesMask)
- rtrn |= XkmTypesMask;
- if (orig & XkbGBN_CompatMapMask)
- rtrn |= XkmCompatMapMask;
- if (orig & XkbGBN_SymbolsMask)
- rtrn |= XkmSymbolsMask;
- if (orig & XkbGBN_IndicatorMapMask)
- rtrn |= XkmIndicatorsMask;
- if (orig & XkbGBN_KeyNamesMask)
- rtrn |= XkmKeyNamesMask;
- if (orig & XkbGBN_GeometryMask)
- rtrn |= XkmGeometryMask;
- }
- else {
- if (orig & XkmTypesMask)
- rtrn |= XkbGBN_TypesMask;
- if (orig & XkmCompatMapMask)
- rtrn |= XkbGBN_CompatMapMask;
- if (orig & XkmSymbolsMask)
- rtrn |= XkbGBN_SymbolsMask;
- if (orig & XkmIndicatorsMask)
- rtrn |= XkbGBN_IndicatorMapMask;
- if (orig & XkmKeyNamesMask)
- rtrn |= XkbGBN_KeyNamesMask;
- if (orig & XkmGeometryMask)
- rtrn |= XkbGBN_GeometryMask;
- if (orig != 0)
- rtrn |= XkbGBN_OtherNamesMask;
- }
- return rtrn;
-}
More information about the xorg-commit
mailing list