Commit Graph

173 Commits

Author SHA1 Message Date
Jordan Lee 7ab14ad4b1 (trunk gtk) in torrent-cell-renderer and tr-core, use the _parent_class field generated by G_DEFINE_TYPE. 2011-08-09 06:31:33 +00:00
Jordan Lee 6290169099 (trunk gtk) use G_DEFINE_TYPE when implementing the tr-core and torent-cell-renderer classes 2011-08-09 05:47:24 +00:00
Jordan Lee 4d4eeae682 (trunk gtk) first cut at using GApplication. This lets glib replace hundreds of lines of homegrown code. Whee! 2011-08-09 02:30:31 +00:00
Jordan Lee 8d89a16f4f remove the gtr_idle_add() portability wrapper around gdk_threads_add_idle() -- it's unnecessary now that the minimum gtk version's been bumped. 2011-08-08 17:10:55 +00:00
Jordan Lee 6d1869c33b remove the gtr_timeout_add_seconds() portability wrapper around gdk_threads_add_timeout_seconds(); it's unnecessary now that the minimum gtk version's been bumped. 2011-08-08 17:06:46 +00:00
Jordan Lee 270126820a (trunk gtk) bump the glib2 requirement from 2.8 to 2.26 s.t. transmission-gtk can use glib's GDBus module and drop the glib-dbus library dependency 2011-08-07 16:42:38 +00:00
Jordan Lee 307754e807 #671 "torrent queuing" -- modify the queue implementation s.t. every torrent has a queuePosition, even if it's not currently in the queue. 2011-08-02 03:59:54 +00:00
Jordan Lee 61174b007e (trunk) #671 "torrent queuing" -- Preliminary implementation. Covers libtransmission; GTK+ and Qt clients, and rudimentary web client support. 2011-08-01 22:24:24 +00:00
Jordan Lee 6326003e73 (trunk gtk) very minor tweak in deciding which rows to update in the torrent model.
Since we only display speed to two decimal places, we don't need to compare previous and current torrent speed with more precision than that.
2011-04-20 01:16:16 +00:00
Jordan Lee fdbe7dc2da (trunk gtk) more heap pruning, in tr_core
Tweak how we loop through the torrents in the model, again to avoid unnecessary GtkTreePath temporaries.
2011-04-13 22:16:50 +00:00
Jordan Lee 4ce3555786 (trunk gtk) minor janitorial: const correctness in tr-core's compare_by_name() 2011-04-11 16:27:41 +00:00
Jordan Lee 07e60d1fc0 (trunk gtk) more heap pruning: use a GStringChunk for the collated torrent names in tr-core.c 2011-04-07 04:29:37 +00:00
Jordan Lee e02ce61d3e (trunk gtk) removed the unused MC_NAME column from the torrent GtkListStore. 2011-04-05 17:00:38 +00:00
Jordan Lee 708838b146 (trunk gtk) more heap pruning: in the main window's torrent list, only update the case-insensitive "collated name" of a torrent when the torrent's metadata changes (such as when a magnet link's metadata finishes downloading). 2011-04-05 15:41:51 +00:00
Jordan Lee afa016704f (trunk libT) more heap pruning: use a hash, rather than an allocated string in tr-core when watching for a torrent's tracker list to change 2011-04-05 01:36:37 +00:00
Jordan Lee eb06d81fb9 (trunk) fix a handful of small memory leaks that valgrind found. 2011-03-25 17:42:47 +00:00
Jordan Lee 433da8df9a (trunk gtk) gtr_compare_double() is only used in one place, so make it a private function there instead of leaving it public in utils.h 2011-03-24 18:32:05 +00:00
Jordan Lee 5417711cd4 (trunk gtk) remove function gtr_strcmp0, which is redundant due to tr_strcmp0 2011-03-24 18:20:47 +00:00
Jordan Lee b4d36aeb54 (trunk) #4138 "use stdbool.h instead of tr_bool" -- done. 2011-03-22 15:19:54 +00:00
Jordan Lee fee784f1d8 (trunk) #4081 "Add 'cookieString' argument 'torrent-add' method in RPC" -- done. 2011-03-15 04:22:47 +00:00
Jordan Lee 9c7caec13f (trunk gtk) minor copyediting for clarity/readability 2011-03-04 14:31:23 +00:00
Jordan Lee 9283ef2ebb (trunk gtk) #4080 "Toggling speed limit mode from the web interface doesn't affect GUI" -- fixed. 2011-03-04 05:58:32 +00:00
Jordan Lee c6dd0b0ed4 (trunk libT) fix tr_ctorFree() crash reported by Rolcol 2011-03-04 04:45:34 +00:00
Jordan Lee dcc070c86c (trunk gtk) some tr-core cleanup
Variable and function name cleanup; regrouping related functions together, etc.
2011-03-03 07:17:57 +00:00
Jordan Lee c7006ed8b3 (trunk gtk) remove the TrTorrent GObject subclass. 2011-03-03 01:59:25 +00:00
Jordan Lee 716a3c90c2 (trunk) #4032 "Better error detection / reporting in http announces" -- added to trunk.
This patch adds two new flags to the callback function -- did_connect and did_timeout -- that are calculated inside of web.c using information from libcurl. This allows the announcer to detect timeouts more accurately and also to distinguish between unresponsive peers (which get the preexisting "Tracker did not respond" error message) and unconnectable peers (which get a new error message, "Could not connect to tracker").
2011-02-17 02:26:24 +00:00
Jordan Lee 72f9ab91fa (trunk) make tr_torrentName() a public function.
This has been a private function in libtransmission for awhile now but it makes more sense as a public function.
2011-02-15 15:18:51 +00:00
Jordan Lee 7a5f87a207 (trunk gtk) #3972 "Verify progress changes not displaying" -- fixed.
make sure to call gtk_list_store_set() on rows matching torrents whose tr_stat.recheckProgress value has changed, triggering a row change event that causes the verify progress change to be displayed.
2011-02-02 02:45:20 +00:00
Jordan Lee 88df1b15ee (trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode" -- fix minor r11799 regression.
Clearing the model on shutdown generated a warning because it used the wrong cast. Rather than fixing the cast, add tr_core_clear() for symmetry with tr_core_load().
2011-02-01 01:45:41 +00:00
Jordan Lee b084493bfe (trunk gtk) #3970 "tr_core_update() wastes CPU cycles by toggling the sort mode" -- fixed.
Long description in #3970. Split tr_core's torrent GtkTreeModel into two models: one low-level unsorted one, and one proxy sorted one. That way we don't have to disable sorting before walking through the low-level one to sync the table's attributes with the tr_torrent and tr_stat.
2011-01-31 23:01:46 +00:00
Jordan Lee 4d529db419 (trunk gtk) include the torrent hashcode in the model's collated name.
This simplifies sorting by name by merging the primary and secondary keys (case-insensitive name, and hash string) into a single key.
2011-01-21 18:30:08 +00:00
Jordan Lee acd941f17a (trunk gtk) companion commit to r11738 to reduce unnecessary re-rendering in the main window
The main window called gtk_tree_model_filter_refilter() once per second to refresh the torrent list's filtering. This is not an efficient approach: gtk_tree_model_filter_refilter() emits a "row changed" event for every row, causing unnecessary re-rendering.

I've removed the call to gtk_tree_model_filter_refilter() and expanded the model to includes all the fields necessary for filtering. That way we only fire "row changed" events for rows that actually change.

By reducing the number of renders in steady state, this might ameliorate https://bugs.launchpad.net/ubuntu/+source/transmission/+bug/655024 

However it will *not* help the related "CPU spikes to 100% on scrolling" ticket at https://trac.transmissionbt.com/ticket/3887 because rendering paused torrents is still exceptionally expensive in the murrine theme.
2011-01-21 17:07:23 +00:00
Jordan Lee 58c7556534 (trunk gtk) #3916 "Reorder the list when metadata is downloaded" -- fix r11737 typo. 2011-01-21 16:36:57 +00:00
Jordan Lee 9ce58e33ac (trunk gtk) #3916 "Reorder the list when metadata is downloaded" -- fixed.
When tr_info.name changes, update the collated name in the main window's TreeStore.
2011-01-21 02:58:58 +00:00
Jordan Lee 879a2afcbd Update the copyright year in the source code comments.
The Berne Convention says that the copyright year is moot, so instead of adding another year to each file as in previous years, I've removed the year altogether from the source code comments in libtransmission, gtk, qt, utils, daemon, and cli.

Juliusz's copyright notice in tr-dht and Johannes' copyright notice in tr-lpd have been left alone; it didn't seem appropriate to modify them.
2011-01-19 13:48:47 +00:00
Jordan Lee 88d58502aa (trunk gtk) #3896 "Redundant call to tr_torrentStat() in tr_core_update()" -- fixed. 2011-01-13 11:50:58 +00:00
Charles Kerr bf2835c557 (trunk gtk) remove unused code: tr_core_quit() 2010-12-23 21:50:09 +00:00
Charles Kerr 057487d18e (trunk gtk) more gtr_ naming cleanup 2010-12-22 06:25:30 +00:00
Charles Kerr b86e1e1056 (trunk gtk) kill "pref_flag_t" in a burlap sack and throw it off the cliff into the freezing water below 2010-12-22 06:11:49 +00:00
Charles Kerr 5eafe91824 (trunk gtk) general cleanup to make function's naming scheme and API more consistent. This is only a fraction of what the GTK+ client's codebase needs, unfortunately. 2010-12-21 19:20:58 +00:00
Charles Kerr fee807cd57 minor tweak: tr_core_load() should return void, not int 2010-12-21 16:49:57 +00:00
Charles Kerr 345b14adbc (trunk) #3836 "libevent2 support" -- bump libevent2 requirement to 2.0.10. This will break the Mac build for a minute intil BMW applies his Mac patch 2010-12-20 02:07:51 +00:00
Charles Kerr 5bf05ab31b (trunk gtk) #3838 "Unselected active torrents not counted for quit check" -- fixed. 2010-12-19 09:33:02 +00:00
Charles Kerr 821d315453 (trunk) #3675 "Not all .part files are removed" -- added patch for libtransmission and GTK+ client 2010-12-16 03:38:07 +00:00
Charles Kerr 27a1b2dc33 (trunk) one of the periodic, banal "remove-trailing-spaces from lines of source code" cleanup commits 2010-12-12 16:43:19 +00:00
Charles Kerr d216d435a2 (trunk gtk, qt) #3770 "GTK and Qt clients should sort-by-progress as the Mac client does" -- fixed. 2010-12-01 05:41:58 +00:00
Charles Kerr 04c60c7221 (trunk gtk) #3697 "make blocklist URL configurable" -- better error handling in GTK+ client if the user-specified blocklist can't be fetched 2010-11-13 17:05:22 +00:00
Charles Kerr 1c2a7359af (trunk gtk) "hibernation inhibition broke in transmission-2.00" -- fixed. 2010-10-21 20:04:00 +00:00
Charles Kerr 6e62d0d99d (trunk gtk) fix a minor UMR error that Valgrind found 2010-09-23 17:05:40 +00:00
Charles Kerr 43f03f3de6 remove sort-by-tracker from the GTK+ client 2010-09-06 00:23:44 +00:00