Lines Matching refs:xkb

44 XkbAllocCompatMap(XkbDescPtr xkb, unsigned which, unsigned nSI)
48 if (!xkb)
50 if (xkb->compat) {
51 if (xkb->compat->size_si >= nSI)
53 compat = xkb->compat;
78 xkb->compat = compat;
84 XkbFreeCompatMap(XkbDescPtr xkb, unsigned which, Bool freeMap)
88 if ((xkb == NULL) || (xkb->compat == NULL))
90 compat = xkb->compat;
103 xkb->compat = NULL;
111 XkbAllocNames(XkbDescPtr xkb, unsigned which, int nTotalRG, int nTotalAliases)
115 if (xkb == NULL)
117 if (xkb->names == NULL) {
118 xkb->names = _XkbTypedCalloc(1, XkbNamesRec);
119 if (xkb->names == NULL)
122 names = xkb->names;
123 if ((which & XkbKTLevelNamesMask) && (xkb->map != NULL) &&
124 (xkb->map->types != NULL)) {
126 XkbKeyTypePtr type = xkb->map->types;
128 for (i = 0; i < xkb->map->num_types; i++, type++) {
137 if ((!XkbIsLegalKeycode(xkb->min_key_code)) ||
138 (!XkbIsLegalKeycode(xkb->max_key_code)) ||
139 (xkb->max_key_code < xkb->min_key_code))
141 names->keys = _XkbTypedCalloc((xkb->max_key_code + 1), XkbKeyNameRec);
171 XkbFreeNames(XkbDescPtr xkb, unsigned which, Bool freeMap)
175 if ((xkb == NULL) || (xkb->names == NULL))
177 names = xkb->names;
181 XkbClientMapPtr map = xkb->map;
211 xkb->names = NULL;
220 XkbAllocControls(XkbDescPtr xkb, unsigned which)
222 if (xkb == NULL)
225 if (xkb->ctrls == NULL) {
226 xkb->ctrls = _XkbTypedCalloc(1, XkbControlsRec);
227 if (!xkb->ctrls)
235 XkbFreeControls(XkbDescPtr xkb, unsigned which, Bool freeMap)
237 if (freeMap && (xkb != NULL) && (xkb->ctrls != NULL)) {
238 _XkbFree(xkb->ctrls);
239 xkb->ctrls = NULL;
247 XkbAllocIndicatorMaps(XkbDescPtr xkb)
249 if (xkb == NULL)
251 if (xkb->indicators == NULL) {
252 xkb->indicators = _XkbTypedCalloc(1, XkbIndicatorRec);
253 if (!xkb->indicators)
260 XkbFreeIndicatorMaps(XkbDescPtr xkb)
262 if ((xkb != NULL) && (xkb->indicators != NULL)) {
263 _XkbFree(xkb->indicators);
264 xkb->indicators = NULL;
274 XkbDescRec *xkb;
276 xkb = _XkbTypedCalloc(1, XkbDescRec);
277 if (xkb)
278 xkb->device_spec = XkbUseCoreKbd;
279 return xkb;
283 XkbFreeKeyboard(XkbDescPtr xkb, unsigned which, Bool freeAll)
285 if (xkb == NULL)
290 XkbFreeClientMap(xkb, XkbAllClientInfoMask, True);
292 XkbFreeServerMap(xkb, XkbAllServerInfoMask, True);
294 XkbFreeCompatMap(xkb, XkbAllCompatMask, True);
296 XkbFreeIndicatorMaps(xkb);
298 XkbFreeNames(xkb, XkbAllNamesMask, True);
299 if ((which & XkbGeometryMask) && (xkb->geom != NULL)) {
300 XkbFreeGeometry(xkb->geom, XkbGeomAllMask, True);
301 xkb->geom = NULL;
304 XkbFreeControls(xkb, XkbAllControlsMask, True);
306 _XkbFree(xkb);