[vinagre/gnome-3-18] Don't capture key events of other tabs



commit 5079c2527302c486cdebe4577016ddb6562aa434
Author: Marek Kasik <mkasik redhat com>
Date:   Mon Feb 22 11:48:54 2016 +0100

    Don't capture key events of other tabs
    
    Once an RDP tab is opened it captures all key events
    on the Vinagre's window.
    This commit fixes this so the RDP tab captures the events
    just from its own tab.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=752957

 plugins/rdp/vinagre-rdp-tab.c |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)
---
diff --git a/plugins/rdp/vinagre-rdp-tab.c b/plugins/rdp/vinagre-rdp-tab.c
index 3205a67..6110f75 100644
--- a/plugins/rdp/vinagre-rdp-tab.c
+++ b/plugins/rdp/vinagre-rdp-tab.c
@@ -169,7 +169,6 @@ vinagre_rdp_tab_dispose (GObject *object)
 {
   VinagreRdpTab        *rdp_tab = VINAGRE_RDP_TAB (object);
   VinagreRdpTabPrivate *priv = rdp_tab->priv;
-  GtkWindow            *window = GTK_WINDOW (vinagre_tab_get_window (VINAGRE_TAB (rdp_tab)));
 
   if (priv->connected_actions)
     {
@@ -217,13 +216,13 @@ vinagre_rdp_tab_dispose (GObject *object)
 
   if (priv->key_press_handler_id > 0)
     {
-      g_signal_handler_disconnect (window, priv->key_press_handler_id);
+      g_signal_handler_disconnect (GTK_WIDGET (object), priv->key_press_handler_id);
       priv->key_press_handler_id = 0;
     }
 
   if (priv->key_release_handler_id > 0)
     {
-      g_signal_handler_disconnect (window, priv->key_release_handler_id);
+      g_signal_handler_disconnect (GTK_WIDGET (object), priv->key_release_handler_id);
       priv->key_release_handler_id = 0;
     }
 
@@ -1195,11 +1194,11 @@ open_freerdp (VinagreRdpTab *rdp_tab)
       vinagre_rdp_tab_set_scaling (rdp_tab, scaling);
     }
 
-  priv->key_press_handler_id = g_signal_connect (window, "key-press-event",
+  priv->key_press_handler_id = g_signal_connect (GTK_WIDGET (tab), "key-press-event",
                                                  G_CALLBACK (frdp_key_pressed),
                                                  rdp_tab);
 
-  priv->key_release_handler_id = g_signal_connect (window, "key-release-event",
+  priv->key_release_handler_id = g_signal_connect (GTK_WIDGET (tab), "key-release-event",
                                                    G_CALLBACK (frdp_key_pressed),
                                                    rdp_tab);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]