[maemo-commits] [maemo-commits] r8317 - in projects/haf/branches/maemo-af-desktop/hildon-desktop: . libhildonwm test

From: www-data at stage.maemo.org www-data at stage.maemo.org
Date: Fri Nov 24 19:47:54 EET 2006
Author: moimart
Date: 2006-11-24 19:47:53 +0200 (Fri, 24 Nov 2006)
New Revision: 8317

Modified:
   projects/haf/branches/maemo-af-desktop/hildon-desktop/ChangeLog
   projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window-view.c
   projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window.c
   projects/haf/branches/maemo-af-desktop/hildon-desktop/test/test4.c
Log:

	* libhildonwm/hd-wm.c:
        * libhildonwm/hd-wm-watched-window.c:
        - Added more emission of signals for appswitchers
	* ChangeLog updated.



Modified: projects/haf/branches/maemo-af-desktop/hildon-desktop/ChangeLog
===================================================================
--- projects/haf/branches/maemo-af-desktop/hildon-desktop/ChangeLog	2006-11-24 16:41:18 UTC (rev 8316)
+++ projects/haf/branches/maemo-af-desktop/hildon-desktop/ChangeLog	2006-11-24 17:47:53 UTC (rev 8317)
@@ -1,5 +1,11 @@
 2006-11-23  Moises Martinez  <moises.martinzes at nokia.com>
 
+	* libhildonwm/hd-wm.c:
+	* libhildonwm/hd-wm-watched-window.c:
+	- Added more emission of signals for appswitchers
+
+2006-11-23  Moises Martinez  <moises.martinzes at nokia.com>
+
 	* libhildonwm/hd-wm.[ch]: Moved to a more consistent GObject behavior.
 
 2006-11-23  Moises Martinez  <moises.martinzes at nokia.com>

Modified: projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window-view.c
===================================================================
--- projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window-view.c	2006-11-24 16:41:18 UTC (rev 8316)
+++ projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window-view.c	2006-11-24 17:47:53 UTC (rev 8317)
@@ -102,6 +102,7 @@
 hd_wm_watched_window_view_destroy (HDWMWatchedWindowView *view)
 {
   HDWMWatchableApp *app;
+  HDWM 		   *hdwm = hd_wm_get_singleton ();
 
   app = hd_wm_watched_window_get_app(view->win_parent);
 
@@ -125,13 +126,11 @@
    * because the whole app is shutting down; make sure AS can handle this
    */
   HN_DBG("removing view info from AS");
- 
-  g_debug ("Here remove an entry from application switcher");
-  /* 
-    hn_app_switcher_remove (hd_wm_get_app_switcher (), view->info);
-  */
-  hd_entry_info_free (view->info);
 
+  g_signal_emit_by_name (hdwm,"entry_info_removed",view->info); 
+  /* FIXME: We cant free the info before the callback returns  
+  hd_entry_info_free (view->info);*/ /*FIXME: MEMORY LEAKKKK*/
+
   g_free (view);
 }
 

Modified: projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window.c
===================================================================
--- projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window.c	2006-11-24 16:41:18 UTC (rev 8316)
+++ projects/haf/branches/maemo-af-desktop/hildon-desktop/libhildonwm/hd-wm-watched-window.c	2006-11-24 17:47:53 UTC (rev 8317)
@@ -142,6 +142,7 @@
   gint    len = 0, offset, w, h, i;
   guchar *rgba_data, *p;
   HDEntryInfo *info;
+  HDWM	      *hdwm = hd_wm_get_singleton ();
 
   rgba_data = p = NULL;
 
@@ -221,7 +222,7 @@
   info = hd_wm_watched_window_peek_info (win);
 
   if (info)
-    g_debug ("%s: %d, hn_app_switcher_changed (hd_wm_get_app_switcher(), info);",__FILE__,__LINE__);
+    g_signal_emit_by_name (hdwm,"entry_info_changed",info);
 
 out:
   if (data)
@@ -235,6 +236,7 @@
   HDWMWatchedWindowView *current_active_view;
   GList                 *iter = NULL;
   HDWMWatchableApp      *app = NULL;
+  HDWM 			*hdwm = hd_wm_get_singleton ();
 
   if (hd_wm_watched_window_get_views (win) == NULL)
     return;
@@ -281,7 +283,7 @@
 
 	  info = hd_wm_watched_window_view_get_info (view);
 	  hd_wm_watched_window_set_active_view (win, view);
-	  g_debug ("%s: %d, hn_app_switcher_changed_stack (hd_wm_get_app_switcher (), info);",__FILE__,__LINE__);
+	  g_signal_emit_by_name (hdwm,"entry_info_stack_changed",info);
 
 	  goto out;
 	}
@@ -301,6 +303,7 @@
 {
   HDWMWatchedWindowView *view;
   int                    n_items = 0;
+  HDWM			*hdwm = hd_wm_get_singleton ();
 
   if (win->name)
     XFree(win->name);
@@ -346,7 +349,7 @@
     hd_wm_watched_window_view_set_name (view, win->name);
   
   if (win->info)
-    g_debug ("%s: %d, hn_app_switcher_changed (hd_wm_get_app_switcher (), win->info);",__FILE__,__LINE__);
+    g_signal_emit_by_name (hdwm,"entry_info_changed",win->info);
 }
 
 static void
@@ -450,6 +453,7 @@
   HDWMWatchableApp *app;
   XWMHints         *wm_hints;
   gboolean          need_icon_sync = FALSE;
+  HDWM		   *hdwm = hd_wm_get_singleton ();
 
   app = hd_wm_watched_window_get_app (win);
 
@@ -464,22 +468,18 @@
                 != (wm_hints->flags & XUrgencyHint))
     need_icon_sync = TRUE;
 
-  if(wm_hints->flags & XUrgencyHint)
-    {
-      HDWM_WIN_SET_FLAG(win,HDWM_WIN_URGENT);
-    }
+  if (wm_hints->flags & XUrgencyHint)
+    HDWM_WIN_SET_FLAG(win,HDWM_WIN_URGENT);
   else
-    {
-      HDWM_WIN_UNSET_FLAG(win,HDWM_WIN_URGENT);
-    }
-
+    HDWM_WIN_UNSET_FLAG(win,HDWM_WIN_URGENT);
+ 
   if (need_icon_sync)
-    {
-      HDEntryInfo *info = hd_wm_watched_window_peek_info (win);
+  {
+    HDEntryInfo *info = hd_wm_watched_window_peek_info (win);
 
-      if(info)
-	g_debug ("%s: %d, hn_app_switcher_changed (hd_wm_get_app_switcher (), info); ",__FILE__,__LINE__);
-    }
+    if (info)
+      g_signal_emit_by_name (hdwm,"entry_info_changed",info);
+  }
   
   XFree(wm_hints);
 }
@@ -518,6 +518,7 @@
   int          i;
   GList       *iter = NULL, *next_iter;
   HDEntryInfo *info;
+  HDWM 	      *hdwm = hd_wm_get_singleton ();
   
   if (hd_wm_watched_window_is_hibernating(win))
     return;
@@ -601,7 +602,8 @@
 
           HN_DBG("adding view info to AS");
           info = hd_wm_watched_window_view_get_info (new_view);
-	  g_debug ("%s: %d,hn_app_switcher_add (hd_wm_get_app_switcher (), info);",__FILE__,__LINE__);
+
+	  g_signal_emit_by_name (hdwm,"entry_info_added",info);
   
           /* The window may have been 'viewless' before this 
            * view was created to we need to remove the widget 
@@ -610,9 +612,8 @@
           if (hd_wm_watched_window_peek_info (win))
             {
               HN_DBG("adding first view; removing window info from AS");
-             
-	      g_debug ("%s: %d, hn_app_switcher_remove(hd_wm_get_app_switcher (),hd_wm_watched_window_peek_info (win));",
-		       __FILE__,__LINE__);
+            
+	      g_signal_emit_by_name (hdwm,"entry_info_removed",hd_wm_watched_window_peek_info (win)); 
 
               /*
                * since the window of multiviewed app does not figure in the AS,
@@ -662,6 +663,7 @@
   if (win_found)
     {
       HDEntryInfo *info = NULL;
+      HDWM	  *hdwm = hd_wm_get_singleton ();
 
       HN_DBG("New Window is from hibernation");
 
@@ -700,7 +702,7 @@
         info = hd_wm_watched_window_peek_info (win);
 
       if (info)
-        g_debug ("%s: %d, hn_app_switcher_changed_stack (hd_wm_get_app_switcher(), info);",__FILE__,__LINE__);
+        g_signal_emit_by_name (hdwm,"entry_info_stack_changed", info);
     }
   else
     win = g_new0 (HDWMWatchedWindow, 1);
@@ -999,7 +1001,8 @@
 {
   HDWMWatchedWindowView *view;
   GtkWidget             *note;
-
+  HDWM			*hdwm = hd_wm_get_singleton ();
+  
   HN_DBG("Removing '%s'", win->name);
 
   /* Dont destroy windows that are hiberating */
@@ -1033,7 +1036,7 @@
     {
       /* only windows of multiwindow apps have their own info */
       HN_DBG("a window of multiwindow application; removing info from AS");
-      g_debug ("%s: %d, hn_app_switcher_remove(hd_wm_get_app_switcher(), win->info);",__FILE__,__LINE__);
+      g_signal_emit_by_name (hdwm,"entry_info_removed",win->info);
       hd_entry_info_free (win->info);
       win->info = NULL;
     }

Modified: projects/haf/branches/maemo-af-desktop/hildon-desktop/test/test4.c
===================================================================
--- projects/haf/branches/maemo-af-desktop/hildon-desktop/test/test4.c	2006-11-24 16:41:18 UTC (rev 8316)
+++ projects/haf/branches/maemo-af-desktop/hildon-desktop/test/test4.c	2006-11-24 17:47:53 UTC (rev 8317)
@@ -3,7 +3,7 @@
 void 
 generic_callback (HDWM *hdwm, HDEntryInfo *info, gpointer data)
 {
-  g_debug ("ACTION: %s app name: %s",hd_entry_info_peek_app_name (info),data);
+  g_debug ("ACTION: %s app name: %s",data,hd_entry_info_peek_app_name (info));
 }
 
 int 
@@ -23,6 +23,16 @@
 		    G_CALLBACK (generic_callback),
 		    g_strdup ("info added"));
 
+  g_signal_connect (G_OBJECT (wm),
+		    "entry_info_stack_changed",
+		    G_CALLBACK (generic_callback),
+		    g_strdup ("stack changed"));
+
+  g_signal_connect (G_OBJECT (wm),
+		    "entry_info_removed",
+		    G_CALLBACK (generic_callback),
+		    g_strdup ("info removed"));
+
   gtk_main ();
 	
   return 0;


More information about the maemo-commits mailing list