[Xfce4-commits] thunar:jannis/port-to-udev Also react on undev change events.
Updating branch refs/heads/jannis/port-to-udev to 877f0d2125336f041c6d618ae00a8974ff08baab (commit) from ce5c871fdf28b33f393a2ff26eacb4148372dbee (commit) commit 877f0d2125336f041c6d618ae00a8974ff08baab Author: Jannis Pohlmann jan...@xfce.org Date: Thu Jan 28 19:56:19 2010 +0100 Also react on undev change events. thunar/thunar-application.c | 71 +-- 1 files changed, 1 insertions(+), 70 deletions(-) diff --git a/thunar/thunar-application.c b/thunar/thunar-application.c index b3709bc..32b6a83 100644 --- a/thunar/thunar-application.c +++ b/thunar/thunar-application.c @@ -103,11 +103,6 @@ static void thunar_application_uevent (GUdevClient const gchar *action, GUdevDevice *device, ThunarApplication *application); -#if 0 -static void thunar_application_drive_eject (GVolumeMonitor *volume_monitor, - GDrive *drive, - ThunarApplication *application); -#endif static gboolean thunar_application_volman_idle(gpointer user_data); static void thunar_application_volman_idle_destroy(gpointer user_data); static void thunar_application_volman_watch (GPid pid, @@ -220,14 +215,6 @@ thunar_application_init (ThunarApplication *application) } #ifdef HAVE_GUDEV -#if 0 - /* connect to the volume manager */ - application-volume_monitor = g_volume_monitor_get (); - - /* connect the volume manager support callbacks (used to spawn thunar-volman appropriately) */ - g_signal_connect (application-volume_monitor, drive-eject-button, G_CALLBACK (thunar_application_drive_eject), application); -#endif - /* establish connection with udev */ application-udev_client = g_udev_client_new (subsystems); @@ -272,11 +259,6 @@ thunar_application_finalize (GObject *object) g_slist_foreach (application-volman_udis, (GFunc) g_free, NULL); g_slist_free (application-volman_udis); -#if 0 - /* disconnect from the volume monitor */ - g_object_unref (application-volume_monitor); -#endif - /* disconnect from the udev client */ g_object_unref (application-udev_client); #endif @@ -512,7 +494,7 @@ thunar_application_uevent (GUdevClient *client, sysfs_path = g_udev_device_get_sysfs_path (device); /* distinguish between add and remove actions, ignore change and move */ - if (g_strcmp0 (action, add) == 0) + if (g_strcmp0 (action, add) == 0 || g_strcmp0 (action, change) == 0) { /* only insert the path if we don't have it already */ if (g_slist_find_custom (application-volman_udis, sysfs_path, @@ -551,57 +533,6 @@ thunar_application_uevent (GUdevClient *client, -#if 0 -static void -thunar_application_drive_eject (GVolumeMonitor*volume_monitor, -GDrive*drive, -ThunarApplication *application) -{ - GdkScreen *screen; - GError*err = NULL; - gchar *argv[4]; - gchar *udi; - - _thunar_return_if_fail (G_IS_VOLUME_MONITOR (volume_monitor)); - _thunar_return_if_fail (application-volume_monitor == volume_monitor); - _thunar_return_if_fail (G_IS_DRIVE (drive)); - _thunar_return_if_fail (THUNAR_IS_APPLICATION (application)); - - /* determine the HAL UDI for this device */ - udi = g_drive_get_identifier (drive, G_VOLUME_IDENTIFIER_KIND_HAL_UDI); - - /* check if we have a UDI */ - if (G_LIKELY (udi != NULL)) -{ - /* generate the argument list for exo-eject */ - argv[0] = (gchar *) exo-eject; - argv[1] = (gchar *) -h; - argv[2] = (gchar *) udi; - argv[3] = NULL; - - /* locate the currently active screen (the one with the pointer) */ - screen = xfce_gdk_screen_get_active (NULL); - - /* try to spawn the volume_monitor on the active screen */ - if (!gdk_spawn_on_screen (screen, NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, err)) -{ - /* failed to launch exo-eject, inform the user about this */ - thunar_dialogs_show_error (screen, err, _(Failed to execute \%s\), exo-eject); - g_error_free (err); -} - else -{ - /* we most probably removed the device */ - thunar_application_drive_disconnected (volume_monitor, drive, application); -} - - g_free (udi); -} -} -#endif - - - static gboolean thunar_application_volman_idle (gpointer user_data) { ___ Xfce4-commits mailing list Xfce4-commits@xfce.org
[Xfce4-commits] thunar:jannis/port-to-udev Also react on undev change events.
Updating branch refs/heads/jannis/port-to-udev to 396557ff7d62bd277d3537db4ad5011d7492feee (commit) from e9ca683579c6dd6366bc9657bf0ebf4e97186231 (commit) commit 396557ff7d62bd277d3537db4ad5011d7492feee Author: Jannis Pohlmann jan...@xfce.org Date: Thu Jan 28 19:56:19 2010 +0100 Also react on undev change events. thunar/thunar-application.c | 71 +-- 1 files changed, 1 insertions(+), 70 deletions(-) diff --git a/thunar/thunar-application.c b/thunar/thunar-application.c index b3709bc..32b6a83 100644 --- a/thunar/thunar-application.c +++ b/thunar/thunar-application.c @@ -103,11 +103,6 @@ static void thunar_application_uevent (GUdevClient const gchar *action, GUdevDevice *device, ThunarApplication *application); -#if 0 -static void thunar_application_drive_eject (GVolumeMonitor *volume_monitor, - GDrive *drive, - ThunarApplication *application); -#endif static gboolean thunar_application_volman_idle(gpointer user_data); static void thunar_application_volman_idle_destroy(gpointer user_data); static void thunar_application_volman_watch (GPid pid, @@ -220,14 +215,6 @@ thunar_application_init (ThunarApplication *application) } #ifdef HAVE_GUDEV -#if 0 - /* connect to the volume manager */ - application-volume_monitor = g_volume_monitor_get (); - - /* connect the volume manager support callbacks (used to spawn thunar-volman appropriately) */ - g_signal_connect (application-volume_monitor, drive-eject-button, G_CALLBACK (thunar_application_drive_eject), application); -#endif - /* establish connection with udev */ application-udev_client = g_udev_client_new (subsystems); @@ -272,11 +259,6 @@ thunar_application_finalize (GObject *object) g_slist_foreach (application-volman_udis, (GFunc) g_free, NULL); g_slist_free (application-volman_udis); -#if 0 - /* disconnect from the volume monitor */ - g_object_unref (application-volume_monitor); -#endif - /* disconnect from the udev client */ g_object_unref (application-udev_client); #endif @@ -512,7 +494,7 @@ thunar_application_uevent (GUdevClient *client, sysfs_path = g_udev_device_get_sysfs_path (device); /* distinguish between add and remove actions, ignore change and move */ - if (g_strcmp0 (action, add) == 0) + if (g_strcmp0 (action, add) == 0 || g_strcmp0 (action, change) == 0) { /* only insert the path if we don't have it already */ if (g_slist_find_custom (application-volman_udis, sysfs_path, @@ -551,57 +533,6 @@ thunar_application_uevent (GUdevClient *client, -#if 0 -static void -thunar_application_drive_eject (GVolumeMonitor*volume_monitor, -GDrive*drive, -ThunarApplication *application) -{ - GdkScreen *screen; - GError*err = NULL; - gchar *argv[4]; - gchar *udi; - - _thunar_return_if_fail (G_IS_VOLUME_MONITOR (volume_monitor)); - _thunar_return_if_fail (application-volume_monitor == volume_monitor); - _thunar_return_if_fail (G_IS_DRIVE (drive)); - _thunar_return_if_fail (THUNAR_IS_APPLICATION (application)); - - /* determine the HAL UDI for this device */ - udi = g_drive_get_identifier (drive, G_VOLUME_IDENTIFIER_KIND_HAL_UDI); - - /* check if we have a UDI */ - if (G_LIKELY (udi != NULL)) -{ - /* generate the argument list for exo-eject */ - argv[0] = (gchar *) exo-eject; - argv[1] = (gchar *) -h; - argv[2] = (gchar *) udi; - argv[3] = NULL; - - /* locate the currently active screen (the one with the pointer) */ - screen = xfce_gdk_screen_get_active (NULL); - - /* try to spawn the volume_monitor on the active screen */ - if (!gdk_spawn_on_screen (screen, NULL, argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, err)) -{ - /* failed to launch exo-eject, inform the user about this */ - thunar_dialogs_show_error (screen, err, _(Failed to execute \%s\), exo-eject); - g_error_free (err); -} - else -{ - /* we most probably removed the device */ - thunar_application_drive_disconnected (volume_monitor, drive, application); -} - - g_free (udi); -} -} -#endif - - - static gboolean thunar_application_volman_idle (gpointer user_data) { ___ Xfce4-commits mailing list Xfce4-commits@xfce.org