brasero r1113 - in trunk: . src
- From: philippr svn gnome org
- To: svn-commits-list gnome org
- Subject: brasero r1113 - in trunk: . src
- Date: Mon, 18 Aug 2008 12:51:26 +0000 (UTC)
Author: philippr
Date: Mon Aug 18 12:51:25 2008
New Revision: 1113
URL: http://svn.gnome.org/viewvc/brasero?rev=1113&view=rev
Log:
cleanups
* src/brasero-metadata.c (brasero_metadata_stop),
(brasero_metadata_completed), (brasero_metadata_finalize):
Modified:
trunk/ChangeLog
trunk/src/brasero-metadata.c
trunk/src/brasero-project-manager.c
Modified: trunk/src/brasero-metadata.c
==============================================================================
--- trunk/src/brasero-metadata.c (original)
+++ trunk/src/brasero-metadata.c Mon Aug 18 12:51:25 2008
@@ -66,7 +66,6 @@
GstElement *snapshot;
- GMainLoop *loop;
GError *error;
guint watch;
@@ -309,10 +308,6 @@
/* use broadcast here as there could be more than one thread waiting */
g_cond_broadcast (priv->cond);
g_mutex_unlock (priv->mutex);
-
- /* stop loop */
- if (priv->loop && g_main_loop_is_running (priv->loop))
- g_main_loop_quit (priv->loop);
}
void
@@ -339,15 +334,14 @@
BraseroMetadataPrivate *priv;
priv = BRASERO_METADATA_PRIVATE (self);
- if ((!priv->loop || !g_main_loop_is_running (priv->loop)) && !priv->cond) {
- /* we send a message only if we haven't got a loop (= async mode) */
- g_object_ref (self);
- g_signal_emit (G_OBJECT (self),
- brasero_metadata_signals [COMPLETED_SIGNAL],
- 0,
- priv->error);
- g_object_unref (self);
- }
+
+ /* we send a message only if we haven't got a loop (= async mode) */
+ g_object_ref (self);
+ g_signal_emit (G_OBJECT (self),
+ brasero_metadata_signals [COMPLETED_SIGNAL],
+ 0,
+ priv->error);
+ g_object_unref (self);
brasero_metadata_stop (self);
return TRUE;
@@ -1449,54 +1443,6 @@
}
gboolean
-brasero_metadata_get_info_sync (BraseroMetadata *self,
- const gchar *uri,
- BraseroMetadataFlag flags,
- GError **error)
-{
- BraseroMetadataPrivate *priv;
-
- priv = BRASERO_METADATA_PRIVATE (self);
-
- priv->flags = flags;
-
- if (!brasero_metadata_set_new_uri (self, uri)) {
- g_propagate_error (error, priv->error);
- priv->error = NULL;
-
- brasero_metadata_info_free (priv->info);
- priv->info = NULL;
-
- return FALSE;
- }
-
- priv->started = 1;
- gst_element_set_state (GST_ELEMENT (priv->pipeline), BRASERO_METADATA_INITIAL_STATE);
-
- /* run the loop until it's finished */
- priv->loop = g_main_loop_new (NULL, FALSE);
- g_main_loop_run (priv->loop);
- g_main_loop_unref (priv->loop);
- priv->loop = NULL;
-
- if (priv->error) {
- if (error) {
- g_propagate_error (error, priv->error);
- priv->error = NULL;
- }
- else {
- BRASERO_BURN_LOG ("ERROR getting metadata : %s\n", priv->error->message);
- g_error_free (priv->error);
- priv->error = NULL;
- }
-
- return FALSE;
- }
-
- return TRUE;
-}
-
-gboolean
brasero_metadata_get_info_async (BraseroMetadata *self,
const gchar *uri,
BraseroMetadataFlag flags)
@@ -1639,14 +1585,6 @@
priv->watch = 0;
}
- if (priv->loop) {
- if (g_main_loop_is_running (priv->loop))
- g_main_loop_quit (priv->loop);
-
- g_main_loop_unref (priv->loop);
- priv->loop = NULL;
- }
-
if (priv->info) {
brasero_metadata_info_free (priv->info);
priv->info = NULL;
Modified: trunk/src/brasero-project-manager.c
==============================================================================
--- trunk/src/brasero-project-manager.c (original)
+++ trunk/src/brasero-project-manager.c Mon Aug 18 12:51:25 2008
@@ -175,6 +175,9 @@
GtkWidget *layout;
GtkWidget *status;
+ gchar **selected;
+ guint preview_id;
+
guint status_ctx;
GtkActionGroup *action_group;
@@ -337,29 +340,13 @@
files_num);
}
-void
-brasero_project_manager_selected_uris_changed (BraseroURIContainer *container,
- BraseroProjectManager *manager)
+static gboolean
+brasero_project_manager_selected_uris_preview (gpointer data)
{
+ BraseroProjectManager *manager = BRASERO_PROJECT_MANAGER (data);
BraseroIOFlags flags;
- gchar **uris, **iter;
GSList *list = NULL;
-
- /* if we are in the middle of an unfinished size seek then
- * cancel it and re-initialize */
- if (manager->priv->io)
- brasero_io_cancel_by_base (manager->priv->io,
- manager->priv->size_preview);
-
- uris = brasero_uri_container_get_selected_uris (container);
- if (!uris) {
- gtk_statusbar_pop (GTK_STATUSBAR (manager->priv->status),
- manager->priv->status_ctx);
- gtk_statusbar_push (GTK_STATUSBAR (manager->priv->status),
- manager->priv->status_ctx,
- _("No file selected"));
- return;
- }
+ gchar **iter;
if (!manager->priv->io)
manager->priv->io = brasero_io_get_default ();
@@ -370,7 +357,7 @@
NULL,
brasero_project_manager_size_preview_progress);
- for (iter = uris; iter && *iter; iter ++)
+ for (iter = manager->priv->selected; iter && *iter; iter ++)
list = g_slist_prepend (list, *iter);
flags = BRASERO_IO_INFO_RECURSIVE|BRASERO_IO_INFO_IDLE;
@@ -384,7 +371,46 @@
NULL);
g_slist_free (list);
- g_strfreev (uris);
+ g_strfreev (manager->priv->selected);
+ manager->priv->selected = NULL;
+
+ manager->priv->preview_id = 0;
+ return FALSE;
+}
+
+void
+brasero_project_manager_selected_uris_changed (BraseroURIContainer *container,
+ BraseroProjectManager *manager)
+{
+ /* if we are in the middle of an unfinished size seek then
+ * cancel it and re-initialize */
+ if (manager->priv->io)
+ brasero_io_cancel_by_base (manager->priv->io,
+ manager->priv->size_preview);
+
+ if (manager->priv->selected) {
+ g_strfreev (manager->priv->selected);
+ manager->priv->selected = NULL;
+ }
+
+ if (manager->priv->preview_id) {
+ g_source_remove (manager->priv->preview_id);
+ manager->priv->preview_id = 0;
+ }
+
+ manager->priv->selected = brasero_uri_container_get_selected_uris (container);
+ if (!manager->priv->selected) {
+ gtk_statusbar_pop (GTK_STATUSBAR (manager->priv->status),
+ manager->priv->status_ctx);
+ gtk_statusbar_push (GTK_STATUSBAR (manager->priv->status),
+ manager->priv->status_ctx,
+ _("No file selected"));
+ return;
+ }
+
+ manager->priv->preview_id = g_timeout_add (500,
+ brasero_project_manager_selected_uris_preview,
+ manager);
}
void
@@ -400,6 +426,16 @@
gtk_statusbar_pop (GTK_STATUSBAR (manager->priv->status),
manager->priv->status_ctx);
+
+ if (manager->priv->selected) {
+ g_strfreev (manager->priv->selected);
+ manager->priv->selected = NULL;
+ }
+
+ if (manager->priv->preview_id) {
+ g_source_remove (manager->priv->preview_id);
+ manager->priv->preview_id = 0;
+ }
}
}
@@ -1094,6 +1130,16 @@
cobj->priv->io = NULL;
}
+ if (cobj->priv->preview_id) {
+ g_source_remove (cobj->priv->preview_id);
+ cobj->priv->preview_id = 0;
+ }
+
+ if (cobj->priv->selected) {
+ g_strfreev (cobj->priv->selected);
+ cobj->priv->selected = NULL;
+ }
+
g_free (cobj->priv);
G_OBJECT_CLASS (parent_class)->finalize (object);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]