Commit Graph

165 Commits

Author SHA1 Message Date
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
Daniel Lee c30ed43082 (trunk) #3185: Number on drop-down menu "Activity" - "Active" seems does not follow a change in torrent status correctly 2010-08-04 17:35:48 +00:00
Daniel Lee fc15c5ba4b (trunk gtk) Clean up r11086 2010-08-04 05:25:43 +00:00
Charles Kerr 5624840ac4 (trunk) #3478 "Display bug when magnet links without display names are added" -- fixed in trunk 2010-08-03 03:16:21 +00:00
Charles Kerr 36064b8120 (trunk gtk) rewrite the main window's drag-and-drop handler s.t. it's GTK+ 3 compliant 2010-08-02 22:31:31 +00:00
Charles Kerr 59f5f3ed6b (trunk gtk) replace tr_strcmp() with gtr_strcmp0(), a porability wrapper around g_strcmp0() 2010-08-01 19:13:34 +00:00
Charles Kerr 3fa4865863 (trunk) #3450 "regression: Qt client dbus support broken" -- fixed 2010-08-01 18:55:04 +00:00
Daniel Lee ff23406f38 (trunk) #3471:Add 'finished' to filterbar 2010-08-01 17:43:35 +00:00
Charles Kerr f4e3b6e670 (trunk gtk) simplify the collation process for sorting torrents by name 2010-07-30 22:19:20 +00:00