diff options
author | Gatis Paeglis <gatis.paeglis@qt.io> | 2018-11-16 17:07:33 +0100 |
---|---|---|
committer | Gatis Paeglis <gatis.paeglis@qt.io> | 2018-11-30 09:47:03 +0000 |
commit | c3a963da1f9e7b1d37e63eedded61da4fbdaaf9a (patch) | |
tree | abe3ac72e69cd6e85ec3a4cfb587405151076493 /src/3rdparty/xkbcommon/src/xkbcomp/vmod.c | |
parent | 1f1dc3fc4c2e5e2d94e86dfc7235a4b762da2e72 (diff) |
src/3rdparty: remove xkbcommon
The only reason why we bundled this library ~6 years ago was because
it was not available on distributions that we supported at the time,
but library was a hard dependency for XCB plugin. See:
2122e731abdb619249df89642c0800640b2fa428
Later more and more projects started to depend on it (compose input
context plugin, libinput, mir, wayland). The configuration had become
too complex, because some projects used bundled and some used the
version from the system.
Having libxkbcommon in 3rdparty sources is not necessary anymore, after
RHEL 6.6 was removed from the list of supported platforms for Qt 5.12.
Ubuntu 16.04 - 0.5.0
Ubuntu 18.04 - 0.8.0
openSUSE 42.3 - 0.6.1
RHEL-7.4 - 0.7.1
This will also simplify further development, e.g. QTBUG-42181
Bumped the minimal required version 0.4.1 -> 0.5.0.
The patch also contains a code marked with "TRANSITION HACK", which
is temporary needed so we can update the dependent wayland module.
[ChangeLog][Third-Party Code] Removed xkbcommon from bundled sources.
This library is present on all supported platforms. The minimal required
version now is 0.5.0.
Task-number: QTBUG-65503
Change-Id: Iec50829bb6f8fbb19f3c4e4ad62e332beb837de5
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Diffstat (limited to 'src/3rdparty/xkbcommon/src/xkbcomp/vmod.c')
-rw-r--r-- | src/3rdparty/xkbcommon/src/xkbcomp/vmod.c | 105 |
1 files changed, 0 insertions, 105 deletions
diff --git a/src/3rdparty/xkbcommon/src/xkbcomp/vmod.c b/src/3rdparty/xkbcommon/src/xkbcomp/vmod.c deleted file mode 100644 index a0b029af4f..0000000000 --- a/src/3rdparty/xkbcommon/src/xkbcomp/vmod.c +++ /dev/null @@ -1,105 +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. - * - ********************************************************/ - -#include "xkbcomp-priv.h" -#include "text.h" -#include "expr.h" -#include "vmod.h" - -bool -HandleVModDef(struct xkb_context *ctx, struct xkb_mod_set *mods, - VModDef *stmt, enum merge_mode merge) -{ - xkb_mod_index_t i; - struct xkb_mod *mod; - xkb_mod_mask_t mapping; - - merge = (merge == MERGE_DEFAULT ? stmt->merge : merge); - - if (stmt->value) { - /* - * This is a statement such as 'virtualModifiers NumLock = Mod1'; - * it sets the vmod-to-real-mod[s] mapping directly instead of going - * through modifier_map or some such. - */ - if (!ExprResolveModMask(ctx, stmt->value, MOD_REAL, mods, &mapping)) { - log_err(ctx, - "Declaration of %s ignored\n", - xkb_atom_text(ctx, stmt->name)); - return false; - } - } - else { - mapping = 0; - } - - xkb_mods_enumerate(i, mod, mods) { - if (mod->name == stmt->name) { - if (mod->type != MOD_VIRT) { - log_err(ctx, - "Can't add a virtual modifier named \"%s\"; " - "there is already a non-virtual modifier with this name! Ignored\n", - xkb_atom_text(ctx, mod->name)); - return false; - } - - if (mod->mapping == mapping) - return true; - - if (mod->mapping != 0) { - xkb_mod_mask_t use, ignore; - - use = (merge == MERGE_OVERRIDE ? mapping : mod->mapping); - ignore = (merge == MERGE_OVERRIDE ? mod->mapping : mapping); - - log_warn(ctx, - "Virtual modifier %s defined multiple times; " - "Using %s, ignoring %s\n", - xkb_atom_text(ctx, stmt->name), - ModMaskText(ctx, mods, use), - ModMaskText(ctx, mods, ignore)); - - mapping = use; - } - - mod->mapping = mapping; - return true; - } - } - - if (mods->num_mods >= XKB_MAX_MODS) { - log_err(ctx, - "Too many modifiers defined (maximum %d)\n", - XKB_MAX_MODS); - return false; - } - - mods->mods[mods->num_mods].name = stmt->name; - mods->mods[mods->num_mods].type = MOD_VIRT; - mods->mods[mods->num_mods].mapping = mapping; - mods->num_mods++; - return true; -} |