summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Alan Fitton <ajf@eth0.org.uk>2011-12-09 13:55:45 +0000
committerGravatar Alan Fitton <ajf@eth0.org.uk>2011-12-09 13:55:45 +0000
commit34b25b5e63666ef5de06ce8e4313e98c24b59fb7 (patch)
tree7c0e131f6129267f166910b21e3474495251f83c
parent10b8cad6f28e1fbd44708914633523df60269e8b (diff)
some improvements and fixes to the destination combo. don't add existing directories if they are already labels.
-rw-r--r--ChangeLog93
-rw-r--r--configure.ac2
-rw-r--r--debian/changelog6
-rw-r--r--redhat/transmission-remote-gtk.spec194
-rw-r--r--src/installer.nsi2
-rw-r--r--src/trg-cell-renderer-epoch.c1
-rw-r--r--src/trg-destination-combo.c48
-rw-r--r--src/trg-files-model.c2
8 files changed, 195 insertions, 153 deletions
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 0000000..4a32960
--- /dev/null
+++ b/ChangeLog
@@ -0,0 +1,93 @@
+* Tue Oct 11 2011 0.7
+- Remote exec.
+- Win32 Support.
+- Connect button menus for profiles.
+- Fix a memory leak on disconnect.
+- Use icon for wanted/unwanted files.
+- Handle URLs and non-existing files in file handler.
+- IPv6 GeoIP support.
+- Upload files on app open.
+- Display public/private tracker status.
+- Show file icons based on MIME types.
+- Shortern tracker filters.
+- Hide state selector if no error torrents.
+- Fix warning caused by zero length files in torrents.
+- Bencoder crash fix.
+- Detect and drop requests from previous connections.
+- Toolbar tooltips.
+- Spanish translation.
+
+* Sat Aug 27 2011 0.6
+- Profiles support.
+- New JSON based configuration backend.
+- Support new Transmission torrent status values.
+- Populate destination combo in move dialog.
+- Ukranian translation from ROR191.
+- Lots of new columns and info.
+- More options in view menu.
+- Supports for queues.
+- Improved status bar and add a free space indicator.
+- Persist/restore filter selection, + notebook/selector visibility.
+- Reuse http clients and keep sessions open.
+- Start in tray argument (-m --minimized)
+- Fix timezone display issue.
+- Fix bencoder parser bug (parsing empty lists).
+- Make columns fully shrinkable.
+- Many other fixes/improvements.
+
+* Fri May 6 2011 - 0.5.1
+- Use libproxy pkg-config CFLAGS in build, for older versions.
+- Fix updates inside the GtkNotebook.
+- Fix crash reported by atommixz.
+
+* Fri Apr 22 2011 - 0.5
+- Fix a few of small memory leaks.
+- Sync single torrent when file/trackers are changed.
+- Update efficiency improvement.
+- Customisable columns, new optional columns.
+
+* Tue Apr 12 2011 - 0.4
+- Torrent add dialog.
+- Support for active only updates.
+- Other update performance improvements.
+- Pause/Resume all.
+- Polish and Russian translation.
+- Torrent added date/time column.
+- Fix gconf ints defaulting to one in prefs dialog.
+- Fix crash disconnecting with graph disabled.
+- Fix crash disabling tracker/dir filters while disconnected.
+
+* Sat Mar 11 2011 - 0.3
+- Case insensitive text filtering.
+- Speed graph.
+- i18n support (currently German and Korean).
+- Use table layout instead of fixed for general panel.
+- libproxy support.
+- Fix torrent bandwidth priority setting.
+- Better suspending of tracker/files update until ack.
+- Put versions in some spec/configure deps.
+- Include libcurl.m4.
+- Better (easier) FreeBSD compilation.
+- Remove 5px window border (much better on some dark themes).
+- Fix hardcoded path to Transmission icon in about dialog.
+- Fix a leak from gtk_tree_selection_get_selected_rows().
+- TRG_NOUNIQUE env variable to start multiple instances.
+
+* Mon Feb 21 2011 - 0.2.1
+- Fix crash in update-blocklist/port-test callbacks.
+- Menu bar mnemonics.
+
+* Sat Feb 19 2011 - 0.2
+- SSL support.
+- Statistics dialog.
+- Fix for setting low priority files.
+- Port testing.
+- Blocklist settings and updates.
+- Torrent reannounce.
+- Tracker add/edit/delete.
+
+* Mon Feb 07 2011 - 0.1.1
+- Fix some major first release bugs.
+
+* Sun Jan 30 2011 - 0.1.0
+- Hello world.
diff --git a/configure.ac b/configure.ac
index e1a66c6..67f6a83 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,6 +1,6 @@
AC_PREREQ(2.63)
-AC_INIT(transmission-remote-gtk, 0.7.3, alan@eth0.org.uk)
+AC_INIT(transmission-remote-gtk, 0.8, alan@eth0.org.uk)
AC_CONFIG_SRCDIR(src)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
AM_INIT_AUTOMAKE([foreign])
diff --git a/debian/changelog b/debian/changelog
index 5532601..2295a23 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+transmission-remote-gtk (0.8-1) unstable; urgency=low
+
+ * New upstream release 0.8
+
+ -- Alan Fitton <alan@eth0.org.uk> Fri, 09 Dec 2011 13:13:56 +0000
+
transmission-remote-gtk (0.7-1) unstable; urgency=low
* New upstream release 0.7
diff --git a/redhat/transmission-remote-gtk.spec b/redhat/transmission-remote-gtk.spec
index 4a0a50e..3fb00c9 100644
--- a/redhat/transmission-remote-gtk.spec
+++ b/redhat/transmission-remote-gtk.spec
@@ -1,172 +1,80 @@
-Name: transmission-remote-gtk
-Version: 0.7.2
-Release: 1%{?dist:%{dist}}
-Summary: Remote control client for Transmission BitTorrent
-
-Group: Applications/Internet
-License: GPLv2+
-URL: http://code.google.com/p/transmission-remote-gtk/
-Source0: %{name}-%{version}.tar.gz
-BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-
-Requires: gtk2 >= 2.16
-Requires: GeoIP
-Requires: glib2 >= 2.22
-Requires: unique
-Requires: libnotify
-Requires: libproxy
-Requires: json-glib >= 0.8
-Requires: libcurl
-
-BuildRequires: gtk2-devel
-BuildRequires: GeoIP-devel
-BuildRequires: libproxy-devel
-BuildRequires: glib2-devel
-BuildRequires: unique-devel
-BuildRequires: json-glib-devel
-BuildRequires: libcurl-devel
-BuildRequires: libnotify-devel
+Name: transmission-remote-gtk
+Version: 0.8
+Release: 1%{?dist}
+Summary: GTK remote control for the Transmission BitTorrent client
+
+License: GPLv2+
+URL: http://code.google.com/p/%{name}
+Source0: http://%{name}.googlecode.com/files/%{name}-%{version}.tar.gz
+
+BuildRequires: gettext
+BuildRequires: json-glib-devel
+BuildRequires: intltool
+BuildRequires: gtk2-devel
+BuildRequires: libproxy-devel
+BuildRequires: glib2-devel
+BuildRequires: unique-devel
+BuildRequires: libcurl-devel
+BuildRequires: libnotify-devel
+BuildRequires: GeoIP-devel
+
+Requires(post): info
+Requires(preun): info
%description
-transmission-remote-gtk is a GTK application for remote management of the
-Transmission BitTorrent client via its RPC interface.
+transmission-remote-gtk is a GTK client for remote management of
+the Transmission BitTorrent client, using its HTTP RPC protocol.
%prep
%setup -q
+sed -i "s|\r||g" README
+sed -i "s|\r||g" COPYING
+
%build
%configure
make %{?_smp_mflags}
+
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
-%clean
-rm -rf $RPM_BUILD_ROOT
+%find_lang %{name}
%post
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
+%preun
+if [ $1 = 0 ] ; then
+ /sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || :
+fi
+
%postun
if [ $1 -eq 0 ] ; then
/bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
-%postrans
+%posttrans
/usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
-%files
-%defattr(-,root,root,-)
-%doc README COPYING AUTHORS
+%files -f %{name}.lang
%{_bindir}/%{name}
-%{_datadir}/applications/%{name}.desktop
-%{_datadir}/icons/hicolor/scalable/apps/%{name}.svg
-%{_datadir}/icons/hicolor/16x16/apps/%{name}.png
-%{_datadir}/icons/hicolor/22x22/apps/%{name}.png
-%{_datadir}/icons/hicolor/24x24/apps/%{name}.png
-%{_datadir}/icons/hicolor/32x32/apps/%{name}.png
-%{_datadir}/icons/hicolor/48x48/apps/%{name}.png
-%{_datadir}/locale/de/LC_MESSAGES/%{name}.mo
-%{_datadir}/locale/ko/LC_MESSAGES/%{name}.mo
-%{_datadir}/locale/es/LC_MESSAGES/%{name}.mo
-%{_datadir}/locale/pl/LC_MESSAGES/%{name}.mo
-%{_datadir}/locale/ru/LC_MESSAGES/%{name}.mo
-%{_datadir}/locale/uk/LC_MESSAGES/%{name}.mo
-%{_datadir}/man/man1/transmission-remote-gtk.1
+%{_datadir}/applications/*.desktop
+%{_datadir}/icons/*
+%doc README COPYING AUTHORS
+
%changelog
-* Tue Oct 11 2011 Alan Fitton <alan@eth0.org.uk> 0.7
-- Remote exec.
-- Win32 Support.
-- Connect button menus for profiles.
-- Fix a memory leak on disconnect.
-- Use icon for wanted/unwanted files.
-- Handle URLs and non-existing files in file handler.
-- IPv6 GeoIP support.
-- Upload files on app open.
-- Display public/private tracker status.
-- Show file icons based on MIME types.
-- Shortern tracker filters.
-- Hide state selector if no error torrents.
-- Fix warning caused by zero length files in torrents.
-- Bencoder crash fix.
-- Detect and drop requests from previous connections.
-- Toolbar tooltips.
-- Spanish translation.
-
-* Sat Aug 27 2011 Alan Fitton <alan@eth0.org.uk> 0.6
-- Profiles support.
-- New JSON based configuration backend.
-- Support new Transmission torrent status values.
-- Populate destination combo in move dialog.
-- Ukranian translation from ROR191.
-- Lots of new columns and info.
-- More options in view menu.
-- Supports for queues.
-- Improved status bar and add a free space indicator.
-- Persist/restore filter selection, + notebook/selector visibility.
-- Reuse http clients and keep sessions open.
-- Start in tray argument (-m --minimized)
-- Fix timezone display issue.
-- Fix bencoder parser bug (parsing empty lists).
-- Make columns fully shrinkable.
-- Many other fixes/improvements.
-
-* Fri May 6 2011 Alan Fitton <alan@eth0.org.uk> - 0.5.1
-- Use libproxy pkg-config CFLAGS in build, for older versions.
-- Fix updates inside the GtkNotebook.
-- Fix crash reported by atommixz.
-
-* Fri Apr 22 2011 Alan Fitton <alan@eth0.org.uk> - 0.5
-- Fix a few of small memory leaks.
-- Sync single torrent when file/trackers are changed.
-- Update efficiency improvement.
-- Customisable columns, new optional columns.
-
-* Tue Apr 12 2011 Alan Fitton <alan@eth0.org.uk> - 0.4
-- Torrent add dialog.
-- Support for active only updates.
-- Other update performance improvements.
-- Pause/Resume all.
-- Polish and Russian translation.
-- Torrent added date/time column.
-- Fix gconf ints defaulting to one in prefs dialog.
-- Fix crash disconnecting with graph disabled.
-- Fix crash disabling tracker/dir filters while disconnected.
-
-* Sat Mar 11 2011 Alan Fitton <alan@eth0.org.uk> - 0.3
-- Case insensitive text filtering.
-- Speed graph.
-- i18n support (currently German and Korean).
-- Use table layout instead of fixed for general panel.
-- libproxy support.
-- Fix torrent bandwidth priority setting.
-- Better suspending of tracker/files update until ack.
-- Put versions in some spec/configure deps.
-- Include libcurl.m4.
-- Better (easier) FreeBSD compilation.
-- Remove 5px window border (much better on some dark themes).
-- Fix hardcoded path to Transmission icon in about dialog.
-- Fix a leak from gtk_tree_selection_get_selected_rows().
-- TRG_NOUNIQUE env variable to start multiple instances.
-
-* Mon Feb 21 2011 Alan Fitton <alan@eth0.org.uk> - 0.2.1
-- Fix crash in update-blocklist/port-test callbacks.
-- Menu bar mnemonics.
-
-* Sat Feb 19 2011 Alan Fitton <alan@eth0.org.uk> - 0.2
-- SSL support.
-- Statistics dialog.
-- Fix for setting low priority files.
-- Port testing.
-- Blocklist settings and updates.
-- Torrent reannounce.
-- Tracker add/edit/delete.
-
-* Mon Feb 07 2011 Alan Fitton <alan@eth0.org.uk> - 0.1.1
-- Squash a couple of nasty first release bugs.
-
-* Sun Jan 30 2011 Alan Fitton <alan@eth0.org.uk> - 0.1.0
-- Initial RPM Build.
+* Fri Dec 09 2011 Alan Fitton <alan@eth0.org.uk> 0.8-1
+- New release.
+
+* Thu Nov 20 2011 Praveen Kumar <kumarpraveen.nitdgp@gmail.com> 0.7-3
+- Minor changes according to review
+
+* Thu Oct 27 2011 Praveen Kumar <kumarpraveen.nitdgp@gmail.com> 0.7-2
+- Added icon cache
+
+* Tue Oct 18 2011 Praveen Kumar <kumarpraveen.nitdgp@gmail.com> 0.7-1
+- Initial version of the package
diff --git a/src/installer.nsi b/src/installer.nsi
index d02aecd..b659667 100644
--- a/src/installer.nsi
+++ b/src/installer.nsi
@@ -10,7 +10,7 @@ Name "Transmission Remote GTK"
; The file to write
!ifndef REV
-OutFile "transmission-remote-gtk-0.7.3-installer.exe"
+OutFile "transmission-remote-gtk-0.8-installer.exe"
!else
OutFile "transmission-remote-gtk-${REV}-installer.exe"
!endif
diff --git a/src/trg-cell-renderer-epoch.c b/src/trg-cell-renderer-epoch.c
index cdf576b..5b05f09 100644
--- a/src/trg-cell-renderer-epoch.c
+++ b/src/trg-cell-renderer-epoch.c
@@ -51,6 +51,7 @@ trg_cell_renderer_epoch_get_property(GObject * object, guint property_id,
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
+ break;
}
}
diff --git a/src/trg-destination-combo.c b/src/trg-destination-combo.c
index 11f5085..7d7c7af 100644
--- a/src/trg-destination-combo.c
+++ b/src/trg-destination-combo.c
@@ -83,7 +83,7 @@ static void trg_destination_combo_set_property(GObject * object,
priv->client = g_value_get_pointer(value);
break;
case PROP_LAST_SELECTION:
- priv->last_selection = g_value_get_string(value);
+ priv->last_selection = g_strdup(g_value_get_string(value));
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
@@ -182,18 +182,52 @@ static void add_entry_cb(GtkEntry *entry,
gtk_combo_box_set_active_iter(combo, &iter);
}
+struct findDupeArg
+{
+ const gchar *dir;
+ gboolean isDupe;
+};
+
+gboolean
+trg_destination_combo_insert_check_dupe_foreach(GtkTreeModel * model,
+ GtkTreePath * path G_GNUC_UNUSED,
+ GtkTreeIter * iter, struct findDupeArg *args)
+{
+ gchar *existing;
+ gtk_tree_model_get(model, iter, DEST_COLUMN_DIR, &existing, -1);
+ args->isDupe = g_strcmp0(existing, args->dir) == 0;
+ g_free(existing);
+ return args->isDupe;
+}
+
static void trg_destination_combo_insert(GtkComboBox *box, const gchar *label,
const gchar *dir, guint type, const gchar *lastDestination)
{
- GtkListStore *store = GTK_LIST_STORE(gtk_combo_box_get_model(box));
+ GtkTreeModel *model = gtk_combo_box_get_model(box);
+ gchar *comboLabel;
GtkTreeIter iter;
- gtk_list_store_insert_with_values(store, &iter, INT_MAX,
- DEST_COLUMN_LABEL, label, DEST_COLUMN_DIR, dir,
+ if (type == DEST_EXISTING)
+ {
+ struct findDupeArg args;
+ args.isDupe = FALSE;
+ args.dir = dir;
+ gtk_tree_model_foreach(GTK_TREE_MODEL(model),
+ (GtkTreeModelForeachFunc)trg_destination_combo_insert_check_dupe_foreach, &args);
+ if (args.isDupe)
+ return;
+ }
+
+ comboLabel = label ? g_strdup_printf("%s (%s)", label, dir) : g_strdup(dir);
+
+ gtk_list_store_insert_with_values(GTK_LIST_STORE(model), &iter, INT_MAX,
+ DEST_COLUMN_LABEL, comboLabel, DEST_COLUMN_DIR, dir,
DEST_COLUMN_TYPE, type, -1);
- if (lastDestination && !g_strcmp0(lastDestination, label))
+ if (lastDestination && !g_strcmp0(lastDestination, comboLabel))
gtk_combo_box_set_active_iter(box, &iter);
+
+ g_free(comboLabel);
}
static GObject *trg_destination_combo_constructor(GType type,
@@ -258,7 +292,7 @@ static GObject *trg_destination_combo_constructor(GType type,
TRG_PREFS_CONNECTION);
trg_destination_combo_insert(GTK_COMBO_BOX(object),
- defaultDir,
+ NULL,
defaultDir,
DEST_DEFAULT, lastDestination);
@@ -310,7 +344,7 @@ static GObject *trg_destination_combo_constructor(GType type,
for (sli = dirs; sli; sli = g_slist_next(sli))
trg_destination_combo_insert(GTK_COMBO_BOX(object),
- (gchar *) sli->data,
+ NULL,
(gchar *) sli->data,
DEST_EXISTING, lastDestination);
diff --git a/src/trg-files-model.c b/src/trg-files-model.c
index 13d117b..5d4cf0a 100644
--- a/src/trg-files-model.c
+++ b/src/trg-files-model.c
@@ -167,7 +167,7 @@ trg_files_model_update(TrgFilesModel * model, gint64 updateSerial,
}
} else {
gint n_existing = gtk_tree_model_iter_n_children(GTK_TREE_MODEL(model), NULL);
- gint n_updates = g_list_length(filesList);
+ guint n_updates = g_list_length(filesList);
gtk_tree_model_foreach(GTK_TREE_MODEL(model),
(GtkTreeModelForeachFunc)
trg_files_model_update_foreach, filesList);