1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2024-12-25 01:03:01 +00:00
Commit graph

12682 commits

Author SHA1 Message Date
Mike Gelfand
e89736fb17 #6001: Calculate header item size properly 2015-09-27 20:23:03 +00:00
Mike Gelfand
68c6c0aa3c Sync main context menu with "Torrent" menu; hide menu icons on Mac 2015-09-01 23:19:01 +00:00
Mike Gelfand
0f7bea1bd3 Fix session dialog not showing up after first close 2015-09-01 20:39:34 +00:00
Mike Gelfand
971cc6d2d9 Remove context help button from dialogs on Windows
We don't currently (if ever) provide context help, so the button is
useless. Moreover, on Windows 10 it's even larger than before and
sometimes title text doesn't fit because of it.
2015-09-01 20:19:26 +00:00
Mike Gelfand
1640a71127 #5982: Simplify filter bar connections by using needed slot directly 2015-08-17 08:14:45 +00:00
Mike Gelfand
63e4700a10 Simplify and speed up actions connected to file tree popup menu 2015-08-16 22:07:09 +00:00
Mike Gelfand
7f45029f18 Sync translations with Transifex
Add German and Indonesian (translated 95%+).
2015-08-10 20:43:26 +00:00
Mike Gelfand
ddb0df51d4 #5608: Enter file renaming mode with keyboard only, not on mouse double-click (Qt client)
Since double-click is usually used to open things, don't use it to enter
edit mode, use platform-specific keyboard shortcut instead (Return, F2,
etc).
Add context menu duplicating available actions, resembling that of Mac
client. This includes new "only check selected" action.
Speed up DND/priority change for large numbers of files at once. Make
DND/priority toggling more natural: if both parent and its child are
selected, only act on parent (with all its children following).
2015-08-10 19:40:58 +00:00
Mike Gelfand
0aa572b657 Refactor action groups initialization/handling and trackers merging a bit 2015-08-06 20:28:44 +00:00
Mike Gelfand
0f9bdc6ac2 Use CMake-provided C/C++ standard selection capabilities; fix build (qtr.pro) 2015-08-01 16:05:02 +00:00
Mike Gelfand
fd9c2c74f4 Remove some unused includes/macros; fix build (re. QPointer) 2015-07-30 06:55:28 +00:00
Mike Gelfand
f592083f15 Create dialogs on demand, don't keep them ready all the time 2015-07-30 06:18:02 +00:00
Mike Gelfand
18ea8c429a Improve RPC performance for local sessions
Don't unnecessarily de-/serialize JSON data if local session is used.
2015-07-13 00:32:48 +00:00
Mike Gelfand
5296570476 Improve file tree population/update performance
Use simple tokenization instead of splitting the file path into
QStringList for each item. Don't expand each added item separetely
during population/update. Don't expand all the items but just up to the
point where parent has more than one expandable child.

Also, fix items order by sorting items after population/update. Fix
sorting by size on systems where uint64_t != quint64.
2015-07-12 20:48:54 +00:00
Mike Gelfand
b9adf279ca #5912: Prevent completed pieces modification by webseeds (patch by cfpp2p)
This avoids blocks corruption in case webseed provides bad data.

As explained by cfpp2p, "The requirements to reproduce are at least one
webseed that sends corrupt block(s), and at least one other peer (webseed
or regular peer) that sends correct data for the same block. Then a peer
with correct block sends the block and transmission accepts and verifies
that block as good. But then the webseed thread comes around and the same
block is downloaded from the webseed that sends a bad block which is then
written even though the piece was previously deemed complete."
2015-07-05 07:54:46 +00:00
Mike Gelfand
6cbfcdc85e Fix tr_net_strerror on Windows (oops) 2015-07-01 00:58:00 +00:00
Mike Gelfand
79195614b2 Use sockerrno and tr_net_strerror for most of network-related errors
This ensures proper network errors formatting on Windows.

Also, disable IP_TOS socket option modification attempts on Windows
since it's not supported there and is considered deprecated: "Do not
use. Type of Service (TOS) settings should only be set using the
Quality of Service API" (c) MSDN. Using QoS API is a subject for
separate commit(s).
2015-07-01 00:54:41 +00:00
Mike Gelfand
1a885dcb17 Some look-and-feel improvements for Mac and GTK+ styles (Qt client) 2015-06-28 14:18:06 +00:00
Mike Gelfand
ba7ea94c7d Avoid assert on passing negative values to isprint (due to type promotion) 2015-06-26 21:22:27 +00:00
Mike Gelfand
2b5a03a88c #5964: Another follow-up commit for #5456 (encrypted communication with libevent 2.1.x)
Decrypt only what is asked for, not more. This fixes previous commit
which changed semantics by processing the buffer to the very end,
starting with correct offset though.

Refactor encryption/decryption to a single function which callback.
2015-06-24 21:24:41 +00:00
Mike Gelfand
cdcc9e249f #5964: Follow-up fix for #5456 (encrypted communication with libevent 2.1.x)
I've misread libevent documentation and the check introduced was not
entirely correct. Changed `evbuffer_peek` call now to only request the
data which would fit into provided iovec.
2015-06-24 20:38:41 +00:00
Mike Gelfand
6101a69957 Avoid possible _XOPEN_SOURCE redefinition warning 2015-06-23 21:16:33 +00:00
Mike Gelfand
45b73a7866 #5456: Fix encrypted communication with libevent 2.1.x
Recent versions of libevent changed the semantics of `evbuffer_ptr_set`
function in a way that it succeeds if pointer is set right after the end
of the buffer. This caused `tr_cryptoEncrypt` and `tr_cryptoDecrypt` to
be called twice for last buffer chunk since no checks for `evbuffer_peek`
return value were made while it was returning 0 on last loop cycle,
leaving iovec unchanged.
2015-06-17 20:32:33 +00:00
Mike Gelfand
58312e6c16 Torrent properties dialog improvements
Simplify DND checkboxes drawing, this also fixes incorrect drawing on
Mac when file tree widget is inactive.
Do better job calculating column widths for file tree to avoid ellipsis.
Fix file tree sorting order for size and priority columns.
Change key to toggle priorities to Shift+Space instead of Enter/Return
to avoid conflicts with name editing and default button handling.
Fix selected tracker item background drawing in certain cases.
2015-06-15 21:07:46 +00:00
Mike Gelfand
b0278ca353 Instead of standard C headers include their C++ counterparts 2015-06-12 22:41:36 +00:00
Mike Gelfand
5120fc0f2c Unify/prettify Qt client headers style 2015-06-12 22:12:12 +00:00
Mike Gelfand
5b61ba81ba Sync Qt client translations, add Polish language 2015-06-10 22:51:53 +00:00
Mike Gelfand
07912d230b Use PascalCase for Qt client filenames
Split FileTree.{h,cc} and FilterBar.{h,cc} files so that each class
is in its own file.

This breaks translations (some classes got renamed => context changed),
to be fixed by next commit (along with Tx sync).
2015-06-10 21:27:11 +00:00
Mike Gelfand
088c5c6ab9 Bump DHT version used in CMake scripts (includes latest Win32 fixes) 2015-06-08 19:54:51 +00:00
Mike Gelfand
2804335d05 Don't print trailing space char on each line when saving JSON 2015-06-01 20:50:25 +00:00
Mike Gelfand
5d48c2d3e9 #5851: Don't use _configthreadlocale if not provided by CRT (even if declaration is present) 2015-06-01 18:52:14 +00:00
Mike Gelfand
ae5755dc1e #5851: Use per-thread locale setup if possible
This prevents crashes on concurrent tr_variantFromBuf, tr_variantToBuf
and tr_variantGetReal use.
2015-06-01 05:25:14 +00:00
Mike Gelfand
2e6d5c8bc9 Add more booleans to the picture 2015-05-31 22:13:31 +00:00
Mike Gelfand
6c04259c39 Remove useless ws2tcpip.h include in net.h
It's already included above, and QT_DLL condition is meaningless
since net.h is only being used inside libtransmission which doesn't
use Qt.
2015-05-30 15:44:17 +00:00
Mike Gelfand
8dd65cdfba Use CreateProcess instead of _spawnvpe to execute scripts on Windows 2015-05-30 11:15:57 +00:00
Mike Gelfand
7abe7c28a3 #4882: \u-encode all non-printable (as opposed to non-ascii) characters 2015-05-16 17:33:01 +00:00
Mike Gelfand
e0dc1d6735 Fix some issues revealed by coverity 2015-05-09 14:10:55 +00:00
Mike Gelfand
4a23c94252 Fix some issues revealed by coverity 2015-05-09 14:09:05 +00:00
Mike Gelfand
cdf3cf62f9 Fix some issues revealed by coverity 2015-05-09 11:56:35 +00:00
Mike Gelfand
2321bc3fad Fix some issues revealed by coverity 2015-05-09 08:37:55 +00:00
Mike Gelfand
df98031294 #5946: Save "prefetch-enabled" setting as boolean (spotted by cfpp2p) 2015-05-07 06:45:35 +00:00
Mike Gelfand
7177d43ba1 #5944: Unify indentation style and strip trailing whitespaces across JS code, no functional changes (patch by xzcvczx + a lot more) 2015-05-05 19:12:48 +00:00
Mike Gelfand
5de8bbe6d8 Cut internal macro names to have equal number of underscores on each side (take two) 2015-05-04 20:06:05 +00:00
Mike Gelfand
7879100c01 Cut internal macro names to have equal number of underscores on each side 2015-05-04 19:58:34 +00:00
Mike Gelfand
1bcebc2da9 Remove -Wdeclaration-after-statement flag (we use C99) 2015-05-03 11:44:18 +00:00
Mike Gelfand
363069ff97 #5930: Fix style of Gtk+3.16 overshoot and undershoot (patch by nagisa) 2015-05-03 10:30:35 +00:00
Mike Gelfand
50364a7883 #4866: Replace existing menus with jQueryUI menu 2015-04-30 05:20:48 +00:00
Mike Gelfand
0c01e6e19d #5937: Don't send TR_RPC_TORRENT_ADDED notification if torrent wasn't actually added (patch by xzcvczx) 2015-04-29 19:42:05 +00:00
Mike Gelfand
9674df5c4d Use jQuery UI's ui-helper-hidden CSS class instead of our own 2015-04-26 03:35:44 +00:00
Mike Gelfand
a1393e7b35 #5934: Generate REVISION file and use it in case of missing reliable source 2015-04-24 19:14:56 +00:00