Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 59d947c9 | 2012-08-05 19:24:44 | Add and use xkb_level_index_t Several types are used over the code for shift levels; better to use just one. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 58f8d2c1 | 2012-07-20 17:09:49 | utils: remove Xfuncproto.h and use our own macros Add XKB_EXPORT to replace _X_EXPORT, and copy the definitions of _X_ATTRIBUTE_FOO as ATTR_FOO. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 50b25a12 | 2012-07-17 11:03:43 | Use xkb_group_index_t for group variables throughout Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| d0097f4e | 2012-07-15 15:55:34 | Pass around xkb_key's instead of keycodes This way we don't need to look up the key every time. We now only deal with keycodes in the public API and in keycodes.c. Also adds an xkb_foreach_key macro, which is used a lot. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 81d029f5 | 2012-07-15 11:52:54 | Replace xkb_keycode_t 'key' variable name by 'kc' We want to reserve the name 'key' for something else. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| a52fb7e2 | 2012-07-15 11:37:54 | Convert indecipherable macros to inline functions This was fun. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| caca60f3 | 2012-07-15 01:45:34 | Move per_key_repeats and enabled_ctrls to keymap All of the per-key data and global flags are now visible directly in the keymap. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 50fef8eb | 2012-07-15 00:46:31 | Get rid of xkb_indicator Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 9308a460 | 2012-07-17 10:20:15 | Run source tree through uncrustify .uncrustify.cfg committed for future reference also, but had to manually fix up a few things: it really likes justifying struct initialisers. Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| e201c165 | 2012-06-30 00:07:09 | state: fix base mod set/clear behavior This commit fixes the incorrect current behavior, where at the end of the following key sequence Left Shift down, Right Shift down, Left Shift up the Shift modifier is cleared. Clearly the code is not as nice as before, but it seems like some count of the depressed modifiers must be kept. The code is lifted mostly as is from xkbActions.c. [ There they also assign to setMods and clearMods each time and not OR it. I assume its correct, although I wouldn't have guessed... ] Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 955ed8c4 | 2012-06-06 10:38:45 | state: use darray for filters For the darray we need to specify the explicit struct xkb_filter type instead of void*, so we move the definition of struct xkb_state into state.c thus making it opaque even from the rest of the files. It has enough getters to get going and is otherwise good style. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 2761b1a3 | 2012-05-09 20:20:12 | Rename serialise to serialize Yes, British English is correct, but unfortunately we've lost that battle. Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| 38cb6390 | 2012-05-09 15:15:30 | Change all 'xkb' xkb_keymap names to 'keymap' To make it a bit more clear what it actually is. Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| 124e62e4 | 2012-05-09 01:06:10 | Add multiple modifier state matching API Two new calls allow users to test the exact modifier state, including verifying that no other modifiers but the ones you wanted are down. Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| b610b2b9 | 2012-05-08 14:52:23 | Rename XKBcommonint.h to xkb-priv.h and use it Make the files in the src/* directory use their own header or a consilidated private header. This makes the file dependencies clearer. Also drop the pointless "xkb" file name prefix, add split a few declarations to their own files (atom.h and text.h). Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 1b9635df | 2012-04-08 02:08:37 | Add xkb_state_get_map() This is very useful because it avoids redundent pointers in structs and/or parameter passing in the application. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 8fbd44fd | 2012-04-06 03:12:50 | Implicitly include config.h in all files The definitions in config.h should be available in all files an implementation detail; it can be included through the build system instead of having each file pull it every time. This is especially helpful with AC_USE_SYSTEM_EXTENSIONS, as _GNU_SOURCE and friends can have an effect by merely being defined, which can lead to some confusion if its effective for only half the files. And we don't really support a build _without_ config.h; so, one less thing to worry about. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 18e6a6a4 | 2012-04-05 10:47:43 | Remove Xfuncproto.h and XKB.h from xkbcommon/xkbcommon.h The kbproto header is already not needed here anymore. Move the _X_EXPORT's to the corresponding function definitions, and use straight extern "C" clauses instead of _XFUNCPROTOBEGIN/END. It also makes more sense to have the EXPORT's in the source files, as it provides some documentation to the reader, whereas in the header it's obvious. Signed-off-by: Ran Benita <ran234@gmail.com> [daniels: Updated for xkb_keymap changes.] | ||
| 467d7bb6 | 2012-04-05 10:13:24 | Implement missing xkb_state_ref and add return value xkb_state_ref was missing. Also modify the _ref functions to return the object instead of being void. This is a useful idiom: struct my_object my_object_new(struct xkb_state *state) { [...] my_object->state = xkb_state_ref(state); [...] } Essentially "taking" a reference, such that you don't forget to increment it and it's one line less (see example in our own code). A case could also be made for _unref to return the object or NULL, but this is quite uncommon. Signed-off-by: Ran Benita <ran234@gmail.com> [daniels: Updated for xkb_keymap changes.] | ||
| ef88c7ef | 2012-04-03 15:14:16 | Rename xkb_desc to xkb_keymap struct xkb_desc was just a hangover from the old XkbDescRec, which isn't a very descriptive name. Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| f0cb4ee2 | 2012-03-27 16:15:06 | Update xkb_filter_group_lock_func for xkb_key_direction Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| 3fa7fdd0 | 2012-03-23 17:50:37 | Handle group lock actions The spec is simple here, as this action has no effect on key releases. Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| 3b22373f | 2012-03-23 17:48:35 | Properly free xkb_state's Signed-off-by: Ran Benita <ran234@gmail.com> | ||
| ede84734 | 2012-03-27 12:11:45 | Add enum xkb_key_direction instead of bool Use XKB_KEY_UP instead of 0 and XKB_KEY_DOWN instead of 1. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Reported-by: Ran Benita <ran234@gmail.com> | ||
| 7f471a70 | 2012-03-27 12:07:57 | Add state serialisation API Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| 83b8b4b5 | 2012-03-27 12:07:40 | Cosmetic coding style fixups Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| d039622a | 2012-03-22 17:39:12 | Rename keymap allocation API Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| 3d672fcf | 2012-03-22 14:32:53 | Add LED state API And also convert state.c to use the state API for mods and groups, rather than testing the state members directly. Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| 504cc0b8 | 2012-03-22 14:31:33 | Check for invalid indices in mod/group state API Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| edcaab65 | 2012-03-21 15:25:32 | Round out new state API Signed-off-by: Daniel Stone <daniel@fooishbar.org> | ||
| ecea0d71 | 2012-03-21 02:20:07 | Add new state API Add new API to deal with xkb_state objects, including xkb_state_update_key, which runs the XKB action machinery internally to calculate what exactly happens to the state when a given key is pressed or released. The canonical way to deal with keys is now: struct xkb_state *state = xkb_state_new(xkb); xkb_keysym_t *syms; int num_syms; xkb_state_update_key(state, key, is_down); num_syms = xkb_key_get_syms(state, key, &syms); More state handling API, including a way to get at or ignore preserved modifiers, is on its way. Signed-off-by: Daniel Stone <daniel@fooishbar.org> |