Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 6b1cdee1 | 2014-04-22 11:47:23 | keymap: add and use xkb_mods_{foreach,enumerate}() To iterate over an xkb_mod_set. Slightly nicer interface and makes transitioning from darray easier. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0f6bca2b | 2014-04-22 11:33:47 | keymap: rename xkb_foreach_key to xkb_keys_foreach We'll use the format xkb_foos_foreach and xkb_foos_enumerate for the various iterators. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| decb2915 | 2014-04-22 12:29:22 | darray: remove unused darray_foreach_reverse() Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 00f084b6 | 2014-04-22 14:34:57 | utils: detect overflow in memdup() Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 9b1a68ec | 2014-04-22 11:22:22 | keymap: protect xkb_foreach_key macro params Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 95aabeec | 2013-02-09 19:10:56 | symbols: use xkb_mod_set instead of entire keymap The keymap is not removed entirely from the Info (just constified), since it is still needed in AddKeySymbols() for looking up aliases. This dependency will be removed in the future. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| bf2878d2 | 2013-02-08 15:12:35 | compat: use xkb_mod_set instead of entire keymap Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b5655b3d | 2013-02-08 14:39:38 | vmod: take xkb_mod_set instead of the entire keymap This is the only place where the modifier information is modified. We will make it local to a given XKB file (after which it will be merged into the keymap). Currently it changes the keymap directly, which sidesteps the abstraction and leaves side-effects even if the XkbFile's compilation fails. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0b7c8d61 | 2013-02-08 14:32:47 | action: take xkb_mod_set instead of the entire keymap A couple of modiifer actions need this information, but not the entire keymap. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| f2cbeda9 | 2013-02-09 18:25:12 | types: use xkb_mod_set instead of entire keymap Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 9fbcf6bb | 2013-02-08 13:56:41 | expr: take xkb_mod_set instead of the entire keymap The modifier-resolving functions only need the modifier information. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| edc0aef5 | 2013-02-08 13:21:27 | text: take xkb_mod_set instead of the entire keymap The modifier printing functions only need the modifier information, they don't care about keys or leds, etc. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ca3170ad | 2013-02-08 13:09:33 | Add struct xkb_mod_set The only thing that the compilation phase needs the keymap for currently is for access to the modifier information (it also modifies it in place!). We want to only pass along the neccessary information, to make it more tractable and testable, so instead of passing the entire keymap we add a new 'mod_set' object and pass a (const) reference to that. The new object is just the old array of 'struct xkb_mod'. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3d7aff5f | 2014-04-19 16:15:05 | keymap: rename wrap_group_into_range -> XkbWrapGroupIntoRange It better fits with the naming convention in keymap.h. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 51a1df2f | 2014-04-19 15:56:27 | keymap: move ModNameToIndex from text.c and use it in keymap.c Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 120c5c31 | 2013-02-08 00:28:49 | symbols: separate ctx Same as was done for compat and types. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 659eacc9 | 2013-02-08 00:22:38 | compat: separate ctx Same as was done for types. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 36cbecc5 | 2013-02-08 00:14:49 | types: separate ctx Separate the ctx object to its own field in CompatInfo, instead of doing keymap->ctx. The compilation functions should not have direct access to the keymap; instead they should process the files with their own independent state (in the *Info structs) as much as possible, and only at the end should they be copied (i.e. commited) to the keymap. If the compilation fails, it leaves no by-products. It's also just good form. This was seemingly the original author's intention, but I suppose he cut a few corners (mostly with the handling of virtual modifiers, which are threaded through types -> compat -> symbols). This commit is the first step and may look artificial; however the 'keymap' field will be removed shortly. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 999f3792 | 2014-04-16 22:43:30 | action: convert a few missed unsigned -> enum xkb_action_type Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 9c8fcee1 | 2014-04-16 21:25:40 | expr: fix handling of unknown integer binary operator We can't reach the default branch but at least make it do something sensible. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 54174409 | 2014-03-27 17:42:20 | state: fix consumed modifier calculation The current calculation is in short: entry ? (entry->mask & ~entry->preserve) : 0 This changes it be type->mask & ~(entry ? entry->preserve : 0) This is what Xlib does. While less intuitive, it is actually more correct, if you follow this deduction: - The key group's type->mask defines which modifiers the key even cares about. The others are completely irrelevant (and in fact they are masked out from all sided in the level calculation). Example: NumLock for an alphabetic key. - The type->mask, the mods which are not masked out, are *all* relevant (and in fact in the level calculation they must match *exactly* to the state). These mods affect which level is chosen for the key, whether they are active or not. - Because the type->mask mods are all relevant, they must be considered as consumed by the calculation *even if they are not active*. Therefore we use type->mask instead of entry->mask. The second change is what happens when no entry is found: return 0 or just take preserve to be 0? Let's consider an example, the basic type type "ALPHABETIC" { modifiers = Shift+Lock; map[Shift] = Level2; map[Lock] = Level2; level_name[Level1] = "Base"; level_name[Level2] = "Caps"; }; Suppose Shift+Lock is active - it doesn't match any entry, thus it gets to level 0. The first interpretation would take them both to be unconsumed, the second (new one) would take them both to be consumed. This seems much better: Caps is active, and Shift disables it, they both do something. This change also fixes a pretty lousy bug (since 0.3.2), where Shift appears to apparently *not* disable Caps. What actually happens is that Caps is not consumed (see above) but active, thus the implicit capitalization in get_one_sym() kicks in and capitalizes it anyway. Reported-by: Davinder Pal Singh Bhamra Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3cfa7fda | 2014-03-21 23:00:37 | state: apply control transformation on utf8/utf32 keysym strings This is required by the specification: http://www.x.org/releases/current/doc/kbproto/xkbproto.html#Interpreting_the_Control_Modifier and clients expect this to happen. https://bugs.freedesktop.org/show_bug.cgi?id=75892 Reported-by: Gatis Paeglis <gatis.paeglis@digia.com> Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b973d71e | 2014-03-21 23:00:17 | state: add xkb_state_key_get_{utf8,utf32}() API functions These functions generally have the same effect as xkb_state_key_get_syms() + xkb_keysym_to_utf{8,32}(). So why add them? - They provide a slightly nicer interface, especially if the string is the only interest. - It makes the handling of multiple-keysyms-to-utf8 transparent. For the designated use-case of multiple-keysyms (unicode combining characters), this is a must. We also validate the UTF-8, which the user might not otherwise do. - We will need to apply some transformation on the resulting string which depend on the xkb_state. This is not possible with the xkb_keysym_* functions. With these functions, the existing xkb_keysym_to_utf{8,32}() are not expected to be used by a typical user; they are "raw" functions. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2bbaf7c7 | 2014-02-09 13:50:21 | Add utf8.{c,h} for common UTF-8 util functions We need to validate some UTF-8, so this adds an is_valid_utf8() function, which is probably pretty slow but should work correctly. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3c14d233 | 2014-03-06 13:43:02 | x11: relax XkbGetNames requirements It is valid for a keymap to not have key aliases, group names and various other things. But the current test requires all of them to be present in the reply, which causes us the fail on such keymaps (as the XQuartz one). Instead, require only what we really need. The virtual-mods names may not be strictly required, but it seems safer to leave it in for now. https://bugs.freedesktop.org/show_bug.cgi?id=75798 Reported-by: Gatis Paeglis <gatis.paeglis@digia.com> Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| caf8f3be | 2014-02-22 23:43:19 | symbols, keycodes: fix int return type when bool is intended Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 09bcf0ff | 2014-02-22 23:37:37 | symbols: cleanup SetSymbolsField Normalize the style and error message levels. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 35dea49b | 2014-02-22 23:20:04 | symbols: fix possible use of uninitialized value Nothing bad can come out of it, but for some reason this error didn't return early (inherited from xkbcomp). Also promote the log message to an error, as it clearly is. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 4fb7b06b | 2014-02-21 18:09:00 | state: Add xkb_state_key_get_consumed_mods This retrieves the mask of consumed modifiers for a given key and state, which is helpful for toolkits without having them to do it one modifier at a time, or pass in 0xFFFFFFFF to xkb_state_remove_consumed_mods to "reverse-engineer" the consumed mods. | ||
| 1fa7d6d3 | 2014-02-16 18:32:44 | action: unify SetLatch and Lock handler functions This is a little shorter and follows easier from the spec flag description table. Also a few were too permissive (like allowing LatchToLock in SetMods). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| af75353a | 2014-02-16 10:20:32 | action: add a common CheckBooleanFlag function Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 18191702 | 2014-02-16 10:59:42 | keymap: change action flag NO_ACCEL -> ACCEL It's easier to deal with, but we need to set it as "factory default". Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| af261cb6 | 2014-02-16 10:22:32 | action: fix SwitchScreen "same" field handling This used to *unset* a flag called "SwitchApplication"; we changed the flag to "same" but forgot to switch the cases. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8d3db622 | 2014-02-15 23:50:21 | keymap-dump: add missing support for NoLock and NoUnlock flags Based on a libxkbfile patch by Andreas Wettstein. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 11a9f76b | 2014-02-15 23:27:23 | keymap-dump: don't print "affect=lock" in PtrLock It's the same as no flags, so might as well not print it. (In fact it is slightly harmful, because it actively *clears* the affect flags, which might have been set in some other manner. But in practice this cannot happen). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| be27b603 | 2014-02-15 23:13:21 | keymap-dump: unbreak some complex lines It's very hard to read as-is. Apologies for those reading over a VT100. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b95df2a6 | 2014-02-15 22:59:12 | expr: simplify ExprResolveButton Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| efe2880e | 2014-02-15 22:28:41 | action: don't pass a keymap where a ctx is sufficient Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3acea3b3 | 2014-02-15 22:16:41 | action: add missing array_ndx checks Only the "data" field can have them, and every other field needs to error out if it appears. But some didn't check. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 477407f7 | 2014-02-15 21:55:36 | action: move array_ndx errors into the Check functions Makes more sense and flows more nicely this way. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 7c5e7915 | 2014-02-15 21:48:31 | action: fix missing support for "affect" field Support for setting this field was missing from the LockMods and LockControls actions. Based on a xkbcomp patch by Andreas Wettstein. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 1b2bb204 | 2014-02-13 23:57:22 | ast: cast to ParseCommon explictly instead of using ->common Some tools were getting mighty confused with what we were doing. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 6248b09f | 2014-02-13 23:11:31 | action: simplify Check* functions Instead of using those t1 t2 variables, pass the final destinations directly (while making sure they are not modified in case of error). This also ensures the types are right, e.g. in CheckGroupField it should be int32_t, not xkb_layout_index_t (and indeed it takes a negation!). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| d3d55f1c | 2014-02-12 11:07:39 | darray: fix indentation Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5bd273a7 | 2012-11-27 10:42:15 | vmod: bring back support for direct vmod -> real mod mapping This brings back the functionality that was removed in b9c87eb710ba4a86455601ca8c5a516b25e20366. Though it is not used in xkeyboard-config, from our current perspective it can be quite useful to be able to set the mappings directly, thus sidestepping the ugly and legacy-ridden modifier_map statement. Here's an example of how to get rid of modifier_map statements (though that would break core-X11 applications, since they must have the mappings through keysyms): virtual_modifiers NumLock = Mod2; virtual_modifiers Alt = Mod1; // Would be nice to map these to Alt, but that would be // incompatible with xkbcomp and somewhat complicated virtual_modifiers LAlt = Mod1; virtual_modifiers RAlt = Mod1; virtual_modifiers LevelThree = Mod5; virtual_modifiers RControl = Control; virtual_modifiers LControl = Control; virtual_modifiers Super = Mod4; virtual_modifiers Meta = Mod1; virtual_modifiers Hyper = Mod4; virtual_modifiers AltGr = Mod5; virtual_modifiers LShift = Shift; virtual_modifiers RShift = Shift; Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e55a0cea | 2013-10-27 20:10:15 | Move src/xkbcomp/scanner-utils.h to src/ As we'll use it for things unrelated to xkbcomp. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 28d5f770 | 2014-02-10 20:33:34 | scanner: sort out scanner logging functions First, make the rules and xkb scanners/parsers use the same logging functions instead of rolling their own. Second, use the gcc ##__VA_ARGS extension instead of dealing with C99 stupidity. I hope all relevant compilers support it. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c4259ff2 | 2014-02-10 15:18:22 | rules: always %-expand kccgst values Previously the early-exit codepath might have left some values unexpanded, and we'd go looking for e.g "%l%(v)". Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2ecc0f83 | 2014-02-10 13:06:22 | context: add xkb_context_sanitize_rule_names() We want all the default logic in a test, so encapsulate it in this function, and make all the get_default_* functions static. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| c11f05e0 | 2014-02-10 11:16:37 | rules: print full path in error messages There can be multiple include paths. But it's nicer in any case. This also makes scanner_error actually use log_err instead of log_warn - oops. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 537564cb | 2014-02-10 11:11:27 | rules: include the path in failed-to-map error message Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 043eda87 | 2014-02-10 12:24:50 | context: fix wrong VARIANT instead of LAYOUT getenv Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 16aab829 | 2014-02-09 23:21:19 | ast: remove unneeded 'ctx' param to XkbFileCreate Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8be2608a | 2014-02-09 18:02:11 | x11: don't trust keycode before testing its range The assert is not very useful access the key just before. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 27a24589 | 2014-02-09 17:49:30 | keymap: reduce padding in struct xkb_sym_interpret Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 71a25931 | 2014-02-09 17:18:08 | symbols: steal keys and modmaps when merging if possible Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a7d753e4 | 2014-02-09 17:17:13 | compat: steal interps and leds when merging if possible Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 35cab168 | 2014-02-09 16:49:45 | types: steal types when merging if possible Like we do everywhere else. Removes some unnecessary allocations and copying. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3923aa71 | 2014-02-09 11:27:34 | doc: move some file comments into txt files in doc/ Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e89516e9 | 2014-02-09 13:51:38 | state: check wrap_group_into_range() return value It returns XKB_LAYOUT_INVALID in case num_groups == 0. So we shouldn't just save it in the state. Note, though, that this condition is generally impossible. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| d53eef0d | 2014-02-09 10:27:45 | x11: add 0 < ctrls->numGroups <= 4 assertion This only happens if something is wrong in the server; a valid keymap cannot be had in any case. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3d56aa3e | 2014-02-08 17:58:39 | keysym: use safe keysym comparison function Instead of thinking about signed <-> unsigned an whatnot. bsearch() is inline in glibc, so gcc optimizes this away anyway. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 68b03097 | 2014-02-08 17:22:14 | scanner: make line and column unsigned Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| cf513f70 | 2014-02-08 17:15:37 | rules: get rid of struct location Use the scanner token_{line,column} like we do in the other places. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 973b8fd4 | 2014-02-08 16:40:20 | api: deprecate XKB_MAP_COMPILE_PLACEHOLDER, and use KEYMAP instead of MAP The PLACEHOLDER was not meant to be used, but c++ doesn't like passing 0 to enums, so it was used. For this reason we add all the NO_FLAGS items, so the PLACEHOLDER shouldn't be used anymore. Second, XKB_MAP is the prefix we used ages ago, KEYMAP is the expected prefix here. So deprecate that as well. The old names may still be used through the xkbcommon-compat.h header, which is included by default (no need to include directly). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8cc9434f | 2014-02-08 16:38:18 | x11: make sure not to use compat header src/keymap.h already defines the necessary header guard, so just reverse the include order. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ac42103b | 2014-02-08 16:25:22 | x11: make some #defines unsigned Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8fcb44b8 | 2014-02-08 16:18:16 | x11: fix truncation of xkb controls mask off the wire It's uint32_t, not uint16_t, so we were losing flags (not that it matters in this case). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| f5465b56 | 2014-02-08 16:12:09 | x11: make msb_pos return unsigned It was initially returning -1 for all-zero arguments, but now it returns 0. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a088c9ba | 2014-02-08 16:03:06 | keysym: fix types in bin_search Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 04bacf87 | 2014-02-08 15:53:50 | state: optimize xkb_state_led_update_all() Before: ran@ran:~/src/libxkbcommon$ ./test/bench-key-proc ran 20000000 iterations in 6.623018074s After: ran@ran:~/src/libxkbcommon$ ./test/bench-key-proc ran 20000000 iterations in 4.762291091s Not that anyone needs to process millions of keys per second... Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 769b91c5 | 2014-02-08 15:30:05 | Use (1u << idx) instead of (1 << idx) where appropriate It doesn't matter (I think), since the implicit conversion doesn't have any effect (e.g. sign-extension). But it's better to be aware of the type. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 50b73ec0 | 2014-02-08 15:10:09 | Use unsigned int for saving darray_size return value See: b9b3593cbdeb7f5b02d50cecaba6a0b47d4979ad So these should be unsigned int's now. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e2c336cb | 2014-02-08 15:06:28 | action: fix misleading cast The type is uint8_t and so is the checked range. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| bbd2a9c0 | 2014-02-08 15:05:05 | action: fix printing of underflowed value in error message Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 27e20662 | 2014-02-08 12:31:21 | scanner-utils: add some likely/unlikely annotations Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 10643d8a | 2014-02-08 12:29:51 | Define likely()/unlikely() macros It serves as nice "hotspot" annotations, and can also help things, so why not. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 0e20cfed | 2014-02-08 02:01:17 | Partially revert "ast: pack the ParseCommon struct" This reverts commit 1e6e5669c6229846830f0b497591de4e3cf588eb. It's probably safe, but let's not take any chances, as I don't have any esoteric arch to test on. But keep the ATTR in case it's ever useful. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 6ea15719 | 2014-02-08 01:26:35 | ast: use more suitable types in a few ast nodes The int ones cannot be signed (they come as such from the scanner, and NEGATE is never applied to them). The uint32_t one is really an atom, but presumably the type was never converted to xkb_atom_t. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b9b3593c | 2014-02-08 01:13:50 | darray: use unsigned int instead of size_t for array size size_t is too large; if we ever need it, that's the least of our problems. Besides, when we roll our own (e.g. in keymap.h) it's already unsigned int. Instead, add some emergency overflow check. So, why? - It plays nicer with all the other uint32_t's and unsigned int's (no extensions, etc.). - Reduces keymap memory usage by 5% or so as a bonus. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 623b10f8 | 2014-02-08 00:27:54 | Fix sign-compare warnings Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 893f0130 | 2014-02-08 00:18:32 | symbols: reduce some loop iterators scope Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5547a82f | 2014-02-07 21:12:53 | parser: fix unrecognized keysym handling Integer may be negative, so also need to test >= 0. Also, $$ was left uninitialized if the keysym wasn't recognized. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 5dbd1364 | 2014-02-07 20:58:19 | action: change xkb_pointer_button_action::button to uint8_t In XkbPtrBtnAction it is unsigned char, don't know how it became signed. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| fa87cdb8 | 2014-02-07 19:39:42 | darray: cleanup We have quite diverged from the upstream file, so let's make it at least easier to look at. Remove some unused macros and rename some for consistency. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 6f2df7df | 2014-02-07 19:28:48 | ast: make symsMapIndex unsigned It doesn't need to be signed. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e9e39932 | 2014-02-07 18:49:22 | action: Use ResolveInteger for PtrBtn.count, not ResolveButton It's not a button. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| e0137cac | 2014-02-07 18:48:16 | action: check range of MovePtr X,Y values Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| b82a0a86 | 2014-02-07 18:09:30 | scanner: avoid strlen in keyword lookup, we know the len Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2abff2a0 | 2014-02-07 17:29:34 | state: use the XKB_MOD_MASK constant Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ed18f7dd | 2014-02-07 17:13:03 | x11: add #actions == #syms check This must always hold (but if there are no actions, #actions==0), and explicitly ensures there won't be a division-by-zero a bit below. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 125bb19e | 2014-02-07 17:11:49 | x11: add explicit cast in mods conversion Explicit is better and all. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 109fe705 | 2014-02-04 02:53:05 | Use secure_getenv when available We probably don't want to get a privileged process to compile arbitrary keymaps. So we should be careful about the envvars which control include paths or default RMLVOs. But then secure_getenv is more sensible for everything we do. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| eb348255 | 2013-07-20 23:21:44 | x11: add XKB protocol keymap and state creation support These are function to create an xkb_keymap directly from XKB requests to the X server. This opens up the possibility for X clients to use xcb + xcb-xkb + xkbcommon as a proper replacement for Xlib + xkbfile for keyboard support. The X11 support must be enabled with --enable-x11 for now. The functions are in xkbcommon/xkbcommon-x11.h. It depends on a recent libxcb with xkb enabled. The functions are in a new libxkbcommon-x11.so, with a new pkg-config file, etc. so that the packages may be split, and libxkbcommon.so itself remains dependency-free. Why not just use the RMLVO that the server puts in the _XKB_RULES_NAMES property? This does not account for custom keymaps, on-the-fly keymap modifications, remote clients, etc., so is not a proper solution in practice. Also, some servers don't even set it. Now, the client just needs to recreate the keymap in response to a change in the server's keymap (as Xlib clients do with XRefreshKeyboardMapping() and friends). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a9c56f64 | 2014-01-13 17:20:54 | context: split private functions to context-priv.c (Same as keymap-priv.c). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 7210497c | 2014-01-13 17:07:41 | keymap: split private functions to keymap-priv.c This makes it easier to share the private functions in other DSOs without relying (too much) on dead code elimination, exported symbols, etc. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 4884a8e6 | 2013-08-02 10:19:01 | keymap: move XkbEscapeMapName() to keymap.c. So we can use it outside src/xkbcomp; it is not really specific to it. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 917c7515 | 2014-01-12 14:37:39 | context: remove mostly useless log wrappers Just use xkb_log directly. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 101720a2 | 2014-01-12 13:18:39 | parser: shutup some 'may be used uninitialized' warnings Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| bbc69b63 | 2014-01-12 10:53:23 | action, types: remove unused Report functions Signed-off-by: Ran Benita <ran234@gmail.com> |