aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/events.c
diff options
context:
space:
mode:
authorGravatar Brendan Taylor <whateley@gmail.com>2011-04-18 20:11:10 -0600
committerGravatar Brendan Taylor <whateley@gmail.com>2011-04-18 20:23:43 -0600
commit169f53f110ca096d78c986402b5f9237924b8fbc (patch)
tree6edb49d6e65b6f510747c86a1fd58403cf2984fb /src/events.c
parentd17aa83d99e3189a7efd04e4a250643c469d8298 (diff)
escape ' in KEY_PRESS/RELEASE events
Diffstat (limited to 'src/events.c')
-rw-r--r--src/events.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/events.c b/src/events.c
index c588729..62d6414 100644
--- a/src/events.c
+++ b/src/events.c
@@ -160,11 +160,13 @@ vsend_event(int type, const gchar *custom_event, va_list vargs) {
g_string_append_printf (event_message, "%d", va_arg (vargs, int));
break;
case TYPE_STR:
+ /* a string that needs to be escaped */
g_string_append_c (event_message, '\'');
append_escaped (event_message, va_arg (vargs, char*));
g_string_append_c (event_message, '\'');
break;
case TYPE_FORMATTEDSTR:
+ /* a string has already been escaped */
g_string_append (event_message, va_arg (vargs, char*));
break;
case TYPE_NAME:
@@ -293,7 +295,7 @@ key_to_event(guint keyval, guint state, guint is_modifier, gint mode) {
ucs[ulen] = 0;
send_event(mode == GDK_KEY_PRESS ? KEY_PRESS : KEY_RELEASE, NULL,
- TYPE_STR, modifiers, TYPE_FORMATTEDSTR, ucs, NULL);
+ TYPE_STR, modifiers, TYPE_STR, ucs, NULL);
}
/* send keysym for non-printable chars */
else if((keyname = gdk_keyval_name(keyval))){