diff options
| author | Dana Jansens <danakj@orodu.net> | 2007-07-26 22:05:53 -0400 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2008-01-20 01:36:55 -0500 |
| commit | 759e9f58a8cc02b78bc85b4454f133544e3ac36e (patch) | |
| tree | 9bd7220b7df84482ad8b580d55e3287843b20ce2 /openbox/translate.c | |
| parent | 1aac72bc4cfffdd816347d305624b15d0ae2112e (diff) | |
change openbox to use the libotk's keyboard.[ch] stuff instead of the old modkeys.[ch] and some of translate.[ch]
Diffstat (limited to 'openbox/translate.c')
| -rw-r--r-- | openbox/translate.c | 43 |
1 files changed, 8 insertions, 35 deletions
diff --git a/openbox/translate.c b/openbox/translate.c index 263bffa4..7e89e32c 100644 --- a/openbox/translate.c +++ b/openbox/translate.c @@ -19,9 +19,9 @@ #include "openbox.h" #include "mouse.h" -#include "modkeys.h" -#include "translate.h" #include "gettext.h" +#include "obt/keyboard.h" + #include <glib.h> #include <string.h> #include <stdlib.h> @@ -38,23 +38,23 @@ static guint translate_modifier(gchar *str) else if (!g_ascii_strcasecmp("Control", str) || !g_ascii_strcasecmp("C", str)) - mask = modkeys_key_to_mask(OB_MODKEY_KEY_CONTROL); + mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_CONTROL); else if (!g_ascii_strcasecmp("Alt", str) || !g_ascii_strcasecmp("A", str)) - mask = modkeys_key_to_mask(OB_MODKEY_KEY_ALT); + mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_ALT); else if (!g_ascii_strcasecmp("Meta", str) || !g_ascii_strcasecmp("M", str)) - mask = modkeys_key_to_mask(OB_MODKEY_KEY_META); + mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_META); /* W = windows key, is linked to the Super_L/R buttons */ else if (!g_ascii_strcasecmp("Super", str) || !g_ascii_strcasecmp("W", str)) - mask = modkeys_key_to_mask(OB_MODKEY_KEY_SUPER); + mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_SUPER); else if (!g_ascii_strcasecmp("Shift", str) || !g_ascii_strcasecmp("S", str)) - mask = modkeys_key_to_mask(OB_MODKEY_KEY_SHIFT); + mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_SHIFT); else if (!g_ascii_strcasecmp("Hyper", str) || !g_ascii_strcasecmp("H", str)) - mask = modkeys_key_to_mask(OB_MODKEY_KEY_HYPER); + mask = obt_keyboard_modkey_to_modmask(OBT_KEYBOARD_MODKEY_HYPER); else g_message(_("Invalid modifier key '%s' in key/mouse binding"), str); @@ -158,30 +158,3 @@ translation_fail: g_strfreev(parsed); return ret; } - -gchar *translate_keycode(guint keycode) -{ - KeySym sym; - const gchar *ret = NULL; - - if ((sym = XKeycodeToKeysym(obt_display, keycode, 0)) != NoSymbol) - ret = XKeysymToString(sym); - return g_locale_to_utf8(ret, -1, NULL, NULL, NULL); -} - -gunichar translate_unichar(guint keycode) -{ - gunichar unikey = 0; - - char *key; - if ((key = translate_keycode(keycode)) != NULL && - /* don't accept keys that aren't a single letter, like "space" */ - key[1] == '\0') - { - unikey = g_utf8_get_char_validated(key, -1); - if (unikey == (gunichar)-1 || unikey == (gunichar)-2 || unikey == 0) - unikey = 0; - } - g_free(key); - return unikey; -} |
