gtk+ r20005 - in trunk: . gtk



Author: ebassi
Date: Tue Apr 15 23:31:01 2008
New Revision: 20005
URL: http://svn.gnome.org/viewvc/gtk+?rev=20005&view=rev

Log:
2008-04-15  Emmanuele Bassi  <ebassi gnome org>

	* gtk/gtkrecentmanager.c:
	(gtk_recent_manager_add_item_query_info),
	(gtk_recent_manager_add_item): Emit the ::changed signal
	at the end of the asynchronous MIME type query.

Modified:
   trunk/ChangeLog
   trunk/gtk/gtkrecentmanager.c

Modified: trunk/gtk/gtkrecentmanager.c
==============================================================================
--- trunk/gtk/gtkrecentmanager.c	(original)
+++ trunk/gtk/gtkrecentmanager.c	Tue Apr 15 23:31:01 2008
@@ -115,28 +115,28 @@
   PROP_SIZE
 };
 
-static void     gtk_recent_manager_dispose                (GObject           *object);
-static void     gtk_recent_manager_finalize               (GObject           *object);
-static void     gtk_recent_manager_set_property           (GObject           *object,
-						           guint              prop_id,
-						           const GValue      *value,
-						           GParamSpec        *pspec);
-static void     gtk_recent_manager_get_property           (GObject           *object,
-						           guint              prop_id,
-						           GValue            *value,
-						           GParamSpec        *pspec);
-static void     gtk_recent_manager_add_item_query_info_cb (GObject           *source_object,
-                                                           GAsyncResult      *res,
-                                                           gpointer           user_data);
-static void     gtk_recent_manager_monitor_changed        (GFileMonitor      *monitor,
-                                                           GFile             *file,
-                                                           GFile             *other_file,
-                                                           GFileMonitorEvent  event_type,
-                                                           gpointer           user_data);
-static void     gtk_recent_manager_changed                (GtkRecentManager  *manager);
-static void     gtk_recent_manager_real_changed           (GtkRecentManager  *manager);
-static void     gtk_recent_manager_set_filename           (GtkRecentManager  *manager,
-                                                           const gchar       *filename);
+static void     gtk_recent_manager_dispose             (GObject           *object);
+static void     gtk_recent_manager_finalize            (GObject           *object);
+static void     gtk_recent_manager_set_property        (GObject           *object,
+						        guint              prop_id,
+						        const GValue      *value,
+						        GParamSpec        *pspec);
+static void     gtk_recent_manager_get_property        (GObject           *object,
+						        guint              prop_id,
+						        GValue            *value,
+						        GParamSpec        *pspec);
+static void     gtk_recent_manager_add_item_query_info (GObject           *source_object,
+                                                        GAsyncResult      *res,
+                                                        gpointer           user_data);
+static void     gtk_recent_manager_monitor_changed     (GFileMonitor      *monitor,
+                                                        GFile             *file,
+                                                        GFile             *other_file,
+                                                        GFileMonitorEvent  event_type,
+                                                        gpointer           user_data);
+static void     gtk_recent_manager_changed             (GtkRecentManager  *manager);
+static void     gtk_recent_manager_real_changed        (GtkRecentManager  *manager);
+static void     gtk_recent_manager_set_filename        (GtkRecentManager  *manager,
+                                                        const gchar       *filename);
 
 static void build_recent_items_list (GtkRecentManager  *manager);
 static void purge_recent_items_list (GtkRecentManager  *manager,
@@ -701,9 +701,9 @@
 }
 
 static void
-gtk_recent_manager_add_item_query_info_cb (GObject      *source_object,
-                                           GAsyncResult *res,
-                                           gpointer      user_data)
+gtk_recent_manager_add_item_query_info (GObject      *source_object,
+                                        GAsyncResult *res,
+                                        gpointer      user_data)
 {
   GFile *file = G_FILE (source_object);
   GtkRecentManager *manager = user_data;
@@ -745,6 +745,9 @@
    * fields are set */
   gtk_recent_manager_add_full (manager, uri, &recent_data);
 
+  manager->priv->is_dirty = TRUE;
+  gtk_recent_manager_changed (manager);
+
   g_free (recent_data.mime_type);
   g_free (recent_data.app_name);
   g_free (recent_data.app_exec);
@@ -790,7 +793,7 @@
                            G_PRIORITY_DEFAULT,
                            G_FILE_QUERY_INFO_NONE,
                            NULL,
-                           gtk_recent_manager_add_item_query_info_cb,
+                           gtk_recent_manager_add_item_query_info,
                            g_object_ref (manager));
 
   g_object_unref (file);



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