]> Dogcows Code - chaz/openbox/blobdiff - plugins/keyboard/translate.c
move the move/resize functionality into moveresize.c, for use with the netwm atoms...
[chaz/openbox] / plugins / keyboard / translate.c
index 75c077fda0beab6f3da2c38eac49c707b669cdcd..5a45f16723e28693fbd727305cd17d87ff39cdb6 100644 (file)
@@ -1,18 +1,21 @@
 #include "../../kernel/openbox.h"
-#include "keyboard.h"
 #include <glib.h>
 #include <string.h>
 
-guint keyboard_translate_modifier(char *str)
+static guint translate_modifier(char *str)
 {
-    if (!strcmp("Mod1", str) || !strcmp("A", str)) return Mod1Mask;
-    else if (!strcmp("Mod2", str)) return Mod2Mask;
-    else if (!strcmp("Mod3", str)) return Mod3Mask;
-    else if (!strcmp("Mod4", str) || !strcmp("W", str)) return Mod4Mask;
-    else if (!strcmp("Mod5", str)) return Mod5Mask;
-    else if (!strcmp("C", str)) return ControlMask;
-    else if (!strcmp("S", str)) return ShiftMask;
-    g_warning("Invalid modifier '%s' in binding.", str);
+    if (!g_ascii_strcasecmp("Mod1", str) ||
+        !g_ascii_strcasecmp("A", str)) return Mod1Mask;
+    else if (!g_ascii_strcasecmp("Mod2", str)) return Mod2Mask;
+    else if (!g_ascii_strcasecmp("Mod3", str)) return Mod3Mask;
+    else if (!g_ascii_strcasecmp("Mod4", str) ||
+             !g_ascii_strcasecmp("W", str)) return Mod4Mask;
+    else if (!g_ascii_strcasecmp("Mod5", str)) return Mod5Mask;
+    else if (!g_ascii_strcasecmp("Control", str) ||
+             !g_ascii_strcasecmp("C", str)) return ControlMask;
+    else if (!g_ascii_strcasecmp("Shift", str) ||
+             !g_ascii_strcasecmp("S", str)) return ShiftMask;
+    g_message("Invalid modifier '%s' in binding.", str);
     return 0;
 }
 
@@ -36,7 +39,7 @@ gboolean translate_key(char *str, guint *state, guint *keycode)
     /* figure out the mod mask */
     *state = 0;
     for (i = 0; parsed[i] != l; ++i) {
-       guint m = keyboard_translate_modifier(parsed[i]);
+       guint m = translate_modifier(parsed[i]);
        if (!m) goto translation_fail;
        *state |= m;
     }
@@ -44,12 +47,12 @@ gboolean translate_key(char *str, guint *state, guint *keycode)
     /* figure out the keycode */
     sym = XStringToKeysym(l);
     if (sym == NoSymbol) {
-       g_warning("Invalid key name '%s' in key binding.", l);
+       g_message("Invalid key name '%s' in key binding.", l);
        goto translation_fail;
     }
     *keycode = XKeysymToKeycode(ob_display, sym);
-    if (!keycode) {
-       g_warning("Key '%s' does not exist on the display.", l); 
+    if (!*keycode) {
+       g_message("Key '%s' does not exist on the display.", l); 
        goto translation_fail;
     }
 
This page took 0.026077 seconds and 4 git commands to generate.