From fa26df4fce7230c990711ee5a2de42c87a254b0d Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Wed, 11 Jan 2012 00:43:01 +0200 Subject: [PATCH 1/2] terminal: also unref the idle object Signed-off-by: Ran Benita --- src/terminal.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/terminal.c b/src/terminal.c index ec61bfd..4376c64 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -181,6 +181,7 @@ void kmscon_terminal_unref(struct kmscon_terminal *term) kmscon_vte_unref(term->vte); kmscon_console_unref(term->console); kmscon_terminal_disconnect_eloop(term); + kmscon_idle_unref(term->redraw); free(term); log_debug("terminal: destroying terminal object\n"); } From e662dce0c363374eded8d54503984415f1524f04 Mon Sep 17 00:00:00 2001 From: Ran Benita Date: Wed, 18 Jan 2012 18:54:48 +0200 Subject: [PATCH 2/2] xkb: don't fill events purely for modifiers We have no use for Control_L or Alt_R by themselves, the information is in the "mods" field. Signed-off-by: Ran Benita --- src/input_xkb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/input_xkb.c b/src/input_xkb.c index bf2c609..e21c824 100644 --- a/src/input_xkb.c +++ b/src/input_xkb.c @@ -698,7 +698,7 @@ bool kmscon_xkb_process_evdev_key(struct xkb_desc *desc, } event_filled = false; - if (key_state != KMSCON_KEY_RELEASED) { + if (key_state != KMSCON_KEY_RELEASED && !state_changed) { out->keycode = code; out->keysym = sym; /* 1-to-1 match - this might change. */