diff --git a/NEWS b/NEWS
index b550626e1..cd133d226 100644
--- a/NEWS
+++ b/NEWS
@@ -228,7 +228,7 @@
[http://trac.transmissionbt.com/query?milestone=1.52&group=component&groupdesc=1&order=severity All tickets closed by this release]
==== Mac ====
* Improve interface responsiveness when downloading
-==== GTK+ ==== and Daemon
+==== GTK+ and Daemon ====
* Always honor the XDG setting for the download directory
==== GTK+ ====
* Fix formatting error when showing speeds measured in MB/s
diff --git a/macosx/InfoWindowController.h b/macosx/InfoWindowController.h
index 80436e960..9301007f6 100644
--- a/macosx/InfoWindowController.h
+++ b/macosx/InfoWindowController.h
@@ -59,7 +59,7 @@
NSArray * fPeers, * fWebSeeds;
IBOutlet NSTableView * fPeerTable, * fWebSeedTable;
- IBOutlet NSTextField * fConnectedPeersField, * fDownloadingFromField, * fUploadingToField, * fKnownField;
+ IBOutlet NSTextField * fConnectedPeersField;
IBOutlet NSTextView * fErrorMessageView;
IBOutlet PiecesView * fPiecesView;
IBOutlet NSSegmentedControl * fPiecesControl;
diff --git a/macosx/InfoWindowController.m b/macosx/InfoWindowController.m
index 37d6e432c..d4dd879be 100644
--- a/macosx/InfoWindowController.m
+++ b/macosx/InfoWindowController.m
@@ -353,9 +353,6 @@ typedef enum
[fErrorMessageView setSelectable: NO];
[fConnectedPeersField setStringValue: @""];
- [fDownloadingFromField setStringValue: @""];
- [fUploadingToField setStringValue: @""];
- [fKnownField setStringValue: @""];
[fDateAddedField setStringValue: @""];
[fDateCompletedField setStringValue: @""];
@@ -1493,49 +1490,56 @@ typedef enum
return;
Torrent * torrent = [fTorrents objectAtIndex: 0];
+ NSString * knownString = [NSString stringWithFormat: NSLocalizedString(@"%d known", "Inspector -> Peers tab -> peers"),
+ [torrent totalPeersKnown]];
if ([torrent isActive])
{
- NSInteger total = [torrent totalPeersConnected];
- NSString * connected = [NSString stringWithFormat:
- NSLocalizedString(@"%d Connected", "Inspector -> Peers tab -> peers"), total];
+ const NSInteger total = [torrent totalPeersConnected];
+ NSString * connectedText = [NSString stringWithFormat: NSLocalizedString(@"%d Connected", "Inspector -> Peers tab -> peers"),
+ total];
if (total > 0)
{
- NSMutableArray * components = [NSMutableArray arrayWithCapacity: 5];
+ NSMutableArray * fromComponents = [NSMutableArray arrayWithCapacity: 5];
NSInteger count;
if ((count = [torrent totalPeersTracker]) > 0)
- [components addObject: [NSString stringWithFormat:
+ [fromComponents addObject: [NSString stringWithFormat:
NSLocalizedString(@"%d tracker", "Inspector -> Peers tab -> peers"), count]];
if ((count = [torrent totalPeersIncoming]) > 0)
- [components addObject: [NSString stringWithFormat:
+ [fromComponents addObject: [NSString stringWithFormat:
NSLocalizedString(@"%d incoming", "Inspector -> Peers tab -> peers"), count]];
if ((count = [torrent totalPeersCache]) > 0)
- [components addObject: [NSString stringWithFormat:
+ [fromComponents addObject: [NSString stringWithFormat:
NSLocalizedString(@"%d cache", "Inspector -> Peers tab -> peers"), count]];
if ((count = [torrent totalPeersPex]) > 0)
- [components addObject: [NSString stringWithFormat:
+ [fromComponents addObject: [NSString stringWithFormat:
NSLocalizedString(@"%d PEX", "Inspector -> Peers tab -> peers"), count]];
if ((count = [torrent totalPeersDHT]) > 0)
- [components addObject: [NSString stringWithFormat:
+ [fromComponents addObject: [NSString stringWithFormat:
NSLocalizedString(@"%d DHT", "Inspector -> Peers tab -> peers"), count]];
- connected = [connected stringByAppendingFormat: @": %@", [components componentsJoinedByString: @", "]];
+ NSMutableArray * upDownComponents = [NSMutableArray arrayWithCapacity: 3];
+ if ((count = [torrent peersSendingToUs]) > 0)
+ [upDownComponents addObject: [NSString stringWithFormat:
+ NSLocalizedString(@"DL from %d", "Inspector -> Peers tab -> peers"), count]];
+ if ((count = [torrent peersGettingFromUs]) > 0)
+ [upDownComponents addObject: [NSString stringWithFormat:
+ NSLocalizedString(@"UL to %d", "Inspector -> Peers tab -> peers"), count]];
+ [upDownComponents addObject: knownString];
+
+ connectedText = [connectedText stringByAppendingFormat: @": %@\n%@", [fromComponents componentsJoinedByString: @", "],
+ [upDownComponents componentsJoinedByString: @", "]];
}
- [fConnectedPeersField setStringValue: connected];
-
- [fDownloadingFromField setIntValue: [torrent peersSendingToUs]];
- [fUploadingToField setIntValue: [torrent peersGettingFromUs]];
+ [fConnectedPeersField setStringValue: connectedText];
}
else
{
- [fConnectedPeersField setStringValue: @""];
- [fDownloadingFromField setStringValue: @""];
- [fUploadingToField setStringValue: @""];
+ NSString * connectedText = [NSString stringWithFormat: @"%@\n%@",
+ NSLocalizedString(@"Not Connected", "Inspector -> Peers tab -> peers"), knownString];
+ [fConnectedPeersField setStringValue: connectedText];
}
- [fKnownField setIntValue: [torrent totalPeersKnown]];
-
[fPeers release];
fPeers = [[[torrent peers] sortedArrayUsingDescriptors: [self peerSortDescriptors]] retain];
[fPeerTable reloadData];
diff --git a/macosx/Torrent.m b/macosx/Torrent.m
index 643ab0816..90d33ffda 100644
--- a/macosx/Torrent.m
+++ b/macosx/Torrent.m
@@ -409,7 +409,7 @@ int trashDataFile(const char * filename)
return tr_torrentSetPriority(fHandle, priority);
}
-#warning should be somewhere else?
+#warning when 10.6-only use recycleURLs:completionHandler:
+ (void) trashFile: (NSString *) path
{
//attempt to move to trash
diff --git a/macosx/en.lproj/InfoWindow.xib b/macosx/en.lproj/InfoWindow.xib
index 003683435..4319391a9 100644
--- a/macosx/en.lproj/InfoWindow.xib
+++ b/macosx/en.lproj/InfoWindow.xib
@@ -13,6 +13,7 @@
- {{10, 77}, {340, 190}}
+ {{10, 44}, {338, 227}}
562
@@ -2273,13 +2293,13 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
256
- {338, 48}
+ {336, 48}
YES
@@ -2293,7 +2313,7 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
YES
Address
- 294
+ 292
10
10000
- {{1, 17}, {338, 48}}
+ {{1, 17}, {336, 48}}
@@ -2404,7 +2424,7 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
YES
- {{1, 0}, {338, 17}}
+ {{1, 0}, {336, 17}}
@@ -2413,7 +2433,7 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
- {{10, 271}, {340, 66}}
+ {{10, 275}, {338, 66}}
562
@@ -2424,124 +2444,9 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
AAAAAAAAAABBgAAAQYAAAA
-
-
- 292
- {{10, 26}, {53, 14}}
-
- YES
-
- 67239424
- 71303168
- DL From:
-
-
-
-
-
-
-
-
- 292
- {{64, 26}, {65, 14}}
-
- YES
-
- 67239424
- 4194304
-
-
- N/A
-
-
-
-
-
-
-
- 292
- {{24, 42}, {39, 14}}
-
- YES
-
- 67239424
- 71303168
- UL To:
-
-
-
-
-
-
-
-
- 292
- {{64, 42}, {65, 14}}
-
- YES
-
- 67239424
- 4194304
-
-
- N/A
-
-
-
-
-
-
-
- 290
- {{2, 58}, {356, 14}}
-
- YES
-
- 67239488
- 138545152
-
-
- no peer info available
-
-
-
-
-
-
-
- 292
- {{19, 10}, {44, 14}}
-
- YES
-
- 67239424
- 71303168
- Known:
-
-
-
-
-
-
-
-
- 292
- {{64, 10}, {65, 14}}
-
- YES
-
- 67239424
- 4194304
-
-
- N/A
-
-
-
-
-
- {360, 342}
+ {358, 346}
+
NSView
NSResponder
@@ -3725,38 +3630,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
1139
-
-
- fConnectedPeersField
-
-
-
- 1140
-
-
-
- fUploadingToField
-
-
-
- 1141
-
-
-
- fDownloadingFromField
-
-
-
- 1142
-
-
-
- fKnownField
-
-
-
- 1143
-
dataSource
@@ -4117,6 +3990,14 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
1820
+
+
+ fConnectedPeersField
+
+
+
+ 1829
+
@@ -4756,14 +4637,8 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
YES
-
-
-
-
-
-
-
+
Peers
@@ -4858,69 +4733,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
-
- 1044
-
-
- YES
-
-
-
-
-
- 1045
-
-
- YES
-
-
-
-
-
- 1050
-
-
- YES
-
-
-
-
-
- 1051
-
-
- YES
-
-
-
-
-
- 1054
-
-
- YES
-
-
-
-
-
- 1055
-
-
- YES
-
-
-
-
-
- 1056
-
-
- YES
-
-
-
-
1057
@@ -5355,41 +5167,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
-
- 1534
-
-
-
-
- 1535
-
-
-
-
- 1540
-
-
-
-
- 1541
-
-
-
-
- 1544
-
-
-
-
- 1545
-
-
-
-
- 1546
-
-
-
1547
@@ -5937,6 +5714,20 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
+
+ 1827
+
+
+ YES
+
+
+
+
+
+ 1828
+
+
+
@@ -6032,20 +5823,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
1042.ImportedFromIB2
1043.IBPluginDependency
1043.ImportedFromIB2
- 1044.IBPluginDependency
- 1044.ImportedFromIB2
- 1045.IBPluginDependency
- 1045.ImportedFromIB2
- 1050.IBPluginDependency
- 1050.ImportedFromIB2
- 1051.IBPluginDependency
- 1051.ImportedFromIB2
- 1054.IBPluginDependency
- 1054.ImportedFromIB2
- 1055.IBPluginDependency
- 1055.ImportedFromIB2
- 1056.IBPluginDependency
- 1056.ImportedFromIB2
1057.IBEditorWindowLastContentRect
1057.IBPluginDependency
1057.ImportedFromIB2
@@ -6149,13 +5926,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
1531.IBPluginDependency
1532.IBPluginDependency
1533.IBPluginDependency
- 1534.IBPluginDependency
- 1535.IBPluginDependency
- 1540.IBPluginDependency
- 1541.IBPluginDependency
- 1544.IBPluginDependency
- 1545.IBPluginDependency
- 1546.IBPluginDependency
1547.IBPluginDependency
1548.IBPluginDependency
1549.IBPluginDependency
@@ -6271,6 +6041,8 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
1816.IBPluginDependency
1817.IBPluginDependency
1818.IBPluginDependency
+ 1827.IBPluginDependency
+ 1828.IBPluginDependency
28.IBPluginDependency
28.ImportedFromIB2
29.IBPluginDependency
@@ -6424,7 +6196,7 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
com.apple.InterfaceBuilder.CocoaPlugin
- {{460, 513}, {360, 342}}
+ {{460, 509}, {358, 346}}
com.apple.InterfaceBuilder.CocoaPlugin
{{63, 584}, {360, 342}}
@@ -6450,20 +6222,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
-
- com.apple.InterfaceBuilder.CocoaPlugin
-
- com.apple.InterfaceBuilder.CocoaPlugin
-
- com.apple.InterfaceBuilder.CocoaPlugin
-
- com.apple.InterfaceBuilder.CocoaPlugin
-
- com.apple.InterfaceBuilder.CocoaPlugin
-
- com.apple.InterfaceBuilder.CocoaPlugin
-
{{445, 480}, {340, 365}}
com.apple.InterfaceBuilder.CocoaPlugin
@@ -6579,13 +6337,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
- com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
@@ -6690,6 +6441,8 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
+ com.apple.InterfaceBuilder.CocoaPlugin
com.apple.InterfaceBuilder.CocoaPlugin
@@ -6794,7 +6547,7 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
- 1826
+ 1829
@@ -6938,7 +6691,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
fDownloadLimitField
fDownloadLimitLabel
fDownloadedTotalField
- fDownloadingFromField
fErrorMessageView
fFailedHashField
fFileController
@@ -6949,7 +6701,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
fHaveField
fImageView
fInfoView
- fKnownField
fNameField
fOptionsView
fPeerTable
@@ -6977,7 +6728,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
fUploadLimitField
fUploadLimitLabel
fUploadedTotalField
- fUploadingToField
fWebSeedTable
@@ -6996,7 +6746,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
NSTextField
NSTextField
NSTextField
- NSTextField
NSTextView
NSTextField
FileOutlineController
@@ -7008,7 +6757,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
NSImageView
NSView
NSTextField
- NSTextField
NSView
NSTableView
NSTextField
@@ -7035,7 +6783,6 @@ AAAAAAAAAAAAAAAAAAB0ZXh0AAAAAENvcHlyaWdodCBBcHBsZSwgSW5jLiwgMjAwOQA
NSTextField
NSTextField
NSTextField
- NSTextField
NSTableView