[libwnck] TestWnck: added window role tests



commit 036dc3ea927fbe8deadf712007a4faa0b3d2b7b6
Author: Marco Trevisan (TreviÃo) <mail 3v1n0 net>
Date:   Wed Jan 9 16:27:31 2013 +0100

    TestWnck: added window role tests
    
    https://bugzilla.gnome.org/show_bug.cgi?id=691429

 libwnck/test-wnck.c |   23 +++++++++++++++++++++--
 1 files changed, 21 insertions(+), 2 deletions(-)
---
diff --git a/libwnck/test-wnck.c b/libwnck/test-wnck.c
index 7fb5983..46df1ef 100644
--- a/libwnck/test-wnck.c
+++ b/libwnck/test-wnck.c
@@ -47,6 +47,8 @@ static void window_geometry_changed_callback  (WnckWindow      *window,
                                                gpointer         data);
 static void window_class_changed_callback     (WnckWindow      *window,
                                                gpointer         data);
+static void window_role_changed_callback      (WnckWindow      *window,
+                                               gpointer         data);
 
 static GtkTreeModel* create_tree_model (void);
 static GtkWidget*    create_tree_view  (void);
@@ -165,11 +167,13 @@ window_opened_callback            (WnckScreen    *screen,
                                    WnckWindow    *window,
                                    gpointer       data)
 {
-  g_print ("Window '%s' opened (pid = %d session_id = %s)\n",
+  g_print ("Window '%s' opened (pid = %d, session_id = %s, role = %s)\n",
            wnck_window_get_name (window),
            wnck_window_get_pid (window),
            wnck_window_get_session_id (window) ?
-           wnck_window_get_session_id (window) : "none");
+            wnck_window_get_session_id (window) : "none",
+           wnck_window_get_role (window) ?
+            wnck_window_get_role (window) : "none");
 
   g_signal_connect (G_OBJECT (window), "name_changed",
                     G_CALLBACK (window_name_changed_callback),
@@ -189,6 +193,9 @@ window_opened_callback            (WnckScreen    *screen,
   g_signal_connect (G_OBJECT (window), "class_changed",
                     G_CALLBACK (window_class_changed_callback),
                     NULL);
+  g_signal_connect (G_OBJECT (window), "role_changed",
+                    G_CALLBACK (window_role_changed_callback),
+                    NULL);
 
   queue_refill_model ();
 }
@@ -360,6 +367,18 @@ window_class_changed_callback  (WnckWindow      *window,
            wnck_window_get_name (window), group_name, instance_name);
 }
 
+static void
+window_role_changed_callback  (WnckWindow      *window,
+                               gpointer         data)
+{
+  const char *role;
+
+  role = wnck_window_get_role (window);
+
+  g_print ("Role changed on window '%s': %s\n",
+           wnck_window_get_name (window), role);
+}
+
 static GtkTreeModel*
 create_tree_model (void)
 {



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