libeek: make GTK key event handling robuster.
This commit is contained in:
		@ -438,20 +438,19 @@ on_key_released (EekKey *key, gpointer user_data)
 | 
			
		||||
    EekGtkKeyboard *keyboard = user_data;
 | 
			
		||||
    EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(keyboard);
 | 
			
		||||
 | 
			
		||||
    if (priv->key)
 | 
			
		||||
    if (priv->key) {
 | 
			
		||||
        key_shrink (EEK_GTK_KEYBOARD(keyboard), EEK_KEY(priv->key));
 | 
			
		||||
    priv->key = NULL;
 | 
			
		||||
        priv->key = NULL;
 | 
			
		||||
    }
 | 
			
		||||
    key_shrink (EEK_GTK_KEYBOARD(keyboard), key);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
press_key (EekGtkKeyboard *keyboard, EekKey *key)
 | 
			
		||||
{
 | 
			
		||||
    EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(keyboard);
 | 
			
		||||
    if (priv->key != key) {
 | 
			
		||||
        if (priv->key)
 | 
			
		||||
            g_signal_emit_by_name (priv->key, "released", keyboard);
 | 
			
		||||
    if (priv->key != key)
 | 
			
		||||
        g_signal_emit_by_name (key, "pressed", keyboard);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user