summaryrefslogtreecommitdiffstats
path: root/input/keycodes.c
Commit message (Collapse)AuthorAgeFilesLines
* input: make key bindings like "Shift+X" work (for ASCII)wm42014-08-261-3/+25
| | | | | | | | | | | | | | "Shift+X" didn't actually map any key, as opposed to "Shift+x". This is because shift usually changes the case of a character, so a plain printable character like "X" simply can never be combined with shift. But this is not very intuitive. Always remove the shift code from printable characters. Also, for ASCII, actually apply the case mapping to uppercase characters if combined with shift. Doing this for unicode in general would be nice, but that would require lookup tables. In general, we don't know anyway what character a key produces when combined with shift - it could be anything, and depends on the keyboard layout.
* build: include <strings.h> for strcasecmp()wm42014-07-101-0/+1
| | | | | | | It happens to work without strings.h on glibc or with _GNU_SOURCE, but the POSIX standard requires including <strings.h>. Hopefully fixes OSX build.
* keycodes: add const to a function argumentwm42014-02-171-1/+1
|
* input: use bstr_xappend()wm42013-12-301-12/+22
| | | | To get rid of mp_append_utf8_buffer().
* input: split off some code from input.c to separate fileswm42013-12-261-0/+321
This is mostly just moving code around.