summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-04-22 13:36:25 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-04-22 13:36:25 +0000
commitf9a48fb5e46c387e87c190fc62046e732e776b94 (patch)
treeac839b4f89d7cb09e2193190251684b904eabcac /src/main.c
parent935c6cc0529ae5bd284d3f4e9030c04e3ecddd6a (diff)
handle multiple files via libunique, also use the more reliable get_uris() in libunique
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/main.c b/src/main.c
index 9a5c627..2183b94 100644
--- a/src/main.c
+++ b/src/main.c
@@ -50,7 +50,7 @@ message_received_cb(UniqueApp * app G_GNUC_UNUSED,
{
TrgMainWindow *win;
UniqueResponse res;
- gchar *fileName;
+ gchar **uris;
win = TRG_MAIN_WINDOW(user_data);
@@ -62,10 +62,10 @@ message_received_cb(UniqueApp * app G_GNUC_UNUSED,
res = UNIQUE_RESPONSE_OK;
break;
case COMMAND_ADD:
- fileName = unique_message_data_get_filename(message);
+ uris = unique_message_data_get_uris(message);
res =
trg_add_from_filename(win,
- fileName) ? UNIQUE_RESPONSE_OK :
+ uris) ? UNIQUE_RESPONSE_OK :
UNIQUE_RESPONSE_FAIL;
break;
default:
@@ -104,9 +104,15 @@ int main(int argc, char *argv[])
UniqueMessageData *message;
if (argc > 1) {
+ gchar **files = g_new0(gchar *, argc);
+ int i;
+ for (i = 1; i < argc; i++)
+ files[i - 1] = g_strdup(argv[i]);
+
command = COMMAND_ADD;
message = unique_message_data_new();
- unique_message_data_set_filename(message, argv[1]);
+ unique_message_data_set_uris(message, files);
+ g_strfreev(files);
} else {
command = UNIQUE_ACTIVATE;
message = NULL;