summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac16
-rw-r--r--src/main.c45
-rw-r--r--src/trg-gtk-app.c5
-rw-r--r--src/trg-main-window.c8
-rw-r--r--src/trg-main-window.h1
-rw-r--r--src/util.c47
-rw-r--r--src/util.h9
-rw-r--r--src/win32-mailslot.c4
-rw-r--r--src/win32-mailslot.h5
9 files changed, 72 insertions, 68 deletions
diff --git a/configure.ac b/configure.ac
index 34be811..d73cf8d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -84,9 +84,6 @@ if test x$with_libproxy != xno; then
PKG_CHECK_MODULES([libproxy], [libproxy-1.0], AC_DEFINE(HAVE_LIBPROXY, 1, [Define if libproxy is available]), AC_MSG_WARN([libproxy is required for HTTP proxy support]))
fi
-if test x$with_libappindicator != xno; then
- PKG_CHECK_MODULES([libappindicator], [appindicator-0.1], AC_DEFINE(HAVE_LIBAPPINDICATOR, 1, [Define if libappindicator is available]), AC_MSG_WARN([Ubuntu Unity users should consider building with libappindicator]))
-fi
AC_ARG_ENABLE(debug, [AS_HELP_STRING(--enable-debug,
[enable debugging])])
@@ -97,13 +94,20 @@ fi
PKG_CHECK_MODULES([jsonglib], [json-glib-1.0 >= 0.8])
PKG_CHECK_MODULES([gthread], [gthread-2.0])
-dnl PKG_CHECK_MODULES([gtk], [gtk+-3.0 >= 3.00], [], [
-dnl AC_MSG_WARN([gtk+-3.0 not found, trying gtk+-2.0])
+PKG_CHECK_MODULES([gtk], [gtk+-3.0 >= 3.00], [
+if test x$with_libappindicator != xno; then
+ PKG_CHECK_MODULES([libappindicator], [appindicator3-0.1], AC_DEFINE(HAVE_LIBAPPINDICATOR, 1, [Define if libappindicator is available]), AC_MSG_WARN([Ubuntu Unity users should consider building with libappindicator]))
+fi
+], [
+AC_MSG_WARN([gtk+-3.0 not found, trying gtk+-2.0])
PKG_CHECK_MODULES([gtk], [gtk+-2.0 >= 2.16])
+if test x$with_libappindicator != xno; then
+ PKG_CHECK_MODULES([libappindicator], [appindicator-0.1], AC_DEFINE(HAVE_LIBAPPINDICATOR, 1, [Define if libappindicator is available]), AC_MSG_WARN([Ubuntu Unity users should consider building with libappindicator]))
+fi
if test x$with_libunique != xno; then
PKG_CHECK_MODULES([unique], [unique-1.0], AC_DEFINE(HAVE_LIBUNIQUE, 1, [Define if libunique is available]), AC_MSG_WARN([libunique is required for opening torrents on gtk+-2.0. not needed for gtk+-3.0 or win32. ]))
fi
-dnl ])
+])
PKG_CHECK_MODULES([libcurl], [libcurl])
PKG_CHECK_MODULES([gio], [gio-2.0 >= 2.22])
diff --git a/src/main.c b/src/main.c
index 980e719..b07d20b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -245,3 +245,48 @@ int main(int argc, char *argv[])
return exitCode;
}
+
+/* Utility functions. */
+
+#if WIN32 || !GTK_CHECK_VERSION( 3, 0, 0 )
+
+static gchar **convert_args(int argc, char *argv[])
+{
+ gchar *cwd = g_get_current_dir();
+ gchar **files = NULL;
+
+ if (argc > 1) {
+ GSList *list = NULL;
+ int i;
+
+ for (i = 1; i < argc; i++) {
+ if (is_minimised_arg(argv[i])) {
+ continue;
+ } else if (!is_url(argv[i]) && !is_magnet(argv[i])
+ && g_file_test(argv[i], G_FILE_TEST_IS_REGULAR)
+ && !g_path_is_absolute(argv[i])) {
+ list = g_slist_append(list,
+ g_build_path(G_DIR_SEPARATOR_S, cwd,
+ argv[i], NULL));
+ } else {
+ list = g_slist_append(list, g_strdup(argv[i]));
+ }
+ }
+
+ if (list) {
+ GSList *li;
+ files = g_new0(gchar *, g_slist_length(list) + 1);
+ i = 0;
+ for (li = list; li; li = g_slist_next(li)) {
+ files[i++] = li->data;
+ }
+ g_slist_free(list);
+ }
+ }
+
+ g_free(cwd);
+
+ return files;
+}
+
+#endif
diff --git a/src/trg-gtk-app.c b/src/trg-gtk-app.c
index 9af7240..f08f32f 100644
--- a/src/trg-gtk-app.c
+++ b/src/trg-gtk-app.c
@@ -105,11 +105,6 @@ trg_gtk_app_command_line(GApplication * application,
if (argv && argv[0])
auto_connect_if_required(TRG_MAIN_WINDOW(windows->data), argv);
- /*if (argv && argv[0])
- trg_main_window_set_start_args(TRG_MAIN_WINDOW(windows->data),
- argv);*/
-
-
return 0;
}
diff --git a/src/trg-main-window.c b/src/trg-main-window.c
index 27b09a4..a6dfc9f 100644
--- a/src/trg-main-window.c
+++ b/src/trg-main-window.c
@@ -499,12 +499,6 @@ gint trg_add_from_filename(TrgMainWindow * win, gchar ** uris)
return EXIT_SUCCESS;
}
-/*void trg_main_window_set_start_args(TrgMainWindow * window, gchar ** args)
-{
- TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(window);
- priv->args = args;
-}*/
-
static void resume_all_cb(GtkWidget * w G_GNUC_UNUSED, gpointer data)
{
TrgMainWindowPrivate *priv = TRG_MAIN_WINDOW_GET_PRIVATE(data);
@@ -1133,7 +1127,7 @@ static void update_whatever_statusicon(TrgMainWindow * win,
gchar *seedingLabel;
gchar buf[32];
- trg_strlsize(buf, stats->downRateTotal);
+ trg_strlspeed(buf, stats->downRateTotal);
downloadingLabel = g_strdup_printf(_("%d Downloading @ %s"),
stats->down, buf);
gtk_menu_item_set_label(GTK_MENU_ITEM(priv->iconDownloadingItem),
diff --git a/src/trg-main-window.h b/src/trg-main-window.h
index e9f3d6d..9422cfd 100644
--- a/src/trg-main-window.h
+++ b/src/trg-main-window.h
@@ -73,7 +73,6 @@ void trg_main_window_notebook_set_visible(TrgMainWindow * win,
gboolean visible);
void connect_cb(GtkWidget * w, gpointer data);
void trg_main_window_reload_dir_aliases(TrgMainWindow * win);
-void trg_main_window_set_start_args(TrgMainWindow * window, gchar ** args);
#if !GTK_CHECK_VERSION(2, 21, 1)
#define gdk_drag_context_get_actions(context) context->actions
diff --git a/src/util.c b/src/util.c
index 944be9a..0d63060 100644
--- a/src/util.c
+++ b/src/util.c
@@ -168,12 +168,12 @@ char *tr_formatter_speed_KBps(char *buf, double KBps, size_t buflen)
/* URL checkers. */
-gboolean is_magnet(gchar * string)
+gboolean is_magnet(const gchar * string)
{
return g_str_has_prefix(string, "magnet:");
}
-gboolean is_url(gchar * string)
+gboolean is_url(const gchar * string)
{
//return g_regex_match_simple ("^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?", string, 0, 0);
return g_regex_match_simple("^http[s]?://", string, 0, 0);
@@ -248,7 +248,7 @@ void rm_trailing_slashes(gchar * str)
/* Working with torrents.. */
-void add_file_id_to_array(JsonObject * args, gchar * key, gint index)
+void add_file_id_to_array(JsonObject * args, const gchar * key, gint index)
{
JsonArray *array;
if (json_object_has_member(args, key)) {
@@ -534,7 +534,7 @@ evutil_vsnprintf(char *buf, size_t buflen, const char *format, va_list ap)
#endif
}
-gboolean is_minimised_arg(gchar * arg)
+gboolean is_minimised_arg(const gchar * arg)
{
return !g_strcmp0(arg, "-m")
|| !g_strcmp0(arg, "--minimized")
@@ -550,42 +550,3 @@ gboolean should_be_minimised(int argc, char *argv[])
return FALSE;
}
-
-gchar **convert_args(int argc, char *argv[])
-{
- gchar *cwd = g_get_current_dir();
- gchar **files = NULL;
-
- if (argc > 1) {
- GSList *list = NULL;
- int i;
-
- for (i = 1; i < argc; i++) {
- if (is_minimised_arg(argv[i])) {
- continue;
- } else if (!is_url(argv[i]) && !is_magnet(argv[i])
- && g_file_test(argv[i], G_FILE_TEST_IS_REGULAR)
- && !g_path_is_absolute(argv[i])) {
- list = g_slist_append(list,
- g_build_path(G_DIR_SEPARATOR_S, cwd,
- argv[i], NULL));
- } else {
- list = g_slist_append(list, g_strdup(argv[i]));
- }
- }
-
- if (list) {
- GSList *li;
- files = g_new0(gchar *, g_slist_length(list) + 1);
- i = 0;
- for (li = list; li; li = g_slist_next(li)) {
- files[i++] = li->data;
- }
- g_slist_free(list);
- }
- }
-
- g_free(cwd);
-
- return files;
-}
diff --git a/src/util.h b/src/util.h
index d6187c1..aeb984d 100644
--- a/src/util.h
+++ b/src/util.h
@@ -48,7 +48,7 @@ extern const char *speed_M_str;
extern const char *speed_G_str;
extern const char *speed_T_str;
-void add_file_id_to_array(JsonObject * args, gchar * key, gint index);
+void add_file_id_to_array(JsonObject * args, const gchar * key, gint index);
void g_str_slist_free(GSList * list);
GRegex *trg_uri_host_regex_new(void);
gchar *trg_gregex_get_first(GRegex * rx, const gchar * uri);
@@ -86,12 +86,11 @@ void rm_trailing_slashes(gchar * str);
void trg_widget_set_visible(GtkWidget * w, gboolean visible);
gchar *trg_base64encode(const gchar * filename);
GtkWidget *my_scrolledwin_new(GtkWidget * child);
-gboolean is_url(gchar * string);
-gboolean is_magnet(gchar * string);
+gboolean is_url(const gchar * string);
+gboolean is_magnet(const gchar * string);
GtkWidget *gtr_combo_box_new_enum(const char *text_1, ...);
-gchar **convert_args(int argc, char *argv[]);
gboolean should_be_minimised(int argc, char *argv[]);
-gboolean is_minimised_arg(gchar * arg);
+gboolean is_minimised_arg(const gchar * arg);
#endif /* UTIL_H_ */
diff --git a/src/win32-mailslot.c b/src/win32-mailslot.c
index 50fadad..274aa6f 100644
--- a/src/win32-mailslot.c
+++ b/src/win32-mailslot.c
@@ -17,6 +17,8 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
+#if WIN32
+
#define TRG_MAILSLOT_NAME "\\\\.\\mailslot\\TransmissionRemoteGTK" //Name given to the Mailslot
#define MAILSLOT_BUFFER_SIZE 1024*32
@@ -190,3 +192,5 @@ gboolean mailslot_send_message(gchar ** args)
return FALSE;
}
+
+#endif
diff --git a/src/win32-mailslot.h b/src/win32-mailslot.h
index 66ff2a5..c88ff5a 100644
--- a/src/win32-mailslot.h
+++ b/src/win32-mailslot.h
@@ -20,10 +20,13 @@
#ifndef WIN32_MAILSLOT_H_
#define WIN32_MAILSLOT_H_
+#if WIN32
+
#include <windows.h>
#include "trg-main-window.h"
void mailslot_start_background_listener(TrgMainWindow * win);
int mailslot_send_message(gchar ** args);
-#endif /* WIN32_MAILSLOT_H_ */
+#endif
+#endif /* WIN32_MAILSLOT_H_ */