diff --git a/macosx/QuittingWindow.xib b/macosx/QuittingWindow.xib
index e05681f70..ec4834ec4 100644
--- a/macosx/QuittingWindow.xib
+++ b/macosx/QuittingWindow.xib
@@ -30,7 +30,7 @@
2
{{196, 429}, {323, 81}}
536870912
- Closing
+ Closing Connections
NSWindow
-
- macosx/IPCController.h
+
+ macosx/UKKQueue/UKMainThreadProxy.h
@@ -353,33 +327,7 @@
-
- macosx/UKKQueue/UKKQueue.h
-
-
-
-
-
-
- YES
-
- YES
-
-
- YES
-
-
-
- YES
-
- YES
-
-
- YES
-
-
-
-
+
macosx/UKKQueue/UKFileWatcher.h
@@ -405,8 +353,34 @@
-
- macosx/UKKQueue/UKMainThreadProxy.h
+
+ macosx/UKKQueue/UKKQueue.h
+
+
+
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+
+ macosx/IPCController.h
@@ -431,10 +405,36 @@
-
+
macosx/NSMenuAdditions.h
+
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+ YES
+
+ YES
+
+
+ YES
+
+
+
+
+ macosx/NSApplicationAdditions.h
+
+
0
@@ -445,7 +445,7 @@
AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxBTAAsADAAxADUANgA8AD0A
QgBWAFcAWABZAAsAZgBrAHsAfQCAAIEAhgCRAJIAogCjAKsArACvALkAugC7AMAAwgDHAMgAywDPANMA
1wALANgA2gDbAN4A4gDoAPAA8QD1APoA+wEAAQEBCgENAQ4BEAEZASMBLQEuAS8BMAExATIBMwE0ATcB
-OgFHAVQBVQFWAFMBVwC+ALYBWABUAVkBWgFdAWABY1UkbnVsbN8QEgANAA4ADwAQABEAEgATABQAFQAW
+OgFHAFMAtgFUAVUAVAFWAL4BVwFYAVkBWgFdAWABY1UkbnVsbN8QEgANAA4ADwAQABEAEgATABQAFQAW
ABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMFZOU1Jvb3RW
JGNsYXNzXU5TT2JqZWN0c0tleXNfEA9OU0NsYXNzZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlPaWRz
VmFsdWVzXU5TQ29ubmVjdGlvbnNbTlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlNDbGFzc2VzS2V5c1pO
@@ -458,52 +458,53 @@ SUJDb2NvYUZyYW1ld29ya9IADgA+AD8AQFpOUy5vYmplY3RzgCqhAEGAB9oAQwAOAEQARQBGAEcASABJ
AEoASwBMAE0ATgBPAFAAUQBSAFMAVAArXE5TV2luZG93Vmlld1xOU1NjcmVlblJlY3RdTlNXaW5kb3dU
aXRsZVlOU1dURmxhZ3NdTlNXaW5kb3dDbGFzc1xOU1dpbmRvd1JlY3RfEA9OU1dpbmRvd0JhY2tpbmdf
EBFOU1dpbmRvd1N0eWxlTWFza1tOU1ZpZXdDbGFzc4ALgCmAKIAJEiAAAACACoAIEAIQAYAAXxAXe3sx
-OTYsIDQyOX0sIHszMjMsIDgxfX1XQ2xvc2luZ1hOU1dpbmRvd9cAWgAOAFsAXABdAFgAXgBfAGAAYQBi
-AGMAXwBlXxAPTlNOZXh0UmVzcG9uZGVyWk5TU3Vidmlld3NYTlN2RmxhZ3NbTlNGcmFtZVNpemVbTlNT
-dXBlcnZpZXeADIAngA0RAQCAJYAMgCbSAA4APgBnAGiAJKIAaQBqgA6AE9oAWgAOAGwAbQBuAFwAWABv
-AF4AcABMAHIAcwB0AHUAdgBfAHgATAB6V05TRnJhbWVaTlNNYXhWYWx1ZVpOU01pblZhbHVlWU5TcGlG
-bGFnc1xOU0RyYXdNYXRyaXiAC4ASgBEjQFkAAAAAAAAjQDQAAAAAAAARBQ+ADBFACoALgA/RAA4AfIAQ
-0gA3ADgAfgB/ogB/ADtaTlNQU01hdHJpeF8QFXt7MTgsIDE2fSwgezI5MiwgMjB9fdIANwA4AIIAg6QA
-gwCEAIUAO18QE05TUHJvZ3Jlc3NJbmRpY2F0b3JWTlNWaWV3W05TUmVzcG9uZGVy2ABaAA4AbACHAFwA
-iABYAF4ATACKAIsAjACNAI4AXwBMVk5TQ2VsbFlOU0VuYWJsZWSAC4AjgBSAFREBDwmADIALXxAVe3sx
-NywgNDR9LCB7Mjk0LCAxN3192ACTAA4AlACVAJYAlwCYAJkAmgCbAJwAnQCeAGoAoAChW05TQ2VsbEZs
-YWdzXxARTlNCYWNrZ3JvdW5kQ29sb3JaTlNDb250ZW50c1lOU1N1cHBvcnRdTlNDb250cm9sVmlld1xO
-U0NlbGxGbGFnczJbTlNUZXh0Q29sb3ISBAH+QIAigBqAFoAXgBMSEEAEAIAfXW1lc3NhZ2UgZmllbGTU
-AA4ApAClAKYApwCoAKkAqlZOU1NpemVWTlNOYW1lWE5TZkZsYWdzgBkjQCoAAAAAAACAGBEEFFxMdWNp
-ZGFHcmFuZGXSADcAOACtAK6iAK4AO1ZOU0ZvbnTVAA4AsACxALIAswC0ALUAtgC3ALhXTlNDb2xvclxO
-U0NvbG9yU3BhY2VbTlNDb2xvck5hbWVdTlNDYXRhbG9nTmFtZYAegB0QBoAcgBtWU3lzdGVtXGNvbnRy
-b2xDb2xvctMADgCxALwAtAC+AL9XTlNXaGl0ZYAeEANLMC42NjY2NjY2OQDSADcAOADBALCiALAAO9UA
-DgCwALEAsgCzALQAxAC2AMUAuIAegCGAIIAbXxAQY29udHJvbFRleHRDb2xvctMADgCxALwAtAC+AMqA
-HkIwANIANwA4AMwAzaQAzQDOAIcAO18QD05TVGV4dEZpZWxkQ2VsbFxOU0FjdGlvbkNlbGzSADcAOADQ
-ANGlANEA0gCEAIUAO1tOU1RleHRGaWVsZFlOU0NvbnRyb2zSADcAOADUANWjANUA1gA7Xk5TTXV0YWJs
-ZUFycmF5V05TQXJyYXlZezMyMywgODF90gA3ADgA2QCEowCEAIUAO18QFnt7MCwgMH0sIHsxNjgwLCAx
-MDI4fX3SADcAOADcAN2iAN0AO18QEE5TV2luZG93VGVtcGxhdGXSADcAOADfAOCjAOAA4QA7XE5TTXV0
-YWJsZVNldFVOU1NldNIADgA+AGcA5IAkowDlAOYA54AsgC+AMdQADgDpAOoA6wDsAGoAHwDvXU5TRGVz
-dGluYXRpb25YTlNTb3VyY2VXTlNMYWJlbIAugBOAAoAtXWZNZXNzYWdlRmllbGTSADcAOADyAPOjAPMA
-9AA7XxAUTlNOaWJPdXRsZXRDb25uZWN0b3JeTlNOaWJDb25uZWN0b3LUAA4A6QDqAOsA7ABpAB8A+YAu
-gA6AAoAwXGZQcm9ncmVzc0JhctQADgDpAOoA6wDsAEEAHwD/gC6AB4ACgDJWd2luZG930gAOAD4BAgED
-gDamAGkAjABBAQcATABqgA6AFYAHgDSAC4AT0gAOADIAMwEMgASANV1OU0FwcGxpY2F0aW9u0gA3ADgB
-DwDWogDWADvSAA4APgECARKANqYATABqAB8AHwBBAEyAC4ATgAKAAoAHgAvSAA4APgECARuANqcAHwEH
-AEwAagBpAEEAjIACgDSAC4ATgA6AB4AV0gAOAD4BAgElgDanASYBJwEoASkBKgErASyAOoA7gDyAPYA+
-gD+AQFxGaWxlJ3MgT3duZXJbQXBwbGljYXRpb25cQ29udGVudCBWaWV3XxAbU3RhdGljIFRleHQgKG1l
-c3NhZ2UgZmllbGQpXxAdSG9yaXpvbnRhbCBQcm9ncmVzcyBJbmRpY2F0b3JfEBBXaW5kb3cgKENsb3Np
-bmcpXxAfVGV4dCBGaWVsZCBDZWxsIChtZXNzYWdlIGZpZWxkKdIADgA+AQIBNoA2oNIADgA+AQIBOYA2
-oNIADgA+AQIBPIA2qgAfAOcBBwBMAGoAaQDlAOYAQQCMgAKAMYA0gAuAE4AOgCyAL4AHgBXSAA4APgEC
-AUmANqoBSgFLAUwBTQFOAU8BUAFRAVIBU4BFgEaAR4BIgEmASoBLgEyATYBOEAkQBxP//////////RAE
-EAgQBdIADgA+AGcBXIAkoNIADgA+AQIBX4A2oNIADgA+AQIBYoA2oNIANwA4AWQBZaIBZQA7Xk5TSUJP
-YmplY3REYXRhAAgAGQAiACcAMQA6AD8ARABSAFQAZgEPARUBYAFnAW4BfAGOAaoBuAHEAdAB3gHpAfcC
-EwIhAjQCRgJgAmoCdwJ5AnsCfQJ/AoECgwKFAocCiQKLAo0CjwKRApMClQKXApkCmwKkArACsgK0As8C
-2ALhAuwC8QMAAwkDHAMlAzADMgM1AzcDYANtA3oDiAOSA6ADrQO/A9MD3wPhA+MD5QPnA+wD7gPwA/ID
-9AP2BBAEGAQhBD4EUARbBGQEcAR8BH4EgASCBIUEhwSJBIsElASWBJsEnQSfBMgE0ATbBOYE8AT9BP8F
-AQUDBQwFFQUYBRoFHQUfBSEFJgUoBTEFNgVBBVkFYgVrBYEFiAWUBbUFvAXGBcgFygXMBc4F0QXSBdQF
-1gXuBg8GGwYvBjoGRAZSBl8GawZwBnIGdAZ2BngGegZ/BoEGjwagBqcGrga3BrkGwgbEBscG1AbdBuIG
-6Qb+BwYHEwcfBy0HLwcxBzMHNQc3Bz4HSwdYB2AHYgdkB3AHeQd+B5MHlQeXB5kHmweuB7sHvQfAB8kH
-0gfkB/EH+ggFCBEIGwgkCCsIOghCCEwIVQhcCHUIfgiDCJYInwimCLMIuQjCCMQIywjNCM8I0QjiCPAI
-+QkBCQMJBQkHCQkJFwkgCScJPglNCV4JYAliCWQJZglzCYQJhgmICYoJjAmTCZwJngmrCa0JrwmxCbMJ
-tQm3CcAJwgnECdIJ2wngCekJ6wn4CfoJ/An+CgAKAgoECg0KDwoeCiAKIgokCiYKKAoqCiwKNQo3CkYK
-SApKCkwKTgpQClIKVAphCm0KegqYCrgKywrtCvYK+Ar5CwILBAsFCw4LEAslCycLKQsrCy0LLwsxCzML
-NQs3CzkLQgtEC1kLWwtdC18LYQtjC2ULZwtpC2sLbQtvC3ELegt8C34LgAuJC4sLjAuVC5cLmAuhC6ML
-pAutC7IAAAAAAAACAgAAAAAAAAFmAAAAAAAAAAAAAAAAAAALwQ
+OTYsIDQyOX0sIHszMjMsIDgxfX1fEBNDbG9zaW5nIENvbm5lY3Rpb25zWE5TV2luZG931wBaAA4AWwBc
+AF0AWABeAF8AYABhAGIAYwBfAGVfEA9OU05leHRSZXNwb25kZXJaTlNTdWJ2aWV3c1hOU3ZGbGFnc1tO
+U0ZyYW1lU2l6ZVtOU1N1cGVydmlld4AMgCeADREBAIAlgAyAJtIADgA+AGcAaIAkogBpAGqADoAT2gBa
+AA4AbABtAG4AXABYAG8AXgBwAEwAcgBzAHQAdQB2AF8AeABMAHpXTlNGcmFtZVpOU01heFZhbHVlWk5T
+TWluVmFsdWVZTlNwaUZsYWdzXE5TRHJhd01hdHJpeIALgBKAESNAWQAAAAAAACNANAAAAAAAABEFD4AM
+EUAKgAuAD9EADgB8gBDSADcAOAB+AH+iAH8AO1pOU1BTTWF0cml4XxAVe3sxOCwgMTZ9LCB7MjkyLCAy
+MH190gA3ADgAggCDpACDAIQAhQA7XxATTlNQcm9ncmVzc0luZGljYXRvclZOU1ZpZXdbTlNSZXNwb25k
+ZXLYAFoADgBsAIcAXACIAFgAXgBMAIoAiwCMAI0AjgBfAExWTlNDZWxsWU5TRW5hYmxlZIALgCOAFIAV
+EQEPCYAMgAtfEBV7ezE3LCA0NH0sIHsyOTQsIDE3fX3YAJMADgCUAJUAlgCXAJgAmQCaAJsAnACdAJ4A
+agCgAKFbTlNDZWxsRmxhZ3NfEBFOU0JhY2tncm91bmRDb2xvclpOU0NvbnRlbnRzWU5TU3VwcG9ydF1O
+U0NvbnRyb2xWaWV3XE5TQ2VsbEZsYWdzMltOU1RleHRDb2xvchIEAf5AgCKAGoAWgBeAExIQQAQAgB9d
+bWVzc2FnZSBmaWVsZNQADgCkAKUApgCnAKgAqQCqVk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OAGSNAKgAA
+AAAAAIAYEQQUXEx1Y2lkYUdyYW5kZdIANwA4AK0ArqIArgA7Vk5TRm9udNUADgCwALEAsgCzALQAtQC2
+ALcAuFdOU0NvbG9yXE5TQ29sb3JTcGFjZVtOU0NvbG9yTmFtZV1OU0NhdGFsb2dOYW1lgB6AHRAGgByA
+G1ZTeXN0ZW1cY29udHJvbENvbG9y0wAOALEAvAC0AL4Av1dOU1doaXRlgB4QA0swLjY2NjY2NjY5ANIA
+NwA4AMEAsKIAsAA71QAOALAAsQCyALMAtADEALYAxQC4gB6AIYAggBtfEBBjb250cm9sVGV4dENvbG9y
+0wAOALEAvAC0AL4AyoAeQjAA0gA3ADgAzADNpADNAM4AhwA7XxAPTlNUZXh0RmllbGRDZWxsXE5TQWN0
+aW9uQ2VsbNIANwA4ANAA0aUA0QDSAIQAhQA7W05TVGV4dEZpZWxkWU5TQ29udHJvbNIANwA4ANQA1aMA
+1QDWADteTlNNdXRhYmxlQXJyYXlXTlNBcnJheVl7MzIzLCA4MX3SADcAOADZAISjAIQAhQA7XxAWe3sw
+LCAwfSwgezE2ODAsIDEwMjh9fdIANwA4ANwA3aIA3QA7XxAQTlNXaW5kb3dUZW1wbGF0ZdIANwA4AN8A
+4KMA4ADhADtcTlNNdXRhYmxlU2V0VU5TU2V00gAOAD4AZwDkgCSjAOUA5gDngCyAL4Ax1AAOAOkA6gDr
+AOwAaQAfAO9dTlNEZXN0aW5hdGlvblhOU1NvdXJjZVdOU0xhYmVsgC6ADoACgC1cZlByb2dyZXNzQmFy
+0gA3ADgA8gDzowDzAPQAO18QFE5TTmliT3V0bGV0Q29ubmVjdG9yXk5TTmliQ29ubmVjdG9y1AAOAOkA
+6gDrAOwAagAfAPmALoATgAKAMF1mTWVzc2FnZUZpZWxk1AAOAOkA6gDrAOwAQQAfAP+ALoAHgAKAMlZ3
+aW5kb3fSAA4APgECAQOANqYBBABBAEwAaQBqAIyANIAHgAuADoATgBXSAA4AMgAzAQyABIA1XU5TQXBw
+bGljYXRpb27SADcAOAEPANaiANYAO9IADgA+AQIBEoA2pgAfAB8AQQBMAEwAaoACgAKAB4ALgAuAE9IA
+DgA+AQIBG4A2pwBMAQQAHwBBAGkAagCMgAuANIACgAeADoATgBXSAA4APgECASWANqcBJgEnASgBKQEq
+ASsBLIA6gDuAPIA9gD6AP4BAXENvbnRlbnQgVmlld1tBcHBsaWNhdGlvblxGaWxlJ3MgT3duZXJfEBxX
+aW5kb3cgKENsb3NpbmcgQ29ubmVjdGlvbnMpXxAdSG9yaXpvbnRhbCBQcm9ncmVzcyBJbmRpY2F0b3Jf
+EBtTdGF0aWMgVGV4dCAobWVzc2FnZSBmaWVsZClfEB9UZXh0IEZpZWxkIENlbGwgKG1lc3NhZ2UgZmll
+bGQp0gAOAD4BAgE2gDag0gAOAD4BAgE5gDag0gAOAD4BAgE8gDaqAEwA5gEEAB8AQQDnAGkAagDlAIyA
+C4AvgDSAAoAHgDGADoATgCyAFdIADgA+AQIBSYA2qgFKAUsBTAFNAU4BTwFQAVEBUgFTgEWARoBHgEiA
+SYBKgEuATIBNgE4T//////////0QCRAHEAQQCBAF0gAOAD4AZwFcgCSg0gAOAD4BAgFfgDag0gAOAD4B
+AgFigDag0gA3ADgBZAFlogFlADteTlNJQk9iamVjdERhdGEACAAZACIAJwAxADoAPwBEAFIAVABmAQ8B
+FQFgAWcBbgF8AY4BqgG4AcQB0AHeAekB9wITAiECNAJGAmACagJ3AnkCewJ9An8CgQKDAoUChwKJAosC
+jQKPApECkwKVApcCmQKbAqQCsAKyArQCzwLYAuEC7ALxAwADCQMcAyUDMAMyAzUDNwNgA20DegOIA5ID
+oAOtA78D0wPfA+ED4wPlA+cD7APuA/AD8gP0A/YEEAQmBC8ETAReBGkEcgR+BIoEjASOBJAEkwSVBJcE
+mQSiBKQEqQSrBK0E1gTeBOkE9AT+BQsFDQUPBREFGgUjBSYFKAUrBS0FLwU0BTYFPwVEBU8FZwVwBXkF
+jwWWBaIFwwXKBdQF1gXYBdoF3AXfBeAF4gXkBfwGHQYpBj0GSAZSBmAGbQZ5Bn4GgAaCBoQGhgaIBo0G
+jwadBq4GtQa8BsUGxwbQBtIG1QbiBusG8Ab3BwwHFAchBy0HOwc9Bz8HQQdDB0UHTAdZB2YHbgdwB3IH
+fgeHB4wHoQejB6UHpwepB7wHyQfLB84H1wfgB/IH/wgICBMIHwgpCDIIOQhICFAIWghjCGoIgwiMCJEI
+pAitCLQIwQjHCNAI0gjZCNsI3QjfCPAI/gkHCQ8JEQkTCRUJFwkkCS0JNAlLCVoJawltCW8JcQlzCYEJ
+kgmUCZYJmAmaCaEJqgmsCbkJuwm9Cb8JwQnDCcUJzgnQCdIJ4AnpCe4J9wn5CgYKCAoKCgwKDgoQChIK
+GwodCiwKLgowCjIKNAo2CjgKOgpDCkUKVApWClgKWgpcCl4KYApiCm8KewqICqcKxwrlCwcLEAsSCxML
+HAseCx8LKAsqCz8LQQtDC0ULRwtJC0sLTQtPC1ELUwtcC14Lcwt1C3cLeQt7C30LfwuBC4MLhQuHC5AL
+kguUC5YLmAuaC6MLpQumC68LsQuyC7sLvQu+C8cLzAAAAAAAAAICAAAAAAAAAWYAAAAAAAAAAAAAAAAA
+AAvbA
diff --git a/macosx/QuittingWindowController.m b/macosx/QuittingWindowController.m
index 2e4e80b11..edae8d77d 100644
--- a/macosx/QuittingWindowController.m
+++ b/macosx/QuittingWindowController.m
@@ -34,7 +34,9 @@
- (void) awakeFromNib
{
- [fMessageField setStringValue: [NSLocalizedString(@"Shutting Down", "Quitting Window -> message") stringByAppendingEllipsis]];
+ [[self window] setTitle: NSLocalizedString(@"Closing Connections", "Quitting window -> title")];
+ [fMessageField setStringValue: [NSLocalizedString(@"Sending upload/download totals to tracker", "Quitting window -> message")
+ stringByAppendingEllipsis]];
[fProgressBar setUsesThreadedAnimation: YES];
[fProgressBar startAnimation: nil];