Commit Graph

10028 Commits

Author SHA1 Message Date
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 aea77bc9f6 (trunk gtk) make "gtr_label_set_text" public and use it everywhere instead of gtk_label_set_text()
Some of the refresh events to the main window's torrent list are caused by main window relayout caused by the toolbar's GtkLabels recalculating their size after being updated once per second. To prevent relayout in some trivial cases, I'm replacing the gtk_label_set_text() calls with gtr_label_set_text() because the latter doesn't update the label widget if the old and new text strings are the same.

There are other changes that can handle more important cases -- I'll test those out next.
2011-01-21 16:32:27 +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 09d28baeb4 #3915 "RPC Documentation should reflect in the X-Transmission-Session-Id headers" -- fixed.
Add documentation for handling 409 error messages from the Transmission RPC server.
2011-01-21 02:40:33 +00:00
Jordan Lee ab02ba0d2c Remove the documentation for PUT notation from the rpc spec
The PUT hack was useful back when Transmission's RPC was first written, but it doesn't scale well to any of the commands that make its RPC useful. We should deprecate its use and not advertise this feature anymore.
2011-01-21 02:29:26 +00:00
Mitchell Livingston 260c4470cf tweak Credits.rtf 2011-01-20 23:09:18 +00:00
Jordan Lee 5dd2a87f53 mark the peer-id and user-agent for 2.20 beta 1 2011-01-20 22:57:59 +00:00
Jordan Lee c5709d2976 mention #3870 in the NEWS 2011-01-20 22:55:08 +00:00
Jordan Lee 5b382d203e (trunk libT) #3870 "transmission doesn't recheck after getting initial 404" -- fixed.
The exponentially-growing interval between retries had a bug that caused intervals to be too long if no successful announce had ever been made. This commit fixes the code that calculates the interval.
2011-01-20 22:51:05 +00:00
Jordan Lee bca543dc8e (trunk libT) #3923 "remove redundant announcer.c debug message" -- done. 2011-01-20 20:49:09 +00:00
Juliusz Chroboczek 25fa70576f Mention dht-0.18 in NEWS. 2011-01-20 20:44:01 +00:00
Juliusz Chroboczek efadbaf812 Import dht-0.18. 2011-01-20 20:43:57 +00:00
Jordan Lee a63fdd15b4 (trunk) #3926 "use 'Open Torrent' instead of 'Add Torrent' in GTK+ and Qt clients" -- fix accelerator ambiguity.
Using Ctrl-O for "Open File" causes a conflict with the existing Ctrl-O for "Open Folder." The HIG-compliant shortcut wins the conflict, so "Open Folder" gets a new accelerator.
2011-01-20 20:32:28 +00:00
Jordan Lee f22e2d537b (trunk qt) #3926 "use 'Open Torrent' instead of 'Add Torrent' in GTK+ and Qt clients" -- sync the accelerator with the GTK+ client 2011-01-20 20:24:59 +00:00
Jordan Lee b241c9d885 (trunk qt) #3925 "qtr.pro cleanup" -- patch from rb07 to handle libevent2 more gracefully via pkg-config 2011-01-20 20:20:14 +00:00
Jordan Lee 475c45abe0 (trunk qt) #3926 "use "Open Torrent" instead of "Add Torrent" in GTK+ and Qt clients" -- one more instance 2011-01-20 20:12:24 +00:00
Jordan Lee 7dd9427a1f (trunk gtk) #3909 -- don't use Ctrl-M as the shortcut for "Copy Magnet Link to Clipboard." 2011-01-20 20:07:09 +00:00
Jordan Lee 3b28138c71 (trunk) #3926: use "Open Torrent" instead of "Add Torrent" in GTK+ and Qt clients -- change the filename from add-dialog.[ch] to open-dialog.[ch]. whoooo 2011-01-20 19:57:42 +00:00
Jordan Lee 131afcc3a4 (trunk) #3926: use "Open Torrent" instead of "Add Torrent" in GTK+ and Qt clients -- text changed. 2011-01-20 19:48:13 +00:00
Jordan Lee bcb83b4577 (trunk libT) #3921 "no overhead for reads" -- fixed. thanks to jch for reporting this. 2011-01-20 00:31:46 +00:00
Jordan Lee 4f6d46cf99 (trunk libT) minor code tweak to crypto.c's tr_sha1() function 2011-01-19 21:50:51 +00:00
Jordan Lee 6ae426696f tr_sha1(): remove unnecessary casts from va_arg 2011-01-19 21:43:43 +00:00
Jordan Lee f3e1c17261 (trunk qt) #3917 "Text on QPushButton is not updated after selecting 'Torrent Done' script" -- fixed. patch by cantabile. 2011-01-19 20:33:43 +00:00
Jordan Lee 06884387da (trunk) #3914 "strlsize() passes variable of incompatible type to the tr_formatter_size_B()" -- fixed. 2011-01-19 18:14:01 +00:00
Jordan Lee 3c14abd183 remove mention of µTP from 2.20 NEWS. let's not get ahead of ourselves -- we shouldn't imply future µTP support when that decision hasn't been made yet. 2011-01-19 16:47:07 +00:00
Juliusz Chroboczek 52c53d005d Update NEWS. 2011-01-19 16:09:31 +00:00
Jordan Lee ddba265755 (trunk gtk) source code formatting tweak 2011-01-19 14:25:22 +00:00
Jordan Lee 9d038a8539 (trunk gtk) #3913 "Area to display a torrent's comment is small" -- fixed. 2011-01-19 14:22:29 +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 ba5172150a (trunk libT) #3912 "tr_torrentGetMetadataPercent() may return NaN" -- fixed. 2011-01-19 00:20:26 +00:00
Jordan Lee 8c36d86d4a #3519 "webseeds don't work" -- the `active' filter in the web client didn't test for webseed activity. 2011-01-19 00:07:59 +00:00
Jordan Lee 8aa0f36a37 cleanup of who calls the libtransmission thread locking functions.
In some cases we were calling them from deep inside libtransmission, when they should have been called directly from the public-visible API functions: tr_torrentWebSpeeds_KBps(), tr_torrentPeers(), tr_torrentTrackers().
2011-01-18 23:44:36 +00:00
Jordan Lee 87e78816ad (trunk gtk) #3519 "webseeds don't work" -- the `active' filter in the GTK+ client didn't test for webseed activity. 2011-01-18 23:26:41 +00:00
Jordan Lee 7ce0cf2322 code cleanup for tr_peerMgrTorrentAvailability().
1. move responsibility for getting a thread lock back to the public API fucntion, tr_torrentAvailability().
2. if the torrent doesn't have metadata, stop after zeroing out the table
3. minor code formatting cleanup
2011-01-18 22:51:29 +00:00
Jordan Lee 7f01f0c3ee #3911: tr_peerMgrTorrentAvailability() doesn't sample across the entire torrent' -- fixed. 2011-01-18 22:21:09 +00:00
Mitchell Livingston 246bd4a84b tweak COPYING 2011-01-18 04:02:06 +00:00
Jordan Lee bcc8b62106 the text in the last change was weak. 2011-01-18 03:53:53 +00:00
Jordan Lee 8375949c68 tweak gtk+ section... lots of little fixes there 2011-01-18 03:50:36 +00:00
Mitchell Livingston d01cc0c445 grammar fix 2011-01-18 03:47:59 +00:00
Mitchell Livingston ede3d2bac2 update strings file 2011-01-18 03:43:57 +00:00
Mitchell Livingston a9f55a4eb5 update NEWS 2011-01-18 02:46:58 +00:00
Jordan Lee dd77485d83 (trunk libT) demote the remaining lazy-verify debug messages from the debug window to deep logging 2011-01-18 02:17:47 +00:00
Jordan Lee d3eb8c6ea4 trivial minor changes to indentation, text strings, etc. 2011-01-18 00:31:05 +00:00
Jordan Lee bc91935bd8 first draft of 2.20 news 2011-01-17 20:06:34 +00:00
Jordan Lee d1a7f70313 (trunk gtk) #3907 "in the details dialog's peers tab, 'status' is a misnomer" -- changed to 'flags'. 2011-01-17 16:13:45 +00:00
Jordan Lee 6d1ad8e0cb (trunk gtk) #3908 "details dialog's information tab shows (verified + unverified) + unverified" -- fixed. 2011-01-17 16:10:17 +00:00
Juliusz Chroboczek 5ac1cba6ed Make ensureAtomExists add to the flags of an existing atom.
Flags are cumulative -- if we learn that a given peer groks encryption
from one source, and that it accepts incoming connections from another,
then the relevant atom should have both flags.
2011-01-16 15:51:48 +00:00
Juliusz Chroboczek 96141bdbff Consolidate both versions of tr_isPex into a single function.
There used to be two versions of tr_isPex; one correct in peer-mgr.c,
and one buggy in resume.c.  The buggy version caused us to reject all
peers with non-trivial flags when resuming.
2011-01-16 15:47:09 +00:00
Jordan Lee 6fdb8dabea first cut at a .gitignore file 2011-01-16 15:45:48 +00:00