summaryrefslogtreecommitdiffstats
path: root/desktop-file-monitoring.patch
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@fedoraproject.org>2008-02-14 02:13:40 +0000
committerMatthias Clasen <mclasen@fedoraproject.org>2008-02-14 02:13:40 +0000
commit88014b2ec59cfb19a6dd2aa385bb7df359fadf9b (patch)
treefd53ef0440be02bb1260e1af921de0ae72bd1311 /desktop-file-monitoring.patch
parentf5b219ea94709bb17b0afb83f93d331cd9b91cbf (diff)
downloadgnome-panel-88014b2ec59cfb19a6dd2aa385bb7df359fadf9b.tar.gz
gnome-panel-88014b2ec59cfb19a6dd2aa385bb7df359fadf9b.tar.xz
gnome-panel-88014b2ec59cfb19a6dd2aa385bb7df359fadf9b.zip
Diffstat (limited to 'desktop-file-monitoring.patch')
-rw-r--r--desktop-file-monitoring.patch115
1 files changed, 55 insertions, 60 deletions
diff --git a/desktop-file-monitoring.patch b/desktop-file-monitoring.patch
index 20d2fa4..7048299 100644
--- a/desktop-file-monitoring.patch
+++ b/desktop-file-monitoring.patch
@@ -1,26 +1,26 @@
-diff -up gnome-panel-2.19.92/gnome-panel/launcher.h.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/launcher.h
---- gnome-panel-2.19.92/gnome-panel/launcher.h.desktop-file-monitoring 2007-09-04 13:34:26.000000000 -0400
-+++ gnome-panel-2.19.92/gnome-panel/launcher.h 2007-09-13 12:23:44.000000000 -0400
-@@ -13,6 +13,7 @@
-
- #include "applet.h"
- #include "panel-widget.h"
-+#include <libgnomevfs/gnome-vfs.h>
-
- G_BEGIN_DECLS
-
-@@ -29,6 +30,8 @@ typedef struct {
+diff -up gnome-panel-2.21.91/gnome-panel/launcher.h.desktop-file-monitoring gnome-panel-2.21.91/gnome-panel/launcher.h
+--- gnome-panel-2.21.91/gnome-panel/launcher.h.desktop-file-monitoring 2008-02-11 16:15:47.000000000 -0500
++++ gnome-panel-2.21.91/gnome-panel/launcher.h 2008-02-13 17:50:59.000000000 -0500
+@@ -29,6 +29,8 @@ typedef struct {
GSList *error_dialogs;
gulong destroy_handler;
+
-+ GnomeVFSMonitorHandle *monitor;
++ GFileMonitor *monitor;
} Launcher;
void panel_launcher_create (PanelToplevel *toplevel,
-diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h
---- gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h.desktop-file-monitoring 2007-09-04 13:34:26.000000000 -0400
-+++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h 2007-09-13 12:23:44.000000000 -0400
+@@ -58,7 +60,6 @@ void launcher_load_from_gconf
+ gint position,
+ const char *id);
+
+-void panel_launcher_delete (Launcher *launcher);
+
+ void ask_about_launcher (const char *file,
+ PanelWidget *panel,
+diff -up gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.h.desktop-file-monitoring gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.h
+--- gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.h.desktop-file-monitoring 2008-02-11 16:15:47.000000000 -0500
++++ gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.h 2008-02-13 17:34:43.000000000 -0500
@@ -101,6 +101,8 @@ void panel_ditem_editor_set_uri (PanelDI
const char *uri);
@@ -30,39 +30,39 @@ diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.h.desktop-file-monit
void panel_ditem_register_save_uri_func (PanelDItemEditor *dialog,
PanelDitemSaveUri save_uri,
-diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/launcher.c
---- gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring 2007-09-04 13:34:26.000000000 -0400
-+++ gnome-panel-2.19.92/gnome-panel/launcher.c 2007-09-13 12:23:44.000000000 -0400
-@@ -285,6 +285,8 @@ static void
+diff -up gnome-panel-2.21.91/gnome-panel/launcher.c.desktop-file-monitoring gnome-panel-2.21.91/gnome-panel/launcher.c
+--- gnome-panel-2.21.91/gnome-panel/launcher.c.desktop-file-monitoring 2008-02-11 16:15:47.000000000 -0500
++++ gnome-panel-2.21.91/gnome-panel/launcher.c 2008-02-13 18:04:07.000000000 -0500
+@@ -307,6 +307,8 @@ static void
destroy_launcher (GtkWidget *widget,
Launcher *launcher)
{
-+ if (launcher->monitor)
-+ gnome_vfs_monitor_cancel (launcher->monitor);
++ if (launcher->monitor)
++ g_object_unref (launcher->monitor);
launcher_properties_destroy (launcher);
launcher_widget_destroy_open_dialogs (launcher);
}
-@@ -458,6 +460,37 @@ drag_data_get_cb (GtkWidget *widg
+@@ -488,6 +490,37 @@ drag_data_get_cb (GtkWidget *widg
}
+static void setup_button (Launcher *launcher);
+
+static void
-+desktop_file_changed (GnomeVFSMonitorHandle *handle,
-+ const gchar *monitor_uri,
-+ const gchar *info_uri,
-+ GnomeVFSMonitorEventType event_type,
++desktop_file_changed (GFileMonitor *monitor,
++ GFile *file,
++ GFile *other_file,
++ GFileMonitorEvent event_type,
+ gpointer user_data)
+{
+ Launcher *launcher = user_data;
+ GKeyFile *key_file;
+
-+ if (event_type == GNOME_VFS_MONITOR_EVENT_CHANGED ||
-+ event_type == GNOME_VFS_MONITOR_EVENT_CREATED) {
++ if (event_type == G_FILE_MONITOR_EVENT_CHANGED ||
++ event_type == G_FILE_MONITOR_EVENT_CREATED) {
+ gchar *path;
+
-+ path = gnome_vfs_get_local_path_from_uri (monitor_uri);
++ path = g_file_get_path (file);
+
+ key_file = g_key_file_new ();
+ if (g_key_file_load_from_file (key_file, path,
@@ -80,7 +80,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
static Launcher *
create_launcher (const char *location)
{
-@@ -534,6 +567,25 @@ create_launcher (const char *location)
+@@ -564,6 +597,21 @@ create_launcher (const char *location)
launcher->key_file = key_file;
launcher->prop_dialog = NULL;
launcher->destroy_handler = 0;
@@ -91,22 +91,18 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
+ * file contains a X-Panel-Monitor entry.
+ */
+ if (g_key_file_get_boolean (key_file, "Desktop Entry", "X-Panel-Monitor", NULL)) {
-+ gchar *uri;
-+
-+
++ GFile *file;
+
-+ uri = g_strdup_printf ("file:%s", new_location);
-+ gnome_vfs_monitor_add (&launcher->monitor,
-+ uri,
-+ GNOME_VFS_MONITOR_FILE,
-+ desktop_file_changed,
-+ launcher);
-+ g_free (uri);
++ file = g_file_new_for_path (new_location);
++ launcher->monitor = g_file_monitor_file (file, 0, NULL, NULL);
++ g_signal_connect (launcher->monitor, "changed",
++ G_CALLBACK (desktop_file_changed), launcher);
++ g_object_unref (file);
+ }
/* Icon will be setup later */
launcher->button = button_widget_new (NULL /* icon */,
-@@ -662,6 +714,15 @@ static void
+@@ -694,6 +742,15 @@ static void
launcher_changed (PanelDItemEditor *dialog,
Launcher *launcher)
{
@@ -115,14 +111,14 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
+ * user changes.
+ */
+ if (launcher->monitor) {
-+ gnome_vfs_monitor_cancel (launcher->monitor);
++ g_object_unref (launcher->monitor);
+ launcher->monitor = NULL;
+ }
+
/* Setup the button look */
setup_button (launcher);
}
-@@ -733,6 +794,43 @@ launcher_save_uri (PanelDItemEditor *dia
+@@ -765,6 +822,42 @@ launcher_save_uri (PanelDItemEditor *dia
return NULL;
}
@@ -150,23 +146,22 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
+static void
+start_monitoring (Launcher *launcher)
+{
-+ gchar *uri;
++ GFile *file;
+
-+ uri = g_strdup_printf ("file:%s", launcher->location);
++ file = g_file_new_for_path (launcher->location);
+ if (launcher->monitor)
-+ gnome_vfs_monitor_cancel (launcher->monitor);
-+ gnome_vfs_monitor_add (&launcher->monitor,
-+ uri,
-+ GNOME_VFS_MONITOR_FILE,
-+ desktop_file_changed,
-+ launcher);
-+ g_free (uri);
++ g_object_unref (launcher->monitor);
++ launcher->monitor = g_file_monitor_file (file, 0, NULL, NULL);
++ g_signal_connect (launcher->monitor, "changed",
++ G_CALLBACK (desktop_file_changed),
++ launcher);
++ g_object_unref (file);
+}
+
static void
launcher_saved (GtkWidget *dialog,
Launcher *launcher)
-@@ -740,11 +838,15 @@ launcher_saved (GtkWidget *dialog,
+@@ -772,11 +865,15 @@ launcher_saved (GtkWidget *dialog,
const char *uri;
GConfClient *client;
const char *key;
@@ -182,7 +177,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
if (uri && launcher->location && strcmp (uri, launcher->location)) {
client = panel_gconf_get_client ();
-@@ -757,6 +859,9 @@ launcher_saved (GtkWidget *dialog,
+@@ -789,6 +886,9 @@ launcher_saved (GtkWidget *dialog,
if (launcher->location)
g_free (launcher->location);
launcher->location = g_strdup (uri);
@@ -192,7 +187,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
}
}
-@@ -923,6 +1028,7 @@ launcher_new_saved (GtkWidget *dialog,
+@@ -955,6 +1055,7 @@ launcher_new_saved (GtkWidget *dialog,
PanelWidget *panel;
int pos;
const char *uri;
@@ -200,7 +195,7 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
pos = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (dialog), "pos"));
panel = g_object_get_data (G_OBJECT (dialog), "panel");
-@@ -930,6 +1036,10 @@ launcher_new_saved (GtkWidget *dialog,
+@@ -962,6 +1063,10 @@ launcher_new_saved (GtkWidget *dialog,
uri = panel_ditem_editor_get_uri (PANEL_DITEM_EDITOR (dialog));
if (panel_launcher_get_filename (uri) != NULL)
uri = panel_launcher_get_filename (uri);
@@ -211,9 +206,9 @@ diff -up gnome-panel-2.19.92/gnome-panel/launcher.c.desktop-file-monitoring gnom
panel_launcher_create (panel->toplevel, pos, uri);
}
-diff -up gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c
---- gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring 2007-09-13 12:23:44.000000000 -0400
-+++ gnome-panel-2.19.92/gnome-panel/panel-ditem-editor.c 2007-09-13 12:31:03.000000000 -0400
+diff -up gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.c
+--- gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.c.desktop-file-monitoring 2008-02-13 17:34:43.000000000 -0500
++++ gnome-panel-2.21.91/gnome-panel/panel-ditem-editor.c 2008-02-13 17:34:43.000000000 -0500
@@ -80,6 +80,8 @@ struct _PanelDItemEditorPrivate
/* the directory of the theme for the icon, see bug #119208 */