Age | Commit message (Collapse) | Author |
|
Let's clean this up so I don't have to fight vim and git in removing them.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Parse, but ignore, level definitions in the form of:
key <FOO> { [ normal_sym, { M, U, L, T, I, S, Y, M } ] };
normal_sym will be carried, but the latter will be turned into NoSymbol.
http://bugs.freedesktop.org/show_bug.cgi?id=25025
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
Brown paper bag in full effect.
The previous fix, while crushing the previous problem where an unknown
keysym for an interp def would lead to every key matching it, also
ignored explicit Any+AnyOfOrNone(All) mappings.
Such as the one xkeyboard-config relied on for Control to actually
update the modifier state.
Fix this by allowing mappings explicitly declared as Any/NoSymbol, while
ignoring only those with failed keysym lookups. Unfortunately, due to
the structure of the parser, it's a deeply inelegant fix.
Verified with a quick check of all layouts (albeit using default
variants only) in xkeyboard-config that this results in no changes to
the output at all, compared to xkbcomp 1.1.1.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
Raw keysyms were not getting parsed correctly, due to forgetting to add
the code to libX11, forgetting to add the backwards-compat code for old
libX11s, and then stuffing the lexing up anyway. Yeesh.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
Use a constant buffer. Sigh.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
Instead of calling XStringToKeysym on every keysym we parse, store it as
a string until we need to store it in an actual keymap.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
|
|
|
|
Remaining warnings are due to macros that check address or vectors
on the stack and auto generated yacc code.
Compiled with default flags and also as:
% make CFLAGS=-DENTRY_TRACKING_ON -DDEBUG_ON -DASSERTIONS_ON
to ensure the "simplification" of code like:
foo.c:
<hash>define DEBUG_VAR foo_VAR
<hash>include "foo.h"
...
foo.h:
<hash>ifdef DEBUG_VAR_NOT_LOCAL
extern
<hash>endif
int DEBUG_VAR;
...
did not change the author's "intended" logic.
|
|
|
|
|
|
|
|
Some keynames are less than 3 characters long (not counting the
terminator). We're now also initializing all of the keyName array.
|
|
Accept negative co-ordinates for geometry, per the spec.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|