summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libgnomekbd/gkbd-keyboard-drawing.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libgnomekbd/gkbd-keyboard-drawing.c b/libgnomekbd/gkbd-keyboard-drawing.c
index 6eb4b7c..cf32d57 100644
--- a/libgnomekbd/gkbd-keyboard-drawing.c
+++ b/libgnomekbd/gkbd-keyboard-drawing.c
@@ -1593,6 +1593,8 @@ unpress_keys (GkbdKeyboardDrawing * drawing)
{
gint i;
+ drawing->timeout = 0;
+
if (!drawing->xkb)
return FALSE;
@@ -1615,7 +1617,7 @@ focus_event (GtkWidget * widget,
if (event->in && drawing->timeout > 0) {
g_source_remove (drawing->timeout);
drawing->timeout = 0;
- } else
+ } else if (!drawing->timeout)
drawing->timeout =
g_timeout_add (120, (GSourceFunc) unpress_keys,
drawing);