[Rawstudio-commit] r2062 - tags/v1.1.1/src
Anders Brander
anders at brander.dk
Sun Oct 12 22:09:55 CEST 2008
Author: abrander
Date: 2008-10-12 22:09:55 +0200 (Sun, 12 Oct 2008)
New Revision: 2062
Modified:
tags/v1.1.1/src/rs-actions.c
tags/v1.1.1/src/rs-batch.c
tags/v1.1.1/src/rs-batch.h
tags/v1.1.1/src/rs-cache.c
tags/v1.1.1/src/rs-external-editor.c
Log:
Backported fix for bug [221], [222], [223], [227], [230] and a fix for exporting to Gimp v. 2.6+ from trunk revision 2060.
Modified: tags/v1.1.1/src/rs-actions.c
===================================================================
--- tags/v1.1.1/src/rs-actions.c 2008-10-12 19:44:54 UTC (rev 2061)
+++ tags/v1.1.1/src/rs-actions.c 2008-10-12 20:09:55 UTC (rev 2062)
@@ -117,7 +117,7 @@
photos_selected = (RS_IS_PHOTO(rs->photo) || (num_selected > 0));
rs_core_action_group_set_sensivity("AddToBatch", photos_selected);
- rs_core_action_group_set_sensivity("RemoveFromBatch", photos_selected);
+ rs_core_action_group_set_sensivity("RemoveFromBatch", photos_selected && rs->photo && rs_batch_exists_in_queue(rs->queue, rs->photo->filename, rs->current_setting));
rs_core_action_group_set_sensivity("ProcessBatch", (rs_batch_num_entries(rs->queue)>0));
g_list_free(selected);
}
@@ -846,7 +846,7 @@
{ "AddToBatch", GTK_STOCK_ADD, _("_Add to batch queue"), "<control>B", NULL, ACTION_CB(add_to_batch) },
{ "AddViewToBatch", NULL, _("_Add current view to queue"), NULL, NULL, ACTION_CB(add_view_to_batch) },
{ "RemoveFromBatch", GTK_STOCK_REMOVE, _("_Remove from batch queue"), "<control><alt>B", NULL, ACTION_CB(remove_from_batch) },
- { "ProcessBatch", GTK_STOCK_CONVERT, _("_Start"), NULL, NULL, ACTION_CB(ProcessBatch) },
+ { "ProcessBatch", GTK_STOCK_EXECUTE, _("_Start"), NULL, NULL, ACTION_CB(ProcessBatch) },
/* help menu */
{ "About", GTK_STOCK_ABOUT, _("_About"), NULL, NULL, ACTION_CB(about) },
Modified: tags/v1.1.1/src/rs-batch.c
===================================================================
--- tags/v1.1.1/src/rs-batch.c 2008-10-12 19:44:54 UTC (rev 2061)
+++ tags/v1.1.1/src/rs-batch.c 2008-10-12 20:09:55 UTC (rev 2062)
@@ -36,7 +36,6 @@
extern GtkWindow *rawstudio_window;
-static gboolean batch_exists_in_queue(RS_QUEUE *queue, const gchar *filename, gint setting_id);
static GtkWidget *make_batchview(RS_QUEUE *queue);
static void size_update_infolabel(RS_QUEUE *queue);
static gchar *batch_queue_filename = NULL;
@@ -202,7 +201,7 @@
rs_batch_add_to_queue(RS_QUEUE *queue, const gchar *filename, const gint setting_id)
{
gboolean ret = FALSE;
- if (!batch_exists_in_queue(queue, filename, setting_id))
+ if (!rs_batch_exists_in_queue(queue, filename, setting_id))
{
gchar *filename_short, *setting_id_abc;
RS_FILETYPE *filetype;
@@ -261,7 +260,7 @@
}
g_object_unref(missing_thumb);
- if (!batch_exists_in_queue(queue, filename, setting_id))
+ if (!rs_batch_exists_in_queue(queue, filename, setting_id))
{
GtkTreeIter iter;
@@ -316,6 +315,10 @@
}
}
g_free(filename_temp);
+
+ /* Break out of the loop if we got a hit */
+ if (ret)
+ break;
} while (gtk_tree_model_iter_next(queue->list, &iter));
}
@@ -326,8 +329,8 @@
return ret;
}
-static gboolean
-batch_exists_in_queue(RS_QUEUE *queue, const gchar *filename, gint setting_id)
+gboolean
+rs_batch_exists_in_queue(RS_QUEUE *queue, const gchar *filename, gint setting_id)
{
gboolean ret = FALSE;
GtkTreeIter iter;
Modified: tags/v1.1.1/src/rs-batch.h
===================================================================
--- tags/v1.1.1/src/rs-batch.h 2008-10-12 19:44:54 UTC (rev 2061)
+++ tags/v1.1.1/src/rs-batch.h 2008-10-12 20:09:55 UTC (rev 2062)
@@ -62,6 +62,7 @@
extern RS_QUEUE* rs_batch_new_queue(void);
extern gboolean rs_batch_add_to_queue(RS_QUEUE *queue, const gchar *filename, const gint setting_id);
extern gboolean rs_batch_remove_from_queue(RS_QUEUE *queue, const gchar *filename, gint setting_id);
+extern gboolean rs_batch_exists_in_queue(RS_QUEUE *queue, const gchar *filename, gint setting_id);
extern void rs_batch_process(RS_QUEUE *queue);
extern GtkWidget *make_batchbox(RS_QUEUE *queue);
Modified: tags/v1.1.1/src/rs-cache.c
===================================================================
--- tags/v1.1.1/src/rs-cache.c 2008-10-12 19:44:54 UTC (rev 2061)
+++ tags/v1.1.1/src/rs-cache.c 2008-10-12 20:09:55 UTC (rev 2062)
@@ -333,7 +333,7 @@
xmlFreeDoc(doc);
g_free(cachename);
- return(TRUE);
+ return mask;
}
void
Modified: tags/v1.1.1/src/rs-external-editor.c
===================================================================
--- tags/v1.1.1/src/rs-external-editor.c 2008-10-12 19:44:54 UTC (rev 2061)
+++ tags/v1.1.1/src/rs-external-editor.c 2008-10-12 20:09:55 UTC (rev 2062)
@@ -62,6 +62,11 @@
system("gimp &");
gint i = 0;
+ // FIXME: We need to sleep a bit with GIMP 2.6 as it doesn't wait until it has opened the photo before it replies...
+ if (rs_has_gimp(2,6,0)) {
+ sleep(5);
+ }
+
while (!reply && i < EXPORT_TO_GIMP_TIMEOUT_SECONDS ) {
sleep(1);
reply = dbus_connection_send_with_reply_and_block (bus, message, -1, NULL);
@@ -71,6 +76,11 @@
dbus_message_unref (message);
+ // FIXME: We still need to sleep a bit because of GIMP 2.6...
+ if (rs_has_gimp(2,6,0)) {
+ sleep(2);
+ }
+
g_unlink(filename->str);
g_string_free(filename, TRUE);
More information about the Rawstudio-commit
mailing list