Compare commits
	
		
			962 Commits
		
	
	
		
			release-2.
			...
			release-2.
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|   | fa9c319f5b | ||
|   | eb54d81c5e | ||
|   | 431d2f082c | ||
|   | a0ff0cdc7e | ||
|   | fb91558261 | ||
|   | fc2a47ca31 | ||
|   | dcccbaad59 | ||
|   | 99d040de3f | ||
|   | ee30a75b57 | ||
|   | 8c001aa478 | ||
|   | 849bc11a01 | ||
|   | 5024e0b092 | ||
|   | d93447489b | ||
|   | 33988e70ab | ||
|   | d2b41d70c8 | ||
|   | 8e1e51d268 | ||
|   | 53500ea005 | ||
|   | e048389dea | ||
|   | fa7b1a205d | ||
|   | 7dd6b7e9bb | ||
|   | 78b96accda | ||
|   | 73d0e2568a | ||
|   | 92fc212a0e | ||
|   | 6f4d7b7c1b | ||
|   | 63ee1c36e8 | ||
|   | 7d07debcb5 | ||
|   | dd67e1ee9d | ||
|   | 493efdbf10 | ||
|   | e323175275 | ||
|   | c1fa7f8645 | ||
|   | 275b962363 | ||
|   | 3847c33017 | ||
|   | 9e21f52213 | ||
|   | 25cf9b33ec | ||
|   | c7a2d3589f | ||
|   | d8dd3834c3 | ||
|   | ee01c2c745 | ||
|   | e7e5a2b4e9 | ||
|   | ff16f59be1 | ||
|   | 2cd4937ddc | ||
|   | 0e9abc1762 | ||
|   | e24ce87946 | ||
|   | 308e358d3f | ||
|   | d15e6a4847 | ||
|   | e311239a28 | ||
|   | df677789d2 | ||
|   | 0af44eadb6 | ||
|   | 85cafe530e | ||
|   | 7609db28f1 | ||
|   | fefda39284 | ||
|   | b2f98bd059 | ||
|   | 26c69fe6d4 | ||
|   | bf4f1a7c37 | ||
|   | 9b0dd39d9d | ||
|   | 66d4cc2ab8 | ||
|   | 0bcbaf6521 | ||
|   | e074872b24 | ||
|   | 63ec1e618e | ||
|   | 331c15b76c | ||
|   | d2089c9aad | ||
|   | 3c8326d3b6 | ||
|   | 2d0713ca1d | ||
|   | afaca423cc | ||
|   | ff08abe177 | ||
|   | 159be479cc | ||
|   | f3066b07b5 | ||
|   | aa58636832 | ||
|   | 5d1a584eac | ||
|   | 7ee9abd646 | ||
|   | 4d977a8d46 | ||
|   | 5c891724c4 | ||
|   | 185af18790 | ||
|   | fa6da97cf9 | ||
|   | 9503d9b024 | ||
|   | de7b6ca553 | ||
|   | 1788078594 | ||
|   | 3caf473424 | ||
|   | 5435bd2354 | ||
|   | 1cdb22a7e3 | ||
|   | 95a9424ae7 | ||
|   | 902196a176 | ||
|   | dbfef8665b | ||
|   | b3d8f2400f | ||
|   | c12ae58868 | ||
|   | 4b77bb57ad | ||
|   | a6b1d308c2 | ||
|   | b483f09d11 | ||
|   | bbb5ad31c4 | ||
|   | 3d4c1fe7da | ||
|   | 7a2c0d5d5a | ||
|   | 39d86c5f61 | ||
|   | e2cdbbb184 | ||
|   | e83f9245a9 | ||
|   | 52f25c44eb | ||
|   | 1ed565d8e5 | ||
|   | 10801f111b | ||
|   | efe1655834 | ||
|   | 7f71e3981e | ||
|   | 8113f8df63 | ||
|   | 62f579fdbe | ||
|   | 1d4454c6eb | ||
|   | 310433fb54 | ||
|   | c0520146e9 | ||
|   | 35f6675d86 | ||
|   | 9494b15bd5 | ||
|   | 3b82120923 | ||
|   | b9a0adc311 | ||
|   | 1e21ac3d79 | ||
|   | 864bb8285e | ||
|   | 208e988c70 | ||
|   | 5cbcfb8efb | ||
|   | 107b833703 | ||
|   | e2208a484e | ||
|   | 5ab7c91d49 | ||
|   | a91ad3c9c7 | ||
|   | 385f950c2b | ||
|   | 4667a84939 | ||
|   | 5af0cacf0c | ||
|   | bceb00d35f | ||
|   | 51068294f1 | ||
|   | bcdf4e42fa | ||
|   | 214bb13843 | ||
|   | 7998395532 | ||
|   | 35aee18112 | ||
|   | 8ddbdd34ed | ||
|   | 66a5e479c7 | ||
|   | 8f5bd2bc9f | ||
|   | 5be2624cb1 | ||
|   | f9684d662d | ||
|   | 9373796dd5 | ||
|   | 2634517cdb | ||
|   | 121a636b4e | ||
|   | aad42d4a57 | ||
|   | c8b8518608 | ||
|   | 0c40a8ab05 | ||
|   | b9241ad5ad | ||
|   | d354d7133e | ||
|   | a1157c78b2 | ||
|   | fb8d52e6e0 | ||
|   | 80c42cae1a | ||
|   | f242fce5fd | ||
|   | 6223514704 | ||
|   | 8fb7445e20 | ||
|   | 3172c6859d | ||
|   | 58be573d02 | ||
|   | 82f7bdb9cc | ||
|   | b41c39b7ce | ||
|   | 9e4958e96a | ||
|   | 65091f7cb9 | ||
|   | 75b758bb1f | ||
|   | 5028ff3ddd | ||
|   | a246f76ec3 | ||
|   | eeec067481 | ||
|   | 3ee44ad0c2 | ||
|   | c38ff5b0b7 | ||
|   | e51dc6758c | ||
|   | 7bb32643fa | ||
|   | 3172e1f530 | ||
|   | 7778877fa7 | ||
|   | b4f6745251 | ||
|   | 4fd7f16911 | ||
|   | ca29b5d7fc | ||
|   | 79d5a635a4 | ||
|   | 7f615c580e | ||
|   | 967dbbda89 | ||
|   | 452c0411d2 | ||
|   | 32d3ed2144 | ||
|   | 4efae21f1d | ||
|   | c43efd7fb3 | ||
|   | 93b1dbd931 | ||
|   | 571896b888 | ||
|   | 9f5d31b2b1 | ||
|   | c01f7102e6 | ||
|   | df39e46c84 | ||
|   | 7f12bb5dfb | ||
|   | ca762139f6 | ||
|   | 67f41ad991 | ||
|   | 621ec11ae3 | ||
|   | de3135c43b | ||
|   | faed0ba45a | ||
|   | 2104e4e2ce | ||
|   | 907a17a73b | ||
|   | a1a9f8bc7e | ||
|   | a9a3bb74e7 | ||
|   | b7de3fcebd | ||
|   | 0b70b857b9 | ||
|   | 9c8a957dd7 | ||
|   | cf65e4d77d | ||
|   | 762962270c | ||
|   | a2067af4ea | ||
|   | 2f4f06ca8b | ||
|   | 56dba2cb10 | ||
|   | f824357358 | ||
|   | 778cfff4b3 | ||
|   | 8ee762695b | ||
|   | 7dd9680e26 | ||
|   | 92661e1d53 | ||
|   | 09d5665ff9 | ||
|   | c5dfe623c8 | ||
|   | 2665e2ef39 | ||
|   | dfecdb1956 | ||
|   | 5a82aee76b | ||
|   | 4f07426010 | ||
|   | 9e575e45b7 | ||
|   | 39b32bf1cd | ||
|   | 54131001b0 | ||
|   | f8134b1a62 | ||
|   | 13927599c8 | ||
|   | 0d85d0a777 | ||
|   | 0da83694e0 | ||
|   | 9bdac4d1e3 | ||
|   | 00c92d6d61 | ||
|   | 9628a9e156 | ||
|   | f1bfcb4822 | ||
|   | 87879b6738 | ||
|   | a4ff7047d1 | ||
|   | da599da36d | ||
|   | 335e7366fd | ||
|   | a993b2b3f1 | ||
|   | b81c8d29ba | ||
|   | 08a08e4b24 | ||
|   | 8b5886cc6e | ||
|   | 22b3d8d594 | ||
|   | 17efa04257 | ||
|   | e71f144c40 | ||
|   | 5e7cafb8c0 | ||
|   | d01385a7ac | ||
|   | ac80dd78a8 | ||
|   | 061f1000cf | ||
|   | c36fed3081 | ||
|   | 75002906aa | ||
|   | a451cf2d5f | ||
|   | ca10c0ab09 | ||
|   | 80d76ae038 | ||
|   | f699ee1363 | ||
|   | bd97a4bd7c | ||
|   | ec3b749ef6 | ||
|   | 44fc86e7da | ||
|   | 2cd940e7c7 | ||
|   | cc6d371667 | ||
|   | 8fcc33b375 | ||
|   | e44b570c3d | ||
|   | 8576847a99 | ||
|   | c9fc9373e5 | ||
|   | ae46d449e5 | ||
|   | fe57cef756 | ||
|   | 3affb38ba2 | ||
|   | a0dc6aa173 | ||
|   | a357a690ce | ||
|   | bce7959332 | ||
|   | eef6f600c9 | ||
|   | a3822c5aa8 | ||
|   | eeaa1e83a9 | ||
|   | 387fb93b5b | ||
|   | d470059c56 | ||
|   | 2e382fa88c | ||
|   | e1e7e782d5 | ||
|   | 6f314502f6 | ||
|   | 3284d7a8e6 | ||
|   | 609ea7b4c2 | ||
|   | 7e8d21145e | ||
|   | c31b5f1f97 | ||
|   | 11fe685a6b | ||
|   | 1127947f52 | ||
|   | 789b2cf326 | ||
|   | b9394f2ba2 | ||
|   | 7ab206ebac | ||
|   | 0beb9fff73 | ||
|   | 65b8d0c24d | ||
|   | 715fe46f45 | ||
|   | 8209f341fb | ||
|   | 0d4b55ca32 | ||
|   | ae7362706f | ||
|   | 4ca648a79b | ||
|   | 4ca0b14300 | ||
|   | 4386b6c2c4 | ||
|   | 61246f81c7 | ||
|   | 70f2bfdd9a | ||
|   | 5f23cbc470 | ||
|   | 2e0c8f848f | ||
|   | f8add0ee04 | ||
|   | f23051c1fd | ||
|   | 60636af544 | ||
|   | 2e685ea851 | ||
|   | b61a06350f | ||
|   | c9ece4695e | ||
|   | 4805690dbe | ||
|   | 8ec1621334 | ||
|   | 682377ff66 | ||
|   | 656beed82b | ||
|   | ba4a0fac77 | ||
|   | b719bfaecb | ||
|   | 4e1366bf0d | ||
|   | b67938aa3f | ||
|   | f4c29c07bf | ||
|   | 63a0f4bf11 | ||
|   | a8a2ba188d | ||
|   | a0d685bfe2 | ||
|   | a3041b7f9f | ||
|   | 83a2ae7ad3 | ||
|   | 830a6250c6 | ||
|   | f0e23ab1fc | ||
|   | 5b07c488b0 | ||
|   | f61bccf700 | ||
|   | 4fd10bc5f5 | ||
|   | c1a72f075d | ||
|   | 5c4450f3cd | ||
|   | bb606e0b2f | ||
|   | eed86aa9e1 | ||
|   | 338d4fd31e | ||
|   | 58a36f7cfd | ||
|   | 8b436f70d6 | ||
|   | 223fd4f0ba | ||
|   | 2e51e69cc9 | ||
|   | bbac79c030 | ||
|   | 607bba4625 | ||
|   | 1a0cc3215c | ||
|   | f0981c81c8 | ||
|   | 472604d1b0 | ||
|   | 781d33b869 | ||
|   | 8db8841c9c | ||
|   | 6e3b570be4 | ||
|   | defd77b94c | ||
|   | c09294df2f | ||
|   | cc97ee86df | ||
|   | 10d6dd5a23 | ||
|   | 29e79dc54d | ||
|   | 982390f074 | ||
|   | 963d73af4e | ||
|   | bdd8cbb1d8 | ||
|   | 80bd232054 | ||
|   | c2da227254 | ||
|   | e846c67bfa | ||
|   | 475c7094ab | ||
|   | 4434566d85 | ||
|   | 6bd557d22c | ||
|   | 4832a24ac5 | ||
|   | b9a3890dd5 | ||
|   | 4cf9de6515 | ||
|   | 994c798264 | ||
|   | 119bda1595 | ||
|   | bf73c47bc5 | ||
|   | ea99f44893 | ||
|   | 4ec1fd3968 | ||
|   | 0b9e25ee65 | ||
|   | 73a9985599 | ||
|   | a65f7bfa65 | ||
|   | 72cc1eb4d4 | ||
|   | ed7ae32a69 | ||
|   | 54b53f3aba | ||
|   | 2f7728f987 | ||
|   | f3a93af242 | ||
|   | 5a4ad2f822 | ||
|   | c669240037 | ||
|   | ce4fd8429e | ||
|   | cc532d95da | ||
|   | c800a0a6b5 | ||
|   | 5675c045ae | ||
|   | e16ca862f4 | ||
|   | 29e757bb3a | ||
|   | 822f1a9557 | ||
|   | 7acfb27a1f | ||
|   | 83d6731fa9 | ||
|   | de4f0272c1 | ||
|   | df50a875df | ||
|   | 5f814f23b4 | ||
|   | 98ec373f8c | ||
|   | 0bbeab9ad2 | ||
|   | ed4c711ef5 | ||
|   | fc33702b81 | ||
|   | 70c79f31c3 | ||
|   | 82dc2103b5 | ||
|   | 529ab304b4 | ||
|   | 53919446d4 | ||
|   | 1052cd019b | ||
|   | 4f87819abf | ||
|   | b94ecb2383 | ||
|   | c00d83dee9 | ||
|   | 34052ce8f9 | ||
|   | 0a0c8948ee | ||
|   | 0cc9283275 | ||
|   | 6b2e9f057b | ||
|   | 3a1fc9ec77 | ||
|   | e4399412b6 | ||
|   | 37650d8156 | ||
|   | b4fa164dc3 | ||
|   | 6148e6b192 | ||
|   | 057743a779 | ||
|   | 530ba2a0bd | ||
|   | 977b2bda7c | ||
|   | 76eb93ba1a | ||
|   | ae3c50c074 | ||
|   | 31017602fc | ||
|   | ef7e2abdaf | ||
|   | a6abedd67d | ||
|   | 9824d86a3c | ||
|   | 1eac3d1700 | ||
|   | 48585bb049 | ||
|   | 843e49a5a8 | ||
|   | db01276f1d | ||
|   | 772028106e | ||
|   | 0cd5253857 | ||
|   | eaf321facb | ||
|   | 81ecb5c7c8 | ||
|   | 3b3a452df6 | ||
|   | 65b1e29414 | ||
|   | a6e3b9afac | ||
|   | a7792701a2 | ||
|   | 846372e48b | ||
|   | 1597007ea1 | ||
|   | dbceed21f5 | ||
|   | 3254dae59f | ||
|   | 12881dd4c4 | ||
|   | 35ec93ccb1 | ||
|   | cb159ed00d | ||
|   | e5b8b41373 | ||
|   | 492814a56e | ||
|   | d639712303 | ||
|   | f5d1c8a679 | ||
|   | aea3d4be7a | ||
|   | 8d1fd7ee8e | ||
|   | a98a002d57 | ||
|   | fb874695c9 | ||
|   | 63457c034f | ||
|   | daff6dce4c | ||
|   | 94c7c5cebe | ||
|   | f2c4901dd0 | ||
|   | 95d8eb9714 | ||
|   | 62165445fe | ||
|   | 6b12371f50 | ||
|   | 38cb4ccbd3 | ||
|   | 8ccaaae085 | ||
|   | 6f7ae4770a | ||
|   | 5aa348a574 | ||
|   | 7b8fa49482 | ||
|   | 789cf654d0 | ||
|   | a300a6094e | ||
|   | 37b09e70b0 | ||
|   | 530fbfc9b4 | ||
|   | 73c312ec1a | ||
|   | 318a959470 | ||
|   | f9cc98791a | ||
|   | 263eb3c632 | ||
|   | 52b3926f92 | ||
|   | af3755bf91 | ||
|   | 419d719ab8 | ||
|   | 3877cf9ab8 | ||
|   | 912056a364 | ||
|   | 165b33a94e | ||
|   | 12fff1b966 | ||
|   | 128eba7ec3 | ||
|   | 5bb370df0e | ||
|   | 6431343ad7 | ||
|   | bd292076e3 | ||
|   | ce0ddbe517 | ||
|   | 5451bb185e | ||
|   | 057cf3648e | ||
|   | 80d5c5d85c | ||
|   | 671a997092 | ||
|   | f2fbfdf017 | ||
|   | 1ea7340111 | ||
|   | 7b38ea4151 | ||
|   | c4ed12bbd1 | ||
|   | c32b352ec1 | ||
|   | 9b2565dff9 | ||
|   | f833f26212 | ||
|   | 66a7082b5c | ||
|   | cc3a6350a5 | ||
|   | 9202ce8757 | ||
|   | c0e4f126de | ||
|   | 44ca0a4904 | ||
|   | 64ddf393aa | ||
|   | a60615a2d8 | ||
|   | d9fa9c3566 | ||
|   | 5115b8739e | ||
|   | 854fb4acc0 | ||
|   | 07ef81fd95 | ||
|   | 17e39f56dd | ||
|   | 040e94cab7 | ||
|   | 93563365ac | ||
|   | c287879e55 | ||
|   | 537c73d548 | ||
|   | ad3f5f6e20 | ||
|   | a468404ab5 | ||
|   | 6d7fba1a6c | ||
|   | 5c734a80f8 | ||
|   | edfee5193c | ||
|   | 9900651c55 | ||
|   | 948adbe350 | ||
|   | ade0ba794c | ||
|   | 5494c33a89 | ||
|   | c8f5cab636 | ||
|   | 4a8a40a6f2 | ||
|   | 70d41cdc79 | ||
|   | aec99ed14f | ||
|   | 9a645b4b19 | ||
|   | bea3c33a46 | ||
|   | e082c02630 | ||
|   | 291b94bef0 | ||
|   | f119be3ed5 | ||
|   | 9034094cf9 | ||
|   | c48766aeb7 | ||
|   | 28a6afeb02 | ||
|   | c8d0f5a104 | ||
|   | 3c396257de | ||
|   | a9be841d2d | ||
|   | 7d0581a7a5 | ||
|   | 4efeb66b73 | ||
|   | 3b05f8b4b4 | ||
|   | 6b4f09d740 | ||
|   | f1b02c1280 | ||
|   | 3d546a4c5d | ||
|   | 19368bcefa | ||
|   | dbbf26449c | ||
|   | 8f28804f8c | ||
|   | b7edfea4ce | ||
|   | 23b2f94c40 | ||
|   | 8f40f41fef | ||
|   | 33f868144b | ||
|   | b2545bb709 | ||
|   | 3b6e1e82d9 | ||
|   | 7710c88797 | ||
|   | 4d5001d18d | ||
|   | 0f4f108eb5 | ||
|   | f0d0bb7170 | ||
|   | 66157da5c2 | ||
|   | 13493e1afe | ||
|   | f6bfacda2c | ||
|   | f7a86b5484 | ||
|   | 66cd3f8184 | ||
|   | 3a237c93be | ||
|   | 4c34066727 | ||
|   | 1960008c83 | ||
|   | deffbd6321 | ||
|   | 53927c9aa0 | ||
|   | d84346616a | ||
|   | e1183dbc0b | ||
|   | 602f1574ca | ||
|   | 358f7d16da | ||
|   | e4006d6175 | ||
|   | 949b4ce4e9 | ||
|   | cbafac8ea9 | ||
|   | e4bf116ce8 | ||
|   | bccdad4b1b | ||
|   | 9b372b3cce | ||
|   | 98d0c00f85 | ||
|   | 9d2f2230ee | ||
|   | 81c6958428 | ||
|   | f976eda6a9 | ||
|   | fe8d5a3528 | ||
|   | 240c3508fe | ||
|   | 1065f5fb86 | ||
|   | 2b37986007 | ||
|   | 22d0c4a241 | ||
|   | dd47ce6767 | ||
|   | 5c80ce42e0 | ||
|   | adb727d282 | ||
|   | e17ca355ae | ||
|   | b80940ac4f | ||
|   | 1eca139db9 | ||
|   | 25278beb2f | ||
|   | 5922ffff62 | ||
|   | ff084e9681 | ||
|   | 86e5d219d2 | ||
|   | b78e0a54ed | ||
|   | 4bfacb8b91 | ||
|   | e9ad58a373 | ||
|   | 09c48539ad | ||
|   | 3693ecdd30 | ||
|   | ddc66e6005 | ||
|   | fd0b1f8931 | ||
|   | 1a4f638ff6 | ||
|   | 77239db3c5 | ||
|   | 0ea59c8d58 | ||
|   | 54e2a8c7fe | ||
|   | 245a8e0a3a | ||
|   | 51e474c893 | ||
|   | 81d3e64518 | ||
|   | 95da161be3 | ||
|   | 8618f13b7a | ||
|   | e24e7578f2 | ||
|   | a03ad3de23 | ||
|   | 9bd40a9b79 | ||
|   | b4b61b9b7d | ||
|   | 5656fe9a9b | ||
|   | fb79146ae6 | ||
|   | ba27191b2a | ||
|   | dc87aa3d5c | ||
|   | 83cf3aebab | ||
|   | dedd9bd03c | ||
|   | ab36a358b7 | ||
|   | 6ea97f09cf | ||
|   | 5f7822d202 | ||
|   | 6a87225dd0 | ||
|   | b6f56c0812 | ||
|   | c4ce2a2549 | ||
|   | 41650da297 | ||
|   | 74c61e6805 | ||
|   | e8dd7bbcc9 | ||
|   | 335d012d55 | ||
|   | 17fc58840a | ||
|   | 0e8c55b9f5 | ||
|   | d581f653c6 | ||
|   | 48dbaf05ae | ||
|   | 540da69d61 | ||
|   | 06efd64a80 | ||
|   | 62d872984b | ||
|   | 1dd11dd8f8 | ||
|   | 2ce375d8eb | ||
|   | 8ed0e58d63 | ||
|   | 660a6929fd | ||
|   | 44f6c972d4 | ||
|   | 6a6077bf1d | ||
|   | 30234a4e78 | ||
|   | dc9edf7538 | ||
|   | 92574458d0 | ||
|   | c35ef9ad15 | ||
|   | 4059bcc0fa | ||
|   | 1840d1c49f | ||
|   | cbd948f6f3 | ||
|   | 454c093033 | ||
|   | 45eaf7ce58 | ||
|   | 04b7af4df5 | ||
|   | 8c6978be82 | ||
|   | 6c9e7156f7 | ||
|   | bc89845523 | ||
|   | 9ffe9c2006 | ||
|   | 1d598d7772 | ||
|   | 7f576ccc82 | ||
|   | d5da8a6277 | ||
|   | a297204b27 | ||
|   | e0182bb03e | ||
|   | ca5bf5e9d7 | ||
|   | 5475d730ff | ||
|   | 7796520580 | ||
|   | 340500c351 | ||
|   | 043d33ff91 | ||
|   | baf991b342 | ||
|   | dc47e90126 | ||
|   | 67e3f9e686 | ||
|   | aaeb6b90ed | ||
|   | d124ada755 | ||
|   | 31105aefe4 | ||
|   | 44c258796e | ||
|   | 26100120a9 | ||
|   | 0db8ce891b | ||
|   | 979aba5685 | ||
|   | 396da6bd94 | ||
|   | 1b0d86220f | ||
|   | 957d2c0d1a | ||
|   | 455657912a | ||
|   | e3da1902df | ||
|   | d0f8e9208f | ||
|   | de50346428 | ||
|   | c7ca51f950 | ||
|   | 4522174555 | ||
|   | 126230ad08 | ||
|   | 6aa1f4156a | ||
|   | 2726faa090 | ||
|   | 230b84032d | ||
|   | 9c4c5e2d1a | ||
|   | 2bf8e2d2d7 | ||
|   | 9bb05c8dea | ||
|   | 2707aa2818 | ||
|   | 93c644da88 | ||
|   | 4a114c0fdc | ||
|   | f95108155d | ||
|   | 75f75854c2 | ||
|   | e20c3cd0b6 | ||
|   | 2273ea4099 | ||
|   | b115b0c6a3 | ||
|   | 9d79a51f18 | ||
|   | db9005158e | ||
|   | 4491999a8c | ||
|   | 113a502a7e | ||
|   | 7ad39003f4 | ||
|   | 4b43871708 | ||
|   | aa8f7552a2 | ||
|   | 19d94b53d2 | ||
|   | ca98a261e6 | ||
|   | 535ec2ced6 | ||
|   | a300c236ba | ||
|   | b16c26b24c | ||
|   | 1b1dde3fc8 | ||
|   | bd5880843f | ||
|   | abf35a31f3 | ||
|   | 015638035a | ||
|   | 8e27fe83f1 | ||
|   | ce4b105065 | ||
|   | 37a7b79a6f | ||
|   | ef19e8aeef | ||
|   | f6886b4749 | ||
|   | 8306959cb4 | ||
|   | d1918ee206 | ||
|   | b2b76f9e35 | ||
|   | a07fb264e8 | ||
|   | 881f2d04d2 | ||
|   | e1b629df88 | ||
|   | eab6a194e1 | ||
|   | 3733bc9148 | ||
|   | ae5746a636 | ||
|   | cb509cebb3 | ||
|   | 511c4474c7 | ||
|   | d063aea977 | ||
|   | 447efc52d8 | ||
|   | 296acf820c | ||
|   | 6ae49acb69 | ||
|   | af1b06c5be | ||
|   | 4732c8565d | ||
|   | 52dd1476db | ||
|   | 63170b9214 | ||
|   | 2203b399df | ||
|   | d80f7a6ef3 | ||
|   | 88c56d8250 | ||
|   | fca24a8f84 | ||
|   | 6d140a141a | ||
|   | a18e325c18 | ||
|   | c4d9c51e49 | ||
|   | 27e980de28 | ||
|   | 3c4906bb4d | ||
|   | da796c80c3 | ||
|   | 7a2af0f506 | ||
|   | 3e562e7450 | ||
|   | 4fc777268b | ||
|   | 037e57b687 | ||
|   | 2b289655c1 | ||
|   | 118ea6093d | ||
|   | cac6f7428c | ||
|   | ae6acc4ca2 | ||
|   | 641c6f0132 | ||
|   | 56dc8cad71 | ||
|   | 7cc07d842c | ||
|   | baaadf07fa | ||
|   | 719b32ba36 | ||
|   | af5c1096b5 | ||
|   | 3008222b92 | ||
|   | 5ef9faacd5 | ||
|   | ff65b6ea2f | ||
|   | 4c8a087b81 | ||
|   | 8f4bf93f02 | ||
|   | 824b2f6fff | ||
|   | ba0c7334b7 | ||
|   | a1dd724220 | ||
|   | a7820e5f08 | ||
|   | 1a2eee8060 | ||
|   | 4a2713a9f0 | ||
|   | 5ece0b4f70 | ||
|   | 44e8ec2b37 | ||
|   | d7e5f4b895 | ||
|   | b0c7bdf82b | ||
|   | a239ac1a52 | ||
|   | 99459dc55d | ||
|   | 78ba99778a | ||
|   | 96d3df3135 | ||
|   | cbe4bbac6a | ||
|   | f502e82ec4 | ||
|   | a5d8766a9e | ||
|   | 55d8e3d76b | ||
|   | 7b7fb4d278 | ||
|   | 09c7c50ad3 | ||
|   | 131250dc03 | ||
|   | 130187723c | ||
|   | 7bac95c9ad | ||
|   | add2475700 | ||
|   | 533e402bca | ||
|   | b87a23037e | ||
|   | 6d88bb5b83 | ||
|   | 435801c893 | ||
|   | 9d0577fa5c | ||
|   | f2891dae74 | ||
|   | a43a1f5b67 | ||
|   | ee9ca1ece7 | ||
|   | 8271e20fac | ||
|   | 132b1f7ffe | ||
|   | 77b4d97069 | ||
|   | 2168d5a30e | ||
|   | 7ad90b1b80 | ||
|   | f60ef5dbd5 | ||
|   | 4dc26d0a77 | ||
|   | 551273b831 | ||
|   | d5a09674ae | ||
|   | 907e620e9e | ||
|   | f96ec75eec | ||
|   | 4d00db2b42 | ||
|   | db564b4521 | ||
|   | 3f2076d195 | ||
|   | ed13c43e93 | ||
|   | b5a9fe71e1 | ||
|   | d0037d90f4 | ||
|   | e885ee0d35 | ||
|   | ff5e5d1062 | ||
|   | 1bfadf5219 | ||
|   | 4f9eca78d9 | ||
|   | 7aa2994078 | ||
|   | 1128b3ea83 | ||
|   | 9d06947125 | ||
|   | 14cc600a8b | ||
|   | 4f3fd86f91 | ||
|   | e663717d64 | ||
|   | 8b5d388e77 | ||
|   | 22d781edd5 | ||
|   | 4252832ba5 | ||
|   | fab58296af | ||
|   | e142877e10 | ||
|   | 6f6e453ae4 | ||
|   | 50e620daf2 | ||
|   | c334439df6 | ||
|   | 2d9b4f273e | ||
|   | 15c7099e85 | ||
|   | d2b1f6176f | ||
|   | 8306d7931b | ||
|   | b07fbb726e | ||
|   | 9586f0e61c | ||
|   | 7d66c07cef | ||
|   | 28ecb2fe1d | ||
|   | a9cafeaa76 | ||
|   | 5fc69ccb73 | ||
|   | bc626e3512 | ||
|   | 98561f9db9 | ||
|   | b56dee2a92 | ||
|   | 885a7f592e | ||
|   | 6965448a24 | ||
|   | 475d63dad8 | ||
|   | c87a0bde0b | ||
|   | c1bc9886b7 | ||
|   | 88f8437c5a | ||
|   | 411a1c641d | ||
|   | dc0ad73eca | ||
|   | 04e008afa0 | ||
|   | a6207f70d5 | ||
|   | b8a30be7bc | ||
|   | 67d60766c1 | ||
|   | 97c0b28a98 | ||
|   | c61aded388 | ||
|   | 1fd57b5d63 | ||
|   | 755b8dec30 | ||
|   | ecd5c1fcc3 | ||
|   | db5402385a | ||
|   | 09ef3073a1 | ||
|   | 6dd3833e0f | ||
|   | d4762a4d8d | ||
|   | 38cc55ea09 | ||
|   | 5d60295db3 | ||
|   | 18bd3b855c | ||
|   | 868d423c82 | ||
|   | edb6857de0 | ||
|   | ed803fb994 | ||
|   | 83d83a364d | ||
|   | 690bb92154 | ||
|   | 8e39eef7aa | ||
|   | 1923a51c59 | ||
|   | 3dc1107b40 | ||
|   | dd22e9009c | ||
|   | c7ccf39abf | ||
|   | af166f53d3 | ||
|   | 21eb26a374 | ||
|   | e2aaf5d1de | ||
|   | 0b7ca15c4f | ||
|   | 07ee2a4aff | ||
|   | 141d3b6737 | ||
|   | e2c3e6dbaa | ||
|   | b1126556c0 | ||
|   | 69cb8d1398 | ||
|   | 094d979ce6 | ||
|   | 92dd669597 | ||
|   | 32a8dec0e7 | ||
|   | 2dd5bccd49 | ||
|   | 18d0283463 | ||
|   | 9fe807b6f1 | ||
|   | 84f00bf3f6 | ||
|   | d3687fd863 | ||
|   | d1a549a6cc | ||
|   | c1552ff254 | ||
|   | 54a396bc6e | ||
|   | ed732bca63 | ||
|   | 02a4464e8f | ||
|   | 7f97df4462 | ||
|   | 9d20af02a2 | ||
|   | cbaef050f0 | ||
|   | 148139c2c4 | ||
|   | 793f8a103d | ||
|   | ffa48b64ac | ||
|   | 59a8e651f9 | ||
|   | fb9f2a01b5 | ||
|   | 944e25a5d8 | ||
|   | ad597c72d2 | ||
|   | abbbf1e562 | ||
|   | d2dd29c35a | ||
|   | 906f2bab1e | ||
|   | bb6468005d | ||
|   | a2423e97eb | ||
|   | ed1d75ecb1 | ||
|   | 1e4200345a | ||
|   | be11f4e039 | ||
|   | 22ec528cdf | ||
|   | ebf341a6de | ||
|   | 68ba6322e1 | ||
|   | 968a5f3017 | ||
|   | 8df1708491 | ||
|   | da51ce1b71 | ||
|   | 95a6de9b00 | ||
|   | 269bbdf01d | ||
|   | df03b042d6 | ||
|   | 3ec118d59b | ||
|   | bce575ee68 | ||
|   | 83da56b0eb | ||
|   | fa2891c225 | ||
|   | c4bf42524c | ||
|   | a096105f18 | ||
|   | 51f842aaef | ||
|   | 76c4466fb6 | ||
|   | facd02a7ec | ||
|   | ed8da2ef66 | ||
|   | 998352f9f1 | ||
|   | 8c1a135d16 | ||
|   | b976d39207 | ||
|   | f0a18ec1f5 | ||
|   | f9a5afe446 | ||
|   | b13c7abca0 | ||
|   | 1f104f62f5 | ||
|   | f8f7729e77 | ||
|   | eca262f5f4 | ||
|   | df5f5a943b | ||
|   | 497cb07852 | ||
|   | 10ab8f107c | ||
|   | 3a6ff19418 | ||
|   | ab317a3a62 | ||
|   | 617724c2b1 | ||
|   | 422c03b4ec | ||
|   | 4af05dc63c | ||
|   | ac92287b43 | ||
|   | c7634b3828 | ||
|   | 5d1d26b285 | ||
|   | 644fea69a1 | ||
|   | 4dc8959f67 | ||
|   | 63be5ffc74 | ||
|   | c5a9e27cb3 | ||
|   | ecf48b3a7b | ||
|   | 63e5339690 | ||
|   | d8c27ac8c4 | ||
|   | 925597c43a | ||
|   | ba8fd62900 | ||
|   | 3f61e176f0 | ||
|   | 542338972a | ||
|   | fe91599eb4 | ||
|   | d9817795ed | ||
|   | 6ede368f63 | ||
|   | 6885f46f4b | ||
|   | 9323660c79 | ||
|   | 88b77a63ed | ||
|   | 4d1ef40f6e | ||
|   | 9a68e0cc25 | ||
|   | 396427e3b6 | ||
|   | e460f1c365 | ||
|   | b9531c8245 | ||
|   | 27aff04f11 | ||
|   | 08fe5814c5 | ||
|   | 5af8b7c0e2 | ||
|   | c1acbda38f | ||
|   | afa5213c94 | ||
|   | 17b8ba27b3 | ||
|   | 3f9b74430a | 
							
								
								
									
										34
									
								
								AUTHORS
									
									
									
									
									
								
							
							
						
						| @@ -3,19 +3,26 @@ Author: | |||||||
|  |  | ||||||
| Contributors: | Contributors: | ||||||
| * Stefanos Antaris <santaris@csd.auth.gr> | * Stefanos Antaris <santaris@csd.auth.gr> | ||||||
|  | * Mohammad Dib <mdib@qbittorrent.org> | ||||||
|  | * Mirco Chinelli <infinity89@fastwebmail.it> | ||||||
| * Ishan Arora <ishan@qbittorrent.org> | * Ishan Arora <ishan@qbittorrent.org> | ||||||
| * Arnaud Demaizière <arnaud@qbittorrent.org> | * Arnaud Demaizière <arnaud@qbittorrent.org> | ||||||
| * Grigis Gaëtan <cipher16@gmail.com> | * Grigis Gaëtan <cipher16@gmail.com> | ||||||
|  | * Christian Kandeler <zambesi@users.sourceforge.net> | ||||||
|  | * Silvan Scherrer <silvan.scherrer@aroa.ch> | ||||||
|  |  | ||||||
| Code from other projects: | Code from other projects: | ||||||
|  | * files src/qtsingleapp/* src/lineedit/* | ||||||
|  |   copyright: Nokia Corporation | ||||||
|  |   license: LGPL | ||||||
|  |  | ||||||
| * files src/ico.cpp src/ico.h | * files src/ico.cpp src/ico.h | ||||||
|   copyright: Malte Starostik <malte@kde.org> |   copyright: Malte Starostik <malte@kde.org> | ||||||
|   license: LGPL |   license: LGPL | ||||||
|  |  | ||||||
| GeoIP database author: | * files src/search_engine/socks.py | ||||||
| * files: src/geoip/GeoIP.dat |   copyright: Dan Haim <negativeiq@users.sourceforge.net> | ||||||
|   copyright: MaxMind, Inc (http://maxmind.com/) |   license: BSD | ||||||
|   license: Open Data License (see src/geoip/LICENSE.txt) |  | ||||||
|  |  | ||||||
| Images Authors: | Images Authors: | ||||||
| * files: src/Icons/*.png | * files: src/Icons/*.png | ||||||
| @@ -60,11 +67,13 @@ Images Authors: | |||||||
| Translations authors: | Translations authors: | ||||||
| * files: src/lang/*.ts | * files: src/lang/*.ts | ||||||
|   copyright: |   copyright: | ||||||
|  |   - Arabic: SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com) | ||||||
|   - Brazilian: Nick Marinho (nickmarinho@gmail.com) |   - Brazilian: Nick Marinho (nickmarinho@gmail.com) | ||||||
|   - Bulgarian: Tsvetan & Boiko Bankov (emerge_life@users.sourceforge.net) |   - Bulgarian: Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net) | ||||||
|   - Catalan: Gekko Dam Beer (gekko04@users.sourceforge.net) |   - Catalan: Francisco Luque Contreras (frannoe@ya.com) | ||||||
|   - Chinese (Simplified): Guo Yue (yue.guo0418@gmail.com) |   - Chinese (Simplified): Guo Yue (yue.guo0418@gmail.com) | ||||||
|   - Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com) |   - Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com) | ||||||
|  |   - Croatian: Oliver Mucafir (oliver.untwist@gmail.com) | ||||||
|   - Czech: Jirka Vilim (web@tets.cz) |   - Czech: Jirka Vilim (web@tets.cz) | ||||||
|   - Danish: Mathias Nielsen (comoneo@gmail.com) |   - Danish: Mathias Nielsen (comoneo@gmail.com) | ||||||
|   - Dutch: Joost Schipper (heavyjoost@users.sourceforge.net) |   - Dutch: Joost Schipper (heavyjoost@users.sourceforge.net) | ||||||
| @@ -72,19 +81,20 @@ Translations authors: | |||||||
|   - Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net) |   - Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net) | ||||||
|   - French: Christophe Dumez (chris@qbittorrent.org) |   - French: Christophe Dumez (chris@qbittorrent.org) | ||||||
|   - German: Niels Hoffmann (zentralmaschine@users.sourceforge.net) |   - German: Niels Hoffmann (zentralmaschine@users.sourceforge.net) | ||||||
|   - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) |   - Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) and Stephanos Antaris (santaris@csd.auth.gr) | ||||||
|   - Hungarian: Majoros Péter (majoros.j.p@t-online.hu) |   - Hungarian: Majoros Péter (majoros.j.p@t-online.hu) | ||||||
|   - Italian: Mirko Ferrari (mirkoferrari@gmail.com) and Ferraro Luciano (luciano.ferraro@gmail.com) |   - Italian: Mirko Ferrari (mirkoferrari@gmail.com) and Ferraro Luciano (luciano.ferraro@gmail.com) | ||||||
|   - Japanese: Nardog (nardog@e2umail.com) |   - Japanese: Nardog (alphisation@gmail.com) | ||||||
|   - Korean: Jin Woo Sin (jin828sin@users.sourceforge.net) |   - Korean: Jin Woo Sin (jin828sin@users.sourceforge.net) | ||||||
|   - Norwegian: Lars-Erik Labori (hamil@users.sourceforge.net) |   - Norwegian: Lars-Erik Labori (hamil@users.sourceforge.net) | ||||||
|   - Polish: Jarek Smieja (ajep9691@wp.pl) |   - Polish: Mariusz Fik (fisiu@opensuse.org) | ||||||
|   - Portuguese: Nick Marinho (nickmarinho@gmail.com) |   - Portuguese: Nick Marinho (nickmarinho@gmail.com) | ||||||
|   - Romanian: Obada Denis (obadadenis@users.sourceforge.net) |   - Romanian: Obada Denis (obadadenis@users.sourceforge.net) | ||||||
|   - Russian: Nick Khazov (m2k3d0n at users.sourceforge.net) |   - Russian: Nick Khazov (m2k3d0n at users.sourceforge.net) | ||||||
|  |   - Serbian: Anaximandar Milet (anaximandar at operamail.com) | ||||||
|   - Slovak:  helix84 |   - Slovak:  helix84 | ||||||
|   - Spanish: Vicente Raul Plata Fonseca (silverxnt@users.sourceforge.net) |   - Spanish: Francisco Luque Contreras (frannoe@ya.com) | ||||||
|   - Swedish: Daniel Nylander (po@danielnylander.se) |   - Swedish: Daniel Nylander (po@danielnylander.se) | ||||||
|   - Turkish: Erdem Bingöl (erdem84@gmail.com) |   - Turkish: Hasan Yilmaz (iletisim@hedefturkce.com) | ||||||
|   - Ukrainian: Andrey Shpachenko (masterfix@users.sourceforge.net) |   - Ukrainian: Andrey Shpachenko (masterfix@users.sourceforge.net) and Oleh Prypin (blaxpirit@gmail.com) | ||||||
|   license: GPLv2 |   license: GPLv2 | ||||||
|   | |||||||
							
								
								
									
										202
									
								
								Changelog
									
									
									
									
									
								
							
							
						
						| @@ -1,10 +1,156 @@ | |||||||
| * Unknown - Christophe Dumez <chris@qbittorrent.org> - v2.0.0 | * Unreleased - Christophe Dumez <chris@qbittorrent.org> - v2.4.0 | ||||||
|  |     - FEATURE: Added actions to "Move to top/bottom" of priority queue | ||||||
|  |     - FEATURE: Auto-Shutdown on downloads completion | ||||||
|  |     - FEATURE: Email notification on download completion | ||||||
|  |     - FEATURE: Added button to password-lock the UI | ||||||
|  |     - FEATURE: Added label-level Pause/Resume/Delete actions | ||||||
|  |     - FEATURE: Torrents can now be filtered by name | ||||||
|  |     - FEATURE: Run external program on torrent completion | ||||||
|  |     - FEATURE: Detect executable updates in order to advise the user to restart | ||||||
|  |  | ||||||
|  | * Tue Jul 27 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.3.0 | ||||||
|  |     - FEATURE: Simplified torrent root folder renaming/truncating (< v2.3.0 is no longer forward compatible) | ||||||
|  |     - FEATURE: Remember previous save paths in torrent addition dialog | ||||||
|  |     - FEATURE: Max number of half-open connections can now be edited | ||||||
|  |     - FEATURE: Added support for strict super seeding | ||||||
|  |     - FEATURE: The user can force listening on a particular network interface | ||||||
|  |     - FEATURE: Added cookie support for RSS feeds | ||||||
|  |     - FEATURE: User can force tracker reannounce | ||||||
|  |     - FEATURE: Added "No action" setting for double-click action | ||||||
|  |     - FEATURE: Several torrents can be moved at once | ||||||
|  |     - FEATURE: Added error state for torrents (error is displayed in a tooltip) | ||||||
|  |     - FEATURE: Added filter for paused/error torrents | ||||||
|  |     - FEATURE: Add Check/Uncheck all feature in Web UI | ||||||
|  |     - FEATURE: Search engine can now be disabled | ||||||
|  |     - FEATURE: Torrents can be automatically paused once they reach a given ratio | ||||||
|  |     - FEATURE: Several files can now be disabled at once | ||||||
|  |     - FEATURE: Added "Select All/None" buttons to files list | ||||||
|  |     - FEATURE: Added support for BitComet links (bc://bt/...) | ||||||
|  |     - BUGFIX: Hide seeding torrents files priorities in Web UI | ||||||
|  |     - BUGFIX: The user can disable permanently recursive torrent download | ||||||
|  |     - BUGFIX: Peer Exchange status is now correctly reported | ||||||
|  |     - BUGFIX: Use an INI file instead of the registry on Windows (More reliable) | ||||||
|  |     - BUGFIX: Removed client spoofing feature to avoid tracker blacklisting | ||||||
|  |     - COSMETIC: Display peers country name in tooltip | ||||||
|  |     - COSMETIC: Display number of torrents in transfers tab label | ||||||
|  |     - COSMETIC: Simplified program preferences | ||||||
|  |     - COSMETIC: Fix naming of actions opening new dialogs (use Name...) | ||||||
|  |  | ||||||
|  | * Sun Mar 14 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.2.0 | ||||||
|  |     - FEATURE: User can set alternative speed limits for fast toggling | ||||||
|  |     - FEATURE: Bandwidth scheduler (automatically use alternative speed limits for a given period) | ||||||
|  |     - FEATURE: Added "Added/Completed On" columns to transfer list | ||||||
|  |     - FEATURE: Added "Upload/Download limit" columns to transfer list | ||||||
|  |     - FEATURE: Torrent files can be exported to a given directory | ||||||
|  |     - FEATURE: Outgoing ports range can be customized (for QoS) | ||||||
|  |     - FEATURE: User can choose to apply transfer limits on LAN too | ||||||
|  |     - FEATURE: User can choose to include the protocol overhead in transfer limits | ||||||
|  |     - FEATURE: Torrents can be automatically rechecked on completion | ||||||
|  |     - FEATURE: If 2 torrents have the same hash, add new trackers/URL seeds to the existing torrent | ||||||
|  |     - FEATURE: Trackers can be added from Web UI | ||||||
|  |     - FEATURE: Global transfer information are displayed in the new Web UI status bar | ||||||
|  |     - FEATURE: Allow to change the priority of several files at once | ||||||
|  |     - FEATURE: Support for multiple scan folders (Patch by Christian Kandeler) | ||||||
|  |     - BUGFIX: Only one log window can be opened at a time | ||||||
|  |     - BUGFIX: Optimized RSS module memory usage | ||||||
|  |     - BUGFIX: Consider HTTP downloads >1MB as invalid .torrent files and abort | ||||||
|  |     - BUGFIX: Fix Web UI authentication with some browsers | ||||||
|  |     - BUGFIX: Set Web UI ban period to 1 hour | ||||||
|  |     - COSMETIC: Improved style management | ||||||
|  |  | ||||||
|  | * Mon Jan 18 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.1.0 | ||||||
|  |     - FEATURE: Graphical User Interface can be disabled at compilation time (headless running) | ||||||
|  |     - FEATURE: Torrents can be labeled/categorized | ||||||
|  |     - FEATURE: Labeled torrent can be downloaded corresponding subfolders | ||||||
|  |     - FEATURE: Disk cache size can be set from preferences | ||||||
|  |     - FEATURE: Peer Exchange (PeX) can be disabled from preferences | ||||||
|  |     - FEATURE: Append !.qB extension to incomplete files option (libtorrent >= v0.15 only) | ||||||
|  |     - FEATURE: Torrent files/folders can be renamed (torrent addition dialog or files properties) | ||||||
|  |     - FEATURE: uTorrent compatible tracker list support (use torrentz.com url as a default) | ||||||
|  |     - FEATURE: Better proxy support and preferences remodeling | ||||||
|  |     - FEATURE: qBittorrent can identify itself as uTorrent, Vuze or KTorrent (Any stable version) | ||||||
|  |     - FEATURE: Torrents can be renamed in transfer list | ||||||
|  |     - FEATURE: Display torrent addition dialog for magnet links too | ||||||
|  |     - FEATURE: Files contained in a torrent are opened on double click (files panel) | ||||||
|  |     - FEATURE: Added support for magnet links in search engine | ||||||
|  |     - FEATURE: Added vertor.com and torrentdownloads.net search plugins | ||||||
|  |     - FEATURE: Search engine can now use a SOCKS5 proxy | ||||||
|  |     - FEATURE: HTTP proxy support for peer communication | ||||||
|  |     - BUGFIX: Search engine loads new proxy settings without program restart | ||||||
|  |     - BUGFIX: Use XDG folders (.cache, .local) instead of .qbittorrent | ||||||
|  |     - BUGFIX: Added legal notice on startup that the user must accept | ||||||
|  |     - BUGFIX: Protect Web UI authentication against brute forcing | ||||||
|  |     - BUGFIX: Use HTTP digest mode for Web UI authentication (instead of Basic) | ||||||
|  |     - BUGFIX: Properly display torrents with one file in subfolder(s) | ||||||
|  |     - BUGFIX: Display Web UI favicon | ||||||
|  |     - BUGFIX: File priority can be set for finished torrents that have filtered files | ||||||
|  |     - COSMETIC: Use checkboxes to filter torrent content instead of comboboxes | ||||||
|  |     - COSMETIC: Use alternating row colors in transfer list (set in program preferences) | ||||||
|  |     - COSMETIC: Added a spin box to speed limiting dialog for manual input | ||||||
|  |  | ||||||
|  | * Mon Jan 11 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.0.7 | ||||||
|  |     - BUGFIX: Fix 'Add in pause' setting in torrent addition dialog | ||||||
|  |     - BUGFIX: Update RSS feed as soon as feed downloader is enabled | ||||||
|  |     - BUGFIX: RSS Feed downloader ignores articles above maximum number of articles | ||||||
|  |     - BUGFIX: Fix possible bug when deleting a RSS folder | ||||||
|  |     - BUGFIX: Remove persistant data when a RSS feed is deleted | ||||||
|  |     - BUGFIX: RSS filters are now alphabetically sorted | ||||||
|  |     - BUGFIX: Fix crash when renaming currently displayed RSS filter | ||||||
|  |     - BUGFIX: Remove overwriting confirmation when exporting RSS filters since Qt takes care of it | ||||||
|  |  | ||||||
|  | * Tue Jan 5 2010 - Christophe Dumez <chris@qbittorrent.org> - v2.0.6 | ||||||
|  |     - BUGFIX: Fix detection of invalid torrent files | ||||||
|  |     - BUGFIX: Stop catching signals once one has been caught to avoid possible infinite loop | ||||||
|  |     - BUGFIX: Force data recheck whenever a torrent is moved | ||||||
|  |     - BUGFIX: Detect existing torrent data even if incomplete torrents are saved to a different folder | ||||||
|  |     - COSMETIC: Improve torrent deletion confirmation dialog so that the text that not get truncated | ||||||
|  |  | ||||||
|  | * Thu Dec 31 2009 - Christophe Dumez <chris@qbittorrent.org> - v2.0.5 | ||||||
|  |     - BUGFIX: Fix crash with downloaded/availability bars when the torrent has too many pieces | ||||||
|  |  | ||||||
|  | * Wed Dec 30 2009 - Christophe Dumez <chris@qbittorrent.org> - v2.0.4 | ||||||
|  |     - BUGFIX: Fix PeerGuardian .p2b binary filter support | ||||||
|  |     - BUGFIX: Fix possible crash when closing a search engine tab | ||||||
|  |     - BUGFIX: Make sure service port does not change | ||||||
|  |     - BUGFIX: Fix possible DHT port saving issue | ||||||
|  |     - BUGFIX: Fix communication between qBittorrent and Web UI (Qt 4.6) | ||||||
|  |     - BUGFIX: Use Wildcard matching instead of full regex in RSS feed downloader | ||||||
|  |     - BUGFIX: Fix code for listening on a random port whenever it failed to listen on the one defined | ||||||
|  |     - BUGFIX: Use global maximum transfer rates as maximum values in per-torrent speed limiting dialogs | ||||||
|  |     - BUGFIX: Fix global download rate limiting from Web UI | ||||||
|  |     - COSMETIC: Display a disconnected icon in status bar whenever qBittorrent failed to listen on the port defined | ||||||
|  |  | ||||||
|  | * Wed Dec 23 2009 - Christophe Dumez <chris@qbittorrent.org> - v2.0.3 | ||||||
|  |     - BUGFIX: Minor cosmetic fix to program preferences | ||||||
|  |     - BUGFIX: Fix "Temp path" button in program preferences | ||||||
|  |     - BUGFIX: Handle paths with [~, ., ..] properly | ||||||
|  |     - BUGFIX: Trackers are now displayed for torrents without metadata | ||||||
|  |     - BUGFIX: Fix issue with speed limiting (unlimited was not handled properly) | ||||||
|  |     - BUGFIX: Use the save path set in program preferences as a default in torrent addition dialog | ||||||
|  |  | ||||||
|  | * Fri Dec 18 2009 - Christophe Dumez <chris@qbittorrent.org> - v2.0.2 | ||||||
|  |     - BUGFIX: Fix .qbittorrent folder not being created (critical bug introduced in v2.0.1 that makes qBittorrent unusuable for new users) | ||||||
|  |     - BUGFIX: Fix RSS Feed downloader for some feeds | ||||||
|  |     - BUGFIX: Do not use home folder as a fallback when the save path is not accessible | ||||||
|  |     - BUGFIX: Fix Mininova, ThePirateBay search engine plugins | ||||||
|  |     - BUGFIX: Read RSS articles are remembered on restart for feeds with no torrents attached | ||||||
|  |  | ||||||
|  | * Sun Dec 13 2009 - Christophe Dumez <chris@qbittorrent.org> - v2.0.1 | ||||||
|  |     - BUGFIX: µTorrent user-agent is now spoofed correctly | ||||||
|  |     - BUGFIX: Fix column hiding behavior when queueing system is disabled | ||||||
|  |     - BUGFIX: Fix link to plugins.qbittorrent.org in plugins dialog | ||||||
|  |     - BUGFIX: ~/qBT_dir is created only when it is actually used | ||||||
|  |     - BUGFIX: Fix possible missing slot message (toggleSelectedTorrentsSuperSeeding) | ||||||
|  |     - BUGFIX: Fix possible crash in torrent properties (files) | ||||||
|  |     - BUGFIX: Added Hex Magnet Links support (Thanks Haypo) | ||||||
|  |  | ||||||
|  | * Thu Dec 10 2009 - Christophe Dumez <chris@qbittorrent.org> - v2.0.0 | ||||||
|     - FEATURE: Added program option to disable splash screen |     - FEATURE: Added program option to disable splash screen | ||||||
|     - FEATURE: Dropped dependency on libcurl and libzzip |     - FEATURE: Dropped dependency on libcurl and libzzip | ||||||
|     - FEATURE: Display more information regarding the torrent in its properties |     - FEATURE: Display more information regarding the torrent in its properties | ||||||
|     - FEATURE: Various optimizations to save CPU and memory |     - FEATURE: Various optimizations to save CPU and memory | ||||||
|     - FEATURE: Folder scanning now works with CIFS and NFS mounted folders |     - FEATURE: Folder scanning now works with CIFS and NFS mounted folders | ||||||
|     - FEATURE: Speed up qBittorrent startup |     - FEATURE: Speed up qBittorrent startup and shutdown | ||||||
|     - FEATURE: Display per-torrent peer list |     - FEATURE: Display per-torrent peer list | ||||||
|     - FEATURE: Make sure torrent files are always sorted by name |     - FEATURE: Make sure torrent files are always sorted by name | ||||||
|     - FEATURE: Seeds and Peers columns are now sortable |     - FEATURE: Seeds and Peers columns are now sortable | ||||||
| @@ -21,6 +167,9 @@ | |||||||
|     - FEATURE: Dropped Qt 4.3 support (Qt >= 4.4 is now required) |     - FEATURE: Dropped Qt 4.3 support (Qt >= 4.4 is now required) | ||||||
|     - FEATURE: Display close tab button into the tabs in search engine (Qt >= 4.5 only) |     - FEATURE: Display close tab button into the tabs in search engine (Qt >= 4.5 only) | ||||||
|     - FEATURE: Show official documentation when pressing F1 key |     - FEATURE: Show official documentation when pressing F1 key | ||||||
|  |     - FEATURE: Search engine plugins now handle HTTP protocol gzip compression | ||||||
|  |     - FEATURE: Enabled lazy bitfield as a counter-measure for ISP speed throttling | ||||||
|  |     - FEATURE: Fall back to a random port if qBittorrent could not listen on the chosen port | ||||||
|     - FEATURE: Announce to all trackers specified for a torrent (µTorrent behavior) (libtorrent >= v0.15 only) |     - FEATURE: Announce to all trackers specified for a torrent (µTorrent behavior) (libtorrent >= v0.15 only) | ||||||
|     - FEATURE: Added per-torrent super seeding mode (libtorrent >= v0.15 only) |     - FEATURE: Added per-torrent super seeding mode (libtorrent >= v0.15 only) | ||||||
|     - FEATURE: Support for storing symbolic links in .torrent files (libtorrent >= v0.15 only) |     - FEATURE: Support for storing symbolic links in .torrent files (libtorrent >= v0.15 only) | ||||||
| @@ -34,10 +183,16 @@ | |||||||
|     - FEATURE: Include DHT traffic in the rate limiter (libtorrent >= v0.15 only) |     - FEATURE: Include DHT traffic in the rate limiter (libtorrent >= v0.15 only) | ||||||
|     - FEATURE: Support for bitcomet padding files (libtorrent >= v0.15 only) |     - FEATURE: Support for bitcomet padding files (libtorrent >= v0.15 only) | ||||||
|     - FEATURE: Option to skip file checking and start seeding immediately in torrent addition dialog (Stephanos Antaris) (libtorrent >= v0.15 only) |     - FEATURE: Option to skip file checking and start seeding immediately in torrent addition dialog (Stephanos Antaris) (libtorrent >= v0.15 only) | ||||||
|  |     - BUGFIX: Made sure qBittorrent does not scrape the tracker too frequently (libtorrent >= 0.15 only) | ||||||
|  |     - BUGFIX: Fix Paste action in search engine field | ||||||
|  |     - BUGFIX: Fix possible double free in search engine destructor | ||||||
|  |     - BUGFIX: Properly handle trackers error messages | ||||||
|     - WEB UI: Remodeled Web UI to match new qBittorrent UI (Properties and preferences available) |     - WEB UI: Remodeled Web UI to match new qBittorrent UI (Properties and preferences available) | ||||||
|     - WEB UI: Added internationalization support |     - WEB UI: Added internationalization support | ||||||
|     - WEB UI: Reduced computation in Javascript (do this one server side instead) |     - WEB UI: Reduced computation in Javascript (do this one server side instead) | ||||||
|     - WEB UI: Fixed Transfer list flickering |     - WEB UI: Fixed Transfer list flickering | ||||||
|  |     - WEB UI: Password is now stored as md5 | ||||||
|  |     - I18N: Added Serbian translation (By Anaximandar Milet) | ||||||
|     - COSMETIC: Merged download / upload lists |     - COSMETIC: Merged download / upload lists | ||||||
|     - COSMETIC: Torrents can be filtered based on their status |     - COSMETIC: Torrents can be filtered based on their status | ||||||
|     - COSMETIC: Torrent properties are now displayed in main window |     - COSMETIC: Torrent properties are now displayed in main window | ||||||
| @@ -50,6 +205,49 @@ | |||||||
|     - COSMETIC: New torrent status icons by Mateusz Tolola |     - COSMETIC: New torrent status icons by Mateusz Tolola | ||||||
|     - COSMETIC: Make use of libnotify if available for system notifications (Ubuntu, ...) |     - COSMETIC: Make use of libnotify if available for system notifications (Ubuntu, ...) | ||||||
|  |  | ||||||
|  | * Tue Nov 17 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.6 | ||||||
|  |   - BUGFIX: RSS feed articles can now be displayed using keyboard arrows | ||||||
|  |   - BUGFIX: RSS feed downloader can only process unread articles now | ||||||
|  |   - BUGFIX: Fixed memory leak in RSS parser | ||||||
|  |   - BUGFIX: Fixed possible crash in search autocompletion | ||||||
|  |   - BUGFIX: Improved ETA calculation for big torrents | ||||||
|  |   - BUGFIX: Fixed per-torrent speed limiting | ||||||
|  |  | ||||||
|  | * Wed Nov 4 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.5 | ||||||
|  |   - BUGFIX: Fixed man page | ||||||
|  |   - BUGFIX: Fix crash on torrent addition (if libtorrent-rasterbar has debug enabled) | ||||||
|  |   - BUGFIX: Fix trackers addition to torrents (bug introduced in v1.5.4) | ||||||
|  |   - BUGFIX: Suppress compilation warning regarding sortNewsList() not being used | ||||||
|  |   - BUGFIX: Make sure scan folder is different than qBittorrent backup directory to avoid torrents deletion | ||||||
|  |   - BUGFIX: Added safety mecanism which adds the torrents back to the list in case qbittorrent-resume.conf gets deleted or corrupted. | ||||||
|  |  | ||||||
|  | * Sun Oct 25 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.4 | ||||||
|  |   - BUGFIX: Updated man page | ||||||
|  |   - BUGFIX: Fixed possible crash with torrents containing unicode characters | ||||||
|  |   - BUGFIX: Fixed problem when disabling systray integration and starting minimized | ||||||
|  |   - BUGFIX: Fixed PirateBay search plugin | ||||||
|  |   - BUGFIX: Using Download button in search results list now downloads the right torrents | ||||||
|  |   - BUGFIX: The search results list is no longer sorted automatically when a row color is updated | ||||||
|  |  | ||||||
|  | * Wed Sep 30 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.3 | ||||||
|  |   - BUGFIX: Fix a possible crash when pausing then deleting a torrent quickly | ||||||
|  |   - BUGFIX: Fix a race condition in folder scanning and torrent downloader | ||||||
|  |   - BUGFIX: Hide download url column in search results | ||||||
|  |   - BUGFIX: Fix a crash when scanned directory does not exist | ||||||
|  |   - BUGFIX: Fix compilation on Mac OS | ||||||
|  |   - BUGFIX: Added a command line parameter to disable splash screen | ||||||
|  |   - BUGFIX: Ignore permanent deletion button when no torrent is selected | ||||||
|  |   - BUGFIX: When a selected torrent is deleted, select next suitable torrent | ||||||
|  |  | ||||||
|  | * Sun Sep 20 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.2 | ||||||
|  |   - BUGFIX: Some torrents were pausing for no reason | ||||||
|  |   - I18N: Updated Korean translation | ||||||
|  |  | ||||||
|  | * Thu Sep 7 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.1 | ||||||
|  |    - BUGFIX: Fix crash in torrent addition dialog when save path does not exist (closes #425227) | ||||||
|  |    - BUGFIX: Fix downloading from URL (broken in v1.5.0) | ||||||
|  |    - BUGFIX: Pause torrents in error state | ||||||
|  |  | ||||||
| * Thu Sep 3 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.0 | * Thu Sep 3 2009 - Christophe Dumez <chris@qbittorrent.org> - v1.5.0 | ||||||
|     - FEATURE: Added Magnet URI support |     - FEATURE: Added Magnet URI support | ||||||
|     - FEATURE: Search engine supports category-based requests |     - FEATURE: Search engine supports category-based requests | ||||||
|   | |||||||
							
								
								
									
										52
									
								
								INSTALL
									
									
									
									
									
								
							
							
						
						| @@ -1,28 +1,58 @@ | |||||||
| qBittorrent - A BitTorrent client in C++ / Qt4 | qBittorrent - A BitTorrent client in C++ / Qt4 | ||||||
| ------------------------------------------ | ------------------------------------------ | ||||||
|  |  | ||||||
| ./configure | 1) Compile and install qBittorrent with Qt4 Graphical Interface | ||||||
| make && make install |  | ||||||
| qbittorrent |  | ||||||
|  |  | ||||||
| will install and execute qBittorrent hopefully without any problems. |   $ ./configure | ||||||
|  |   $ make && make install | ||||||
|  |   $ qbittorrent | ||||||
|  |  | ||||||
| Dependencies: |   will install and execute qBittorrent hopefully without any problems. | ||||||
| - Qt >= 4.4.0 (libqt-devel, libqtgui, libqtcore, libqtnetwork, libqtxml) |  | ||||||
|  |  | ||||||
| - libtorrent-rasterbar by Arvid Norberg (>= 0.14.0 REQUIRED, >= v0.15.0 ADVISED) |   Dependencies: | ||||||
|     -> http://www.qbittorrent.org/download.php (advised) |     - Qt >= 4.4.0 (libqt-devel, libqtgui, libqtcore, libqtnetwork, libqtxml) | ||||||
|  |  | ||||||
|  |     - pkg-config executable | ||||||
|  |  | ||||||
|  |     - libtorrent-rasterbar by Arvid Norberg (>= 0.14.4 REQUIRED, compatible with v0.15.x) | ||||||
|         -> http://www.libtorrent.net |         -> http://www.libtorrent.net | ||||||
|         Be careful: another library (the one used by rTorrent) uses a similar name. |         Be careful: another library (the one used by rTorrent) uses a similar name. | ||||||
|  |  | ||||||
| - libboost: libboost-filesystem, libboost-date-time, libboost-thread, libboost-serialization |     - libboost 1.34.x (libboost-filesystem, libboost-thread, libboost-date-time) + libasio | ||||||
|  |       or | ||||||
|  |     - libboost >= 1.35.x (libboost-system, libboost-filesystem, libboost-thread, libboost-date-time) | ||||||
|  |  | ||||||
| - python >= 2.3 (needed by search engine) |     - python >= 2.3 (needed by search engine) | ||||||
|  |         * Run time only dependency | ||||||
|  |  | ||||||
| - libnotify >= 0.4.2, glib-2.0 (optional) |     - libnotify >= 0.4.2, glib-2.0 (optional) | ||||||
|         * Can be used for system notifications to replace standard Qt notifications |         * Can be used for system notifications to replace standard Qt notifications | ||||||
|           so that it integrates better into the Desktop |           so that it integrates better into the Desktop | ||||||
|  |  | ||||||
|  |     - geoip-database (optional) | ||||||
|  |         * If qBittorrent cannot find this database, it will try to resolve countries using the Internet but it will be a lot slower. | ||||||
|  |         * Run time only dependency | ||||||
|  |  | ||||||
|  | 2) Compile and install qBittorrent without Qt4 Graphical interface | ||||||
|  |  | ||||||
|  |   $ ./configure --disable-gui | ||||||
|  |   $ make && make install | ||||||
|  |   $ qbittorrent | ||||||
|  |  | ||||||
|  |   will install and execute qBittorrent hopefully without any problems. | ||||||
|  |  | ||||||
|  |   Dependencies: | ||||||
|  |     - Qt >= 4.4.0 (libqt-devel, libqtcore, libqtnetwork) | ||||||
|  |  | ||||||
|  |     - pkg-config executable | ||||||
|  |  | ||||||
|  |     - libtorrent-rasterbar by Arvid Norberg (>= 0.14.4 REQUIRED, >= v0.15.0 ADVISED) | ||||||
|  |         -> http://www.libtorrent.net | ||||||
|  |         Be careful: another library (the one used by rTorrent) uses a similar name. | ||||||
|  |  | ||||||
|  |     - libboost: libboost-filesystem, libboost-date-time, libboost-thread, libboost-serialization | ||||||
|  |  | ||||||
|  |  | ||||||
| DOCUMENTATION: | DOCUMENTATION: | ||||||
| Please note that there is a documentation with a "compiling howto" at http://wiki.qbittorrent.org. | Please note that there is a documentation with a "compiling howto" at http://wiki.qbittorrent.org. | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										62
									
								
								README.os2
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,62 @@ | |||||||
|  | qBittorrent - A BitTorrent client in Qt4 | ||||||
|  | ------------------------------------------ | ||||||
|  |  | ||||||
|  | This is the eComStation (OS/2) qBittorrent part of the readme. See also README for more general information. | ||||||
|  |  | ||||||
|  |  | ||||||
|  | Building qBittorrent | ||||||
|  | ******************** | ||||||
|  |  | ||||||
|  |  | ||||||
|  | Requirements | ||||||
|  | ============ | ||||||
|  |  | ||||||
|  | - gcc based build env (recommended gcc v4.4.2 or greater) | ||||||
|  |    | ||||||
|  | - Qt4 for eCS (OS/2) dev package (see http://svn.netlabs.org/qt4 for more information) | ||||||
|  |  | ||||||
|  | - libtorrent-rasterbar for eCS (OS/2) port (see http://svn.netlabs.org/ports for more information) | ||||||
|  |  | ||||||
|  | - boost for eCS (OS/2) port (see http://svn.netlabs.org/ports for more information) | ||||||
|  |  | ||||||
|  |  | ||||||
|  | How to build | ||||||
|  | ============ | ||||||
|  |  | ||||||
|  | First you need to create the conf.pri file in the same dir as this readme.os2 is. | ||||||
|  | the conf.pri file has the following content: | ||||||
|  |  | ||||||
|  | ##### conf.pri content beginn ##### | ||||||
|  | PREFIX = . | ||||||
|  | BINDIR = ./bin | ||||||
|  | INCDIR = ./include | ||||||
|  | LIBDIR = ./lib | ||||||
|  | DATADIR = ./share | ||||||
|  |  | ||||||
|  | CONFIG += staticlib | ||||||
|  | INCLUDEPATH += x:/trees/libtorrent/trunk/include | ||||||
|  | LIBS += -Lx:/trees/libtorrent/trunk/src/.libs \ | ||||||
|  |         -Lx:/trees/boost/trunk/stage/lib \ | ||||||
|  |         -Lx:/trees/openssl \ | ||||||
|  | 	-Lx:/extras/lib | ||||||
|  | ##### conf.pri content end ##### | ||||||
|  |  | ||||||
|  | Of course all the above path references have to be adjusted to your build env. | ||||||
|  |  | ||||||
|  | It should now be easy to build qBittorrent: | ||||||
|  |  | ||||||
|  | Simply type: | ||||||
|  | $ qmake | ||||||
|  |  | ||||||
|  | Followed by: | ||||||
|  | $ make | ||||||
|  |  | ||||||
|  | If all works fine you should get a working qbittorrent executable. | ||||||
|  |  | ||||||
|  | If you have any question regarding the eCS (OS/2) port of qBittorrent you can meet me (_diver) on IRC: | ||||||
|  | #netlabs on irc.freenode.net | ||||||
|  |  | ||||||
|  | ------------------------------------------ | ||||||
|  | Silvan Scherrer <silvan.scherrer@aroa.ch> | ||||||
|  |  | ||||||
|  |  | ||||||
							
								
								
									
										44
									
								
								doc/qbittorrent-nox.1
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,44 @@ | |||||||
|  | .\" This manpage has been automatically generated by docbook2man | ||||||
|  | .\" from a DocBook document.  This tool can be found at: | ||||||
|  | .\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>. | ||||||
|  | .TH "QBITTORRENT\-NOX" "1" "January 16th 2010" "Command line Bittorrent client written in C++ / Qt4" "" | ||||||
|  |  | ||||||
|  | .SH "NAME" | ||||||
|  | qBittorrent\-nox \- a command line Bittorrent client written in C++ / Qt4 | ||||||
|  |  | ||||||
|  | .SH "SYNOPSIS" | ||||||
|  |  | ||||||
|  | \fBqbittorrent\-nox\fR [\-\-webui-port=x] [TORRENT_FILE | URL]... | ||||||
|  |  | ||||||
|  | \fBqbittorrent\-nox\fR \-\-help | ||||||
|  |  | ||||||
|  | \fBqbittorrent\-nox\fR \-\-version | ||||||
|  |  | ||||||
|  | .PP | ||||||
|  | .SH "DESCRIPTION" | ||||||
|  |  | ||||||
|  | \fBqBittorrent-nox\fR is an advanced command-line Bittorrent client written in C++ / Qt4, | ||||||
|  | using the \fBlibtorrent-rasterbar\fR library by Arvid Norberg. qBittorrent\-nox aims | ||||||
|  | to be a good alternative to other command line bittorrent clients and provides features similar to popular graphical clients. | ||||||
|  |  | ||||||
|  | qBittorrent\-nox is fast, stable, light and it supports unicode.  | ||||||
|  | It also comes with UPnP port forwarding / NAT-PMP, encryption (Vuze compatible),  | ||||||
|  | FAST extension (mainline) and PeX support (utorrent compatible). | ||||||
|  |  | ||||||
|  | qBittorrent\-nox is meant to be controlled via its feature-rich Web UI which is accessible as a default on http://localhost:8080. The Web UI access is secured and the default account user name is "admin" with "adminadmin" as a password. | ||||||
|  |  | ||||||
|  | .SH "OPTIONS" | ||||||
|  |  | ||||||
|  | \fB--help\fR Prints the command line options. | ||||||
|  |  | ||||||
|  | \fB--version\fR Prints qbittorrent program version number. | ||||||
|  |  | ||||||
|  | \fB--webui-port=x\fR Changes Web UI port to x (default: 8080). | ||||||
|  |  | ||||||
|  | .SH "BUGS" | ||||||
|  |  | ||||||
|  | If you find a bug, please report it at http://bugs.qbittorrent.org | ||||||
|  |  | ||||||
|  | .SH "AUTHOR" | ||||||
|  |  | ||||||
|  | Christophe Dumez <chris@qbittorrent.org> | ||||||
| @@ -1,14 +1,14 @@ | |||||||
| .\" This manpage has been automatically generated by docbook2man | .\" This manpage has been automatically generated by docbook2man | ||||||
| .\" from a DocBook document.  This tool can be found at: | .\" from a DocBook document.  This tool can be found at: | ||||||
| .\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>. | .\" <http://shell.ipoline.com/~elmert/comp/docbook2X/>. | ||||||
| .TH "QBITTORRENT" "1" "September 30th 2009" "Bittorrent client written in C++ / Qt4" "" | .TH "QBITTORRENT" "1" "January 16th 2010" "Bittorrent client written in C++ / Qt4" "" | ||||||
|  |  | ||||||
| .SH "NAME" | .SH "NAME" | ||||||
| qBittorrent \- a Bittorrent client written in C++ / Qt4 | qBittorrent \- a Bittorrent client written in C++ / Qt4 | ||||||
|  |  | ||||||
| .SH "SYNOPSIS" | .SH "SYNOPSIS" | ||||||
|  |  | ||||||
| \fBqbittorrent\fR [\-\-no-splash] [TORRENT_FILE | URL]... | \fBqbittorrent\fR [\-\-no-splash] [\-\-webui-port=x] [TORRENT_FILE | URL]... | ||||||
|  |  | ||||||
| \fBqbittorrent\fR \-\-help | \fBqbittorrent\fR \-\-help | ||||||
|  |  | ||||||
| @@ -18,10 +18,9 @@ qBittorrent \- a Bittorrent client written in C++ / Qt4 | |||||||
| .SH "DESCRIPTION" | .SH "DESCRIPTION" | ||||||
|  |  | ||||||
| \fBqBittorrent\fR is an advanced Bittorrent client written in C++ / Qt4, | \fBqBittorrent\fR is an advanced Bittorrent client written in C++ / Qt4, | ||||||
| using the \fBrblibtorrent\fR library by Arvid Norberg. qBittorrent aims | using the \fBlibtorrent-rasterbar\fR library by Arvid Norberg. qBittorrent is similar to uTorrent. qBittorrent | ||||||
| to be a good alternative to all other bittorrent clients out there. qBittorrent |  | ||||||
| is fast, stable, light, it supports unicode and it provides a good integrated search engine. | is fast, stable, light, it supports unicode and it provides a good integrated search engine. | ||||||
| It also comes with UPnP port forwarding / NAT-PMP, encryption (Azureus compatible),  | It also comes with UPnP port forwarding / NAT-PMP, encryption (Vuze compatible),  | ||||||
| FAST extension (mainline) and PeX support (utorrent compatible). | FAST extension (mainline) and PeX support (utorrent compatible). | ||||||
|  |  | ||||||
| .SH "OPTIONS" | .SH "OPTIONS" | ||||||
| @@ -32,6 +31,8 @@ FAST extension (mainline) and PeX support (utorrent compatible). | |||||||
|  |  | ||||||
| \fB--no-splash\fR Disables splash screen on startup. | \fB--no-splash\fR Disables splash screen on startup. | ||||||
|  |  | ||||||
|  | \fB--webui-port=x\fR Changes Web UI port to x (default: 8080). | ||||||
|  |  | ||||||
| .SH "BUGS" | .SH "BUGS" | ||||||
|  |  | ||||||
| If you find a bug, please report it at http://bugs.qbittorrent.org | If you find a bug, please report it at http://bugs.qbittorrent.org | ||||||
|   | |||||||
| @@ -1,6 +1,4 @@ | |||||||
| TEMPLATE = subdirs | TEMPLATE = subdirs | ||||||
|  |  | ||||||
| include(conf.pri) |  | ||||||
|  |  | ||||||
| SUBDIRS += src | SUBDIRS += src | ||||||
|  |  | ||||||
|   | |||||||
| @@ -6,6 +6,9 @@ | |||||||
|   <dep type='qt4'> |   <dep type='qt4'> | ||||||
|     <required/> |     <required/> | ||||||
|   </dep> |   </dep> | ||||||
|  |   <dep type='pkg-config'> | ||||||
|  |     <required/> | ||||||
|  |   </dep> | ||||||
|   <dep type='libtorrent-rasterbar'> |   <dep type='libtorrent-rasterbar'> | ||||||
|     <required/> |     <required/> | ||||||
|   </dep> |   </dep> | ||||||
| @@ -14,4 +17,8 @@ | |||||||
|   </dep> |   </dep> | ||||||
|   <dep type='libnotify'> |   <dep type='libnotify'> | ||||||
|   </dep> |   </dep> | ||||||
|  |   <dep type='geoip-database'> | ||||||
|  |   </dep> | ||||||
|  |   <dep type='qtsingleapplication'> | ||||||
|  |   </dep> | ||||||
| </qconf> | </qconf> | ||||||
|   | |||||||
							
								
								
									
										37
									
								
								qcm/geoip-database.qcm
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,37 @@ | |||||||
|  | /* | ||||||
|  | -----BEGIN QCMOD----- | ||||||
|  | name: geoip-database | ||||||
|  | arg: with-geoip-database-embedded, Geoip Database will be embedded in qBittorrent executable (please follow instructions in src/geoip/README) | ||||||
|  | -----END QCMOD----- | ||||||
|  | */ | ||||||
|  | // see  Conf::findPkgConfig | ||||||
|  | class qc_geoip_database : public ConfObj | ||||||
|  | { | ||||||
|  | public: | ||||||
|  | 	qc_geoip_database(Conf *c) : ConfObj(c) {} | ||||||
|  | 	QString name() const { return "GeoIP Database (optional)"; } | ||||||
|  | 	QString shortname() const { return "GeoIP Database"; } | ||||||
|  |         QString checkString() const { | ||||||
|  |                 if(!conf->getenv("QC_DISABLE_geoip_database").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||||
|  |                         return ""; | ||||||
|  |                 return ConfObj::checkString(); | ||||||
|  |         } | ||||||
|  | 	bool exec() { | ||||||
|  | 	if(!conf->getenv("QC_DISABLE_geoip_database").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||||
|  | 		return false; | ||||||
|  | 	} | ||||||
|  | #ifdef Q_WS_X11 | ||||||
|  | 		if(!conf->getenv("QC_WITH_GEOIP_DATABASE_EMBEDDED").isEmpty()) { | ||||||
|  | #endif | ||||||
|  | 			conf->addDefine("WITH_GEOIP_EMBEDDED"); | ||||||
|  |                         printf(" embedded and"); | ||||||
|  | 			return true; | ||||||
|  | #ifdef Q_WS_X11 | ||||||
|  | 		} | ||||||
|  |                 if(QFile::exists("/usr/share/GeoIP/GeoIP.dat") || QFile::exists("/usr/local/share/GeoIP/GeoIP.dat") || QFile::exists("/var/lib/GeoIP/GeoIP.dat")) | ||||||
|  | 			return true; | ||||||
|  |                 printf("\nWarning: GeoIP database was not found at /usr/share/GeoIP/GeoIP.dat or /var/lib/GeoIP/GeoIP.dat\nCountry resolution will be slow."); | ||||||
|  | 		return false; | ||||||
|  | #endif | ||||||
|  | 	} | ||||||
|  | }; | ||||||
| @@ -2,14 +2,39 @@ | |||||||
| -----BEGIN QCMOD----- | -----BEGIN QCMOD----- | ||||||
| name: libboost | name: libboost | ||||||
| arg: with-libboost-inc=[path], Path to libboost include files | arg: with-libboost-inc=[path], Path to libboost include files | ||||||
|  | arg: with-libboost-lib=[path], Path to libboost library files | ||||||
| -----END QCMOD----- | -----END QCMOD----- | ||||||
| */ | */ | ||||||
|  | #include <boost/version.hpp> | ||||||
| class qc_libboost : public ConfObj | class qc_libboost : public ConfObj | ||||||
| { | { | ||||||
| public: | public: | ||||||
| 	qc_libboost(Conf *c) : ConfObj(c) {} | 	qc_libboost(Conf *c) : ConfObj(c) {} | ||||||
| 	QString name() const { return "libboost"; } | 	QString name() const { return "libboost"; } | ||||||
| 	QString shortname() const { return "libboost"; } | 	QString shortname() const { return "libboost"; } | ||||||
|  |   QString findBoostLib(QString path, QString lib) const { | ||||||
|  |     QString name; | ||||||
|  |     QDir libDir(path); | ||||||
|  |     QStringList filters; | ||||||
|  |     filters << "libboost_"+lib+"*-mt*.so"; | ||||||
|  |     QStringList result = libDir.entryList(filters, QDir::Files); | ||||||
|  |     if(!result.empty()) { | ||||||
|  |       name = result.first().mid(3); | ||||||
|  |       // Remove .so | ||||||
|  |       name.chop(3); | ||||||
|  |     } else { | ||||||
|  |       // Fall back to non -mt boost lib | ||||||
|  |       filters.clear(); | ||||||
|  |       filters << "libboost_"+lib+"*.so"; | ||||||
|  |       result = libDir.entryList(filters, QDir::Files); | ||||||
|  |       if(!result.empty()) { | ||||||
|  |         name = result.first().mid(3); | ||||||
|  |         // Remove .so | ||||||
|  |         name.chop(3); | ||||||
|  |       } | ||||||
|  |     } | ||||||
|  |     return name; | ||||||
|  |   } | ||||||
| 	bool exec(){ | 	bool exec(){ | ||||||
|         	QString s; |         	QString s; | ||||||
| 		s = conf->getenv("QC_WITH_LIBBOOST_INC"); | 		s = conf->getenv("QC_WITH_LIBBOOST_INC"); | ||||||
| @@ -51,6 +76,43 @@ public: | |||||||
|       			} |       			} | ||||||
| 		} | 		} | ||||||
| 		conf->addIncludePath(s); | 		conf->addIncludePath(s); | ||||||
|  | 		// Find library | ||||||
|  | 		s = conf->getenv("QC_WITH_LIBBOOST_LIB"); | ||||||
|  |     QStringList required_libs; | ||||||
|  | #if BOOST_VERSION >= 103500 | ||||||
|  |       required_libs << "system";  | ||||||
|  | #endif | ||||||
|  |     if(conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||||
|  |       // Not required by nox | ||||||
|  |       required_libs << "filesystem" << "thread"; | ||||||
|  |     } | ||||||
|  |     QStringList libDirs; | ||||||
|  |     libDirs << "/usr/lib/" << "/usr/lib64/" << "/usr/local/lib/" << "/usr/local/lib64/"; | ||||||
|  |     foreach(const QString& lib, required_libs) { | ||||||
|  |       if(!s.isEmpty()) { | ||||||
|  |         QString detected_name = findBoostLib(s, lib); | ||||||
|  |         if(detected_name.isEmpty()) { | ||||||
|  |           printf("Could not find boost %s library!\n", qPrintable(lib)); | ||||||
|  |           return false; | ||||||
|  |         } else { | ||||||
|  |           conf->addLib("-l"+detected_name); | ||||||
|  |         } | ||||||
|  |       } else { | ||||||
|  |         bool found = false; | ||||||
|  |         foreach(const QString& libDir, libDirs) { | ||||||
|  |           QString detected_name = findBoostLib(libDir, lib); | ||||||
|  |           if(!detected_name.isEmpty()) { | ||||||
|  |             conf->addLib("-l"+detected_name); | ||||||
|  |             found = true; | ||||||
|  |             break; | ||||||
|  |           } | ||||||
|  |         } | ||||||
|  |         if(!found) { | ||||||
|  |           printf("Could not find boost %s library!\n", qPrintable(lib)); | ||||||
|  |           return false; | ||||||
|  |         } | ||||||
|  |       } | ||||||
|  |     } | ||||||
| 		return true; | 		return true; | ||||||
| 	} | 	} | ||||||
| }; | }; | ||||||
|   | |||||||
| @@ -10,7 +10,15 @@ public: | |||||||
| 	qc_libnotify(Conf *c) : ConfObj(c) {} | 	qc_libnotify(Conf *c) : ConfObj(c) {} | ||||||
| 	QString name() const { return "libnotify >= 0.4.2 (optional)"; } | 	QString name() const { return "libnotify >= 0.4.2 (optional)"; } | ||||||
| 	QString shortname() const { return "libnotify"; } | 	QString shortname() const { return "libnotify"; } | ||||||
|  |         QString checkString() const { | ||||||
|  |                 if(!conf->getenv("QC_DISABLE_libnotify").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) | ||||||
|  |                         return ""; | ||||||
|  |                 return ConfObj::checkString(); | ||||||
|  |         } | ||||||
| 	bool exec(){ | 	bool exec(){ | ||||||
|  | 		if(!conf->getenv("QC_DISABLE_libnotify").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||||
|  | 			return false; | ||||||
|  | 		} | ||||||
| 		QStringList incs; | 		QStringList incs; | ||||||
| 		QString req_ver = "0.4.2"; | 		QString req_ver = "0.4.2"; | ||||||
| 		QString version, libs, other; | 		QString version, libs, other; | ||||||
| @@ -32,6 +40,17 @@ public: | |||||||
| 			} else { | 			} else { | ||||||
| 				return false; | 				return false; | ||||||
| 			} | 			} | ||||||
|  | 			QStringList incs3; | ||||||
|  |                         QString req_ver3 = "2.0"; | ||||||
|  |                         QString version3, libs3, other3; | ||||||
|  | 			if(conf->findPkgConfig("gtk+-2.0", mode, req_ver3, &version3, &incs3, &libs3, &other3)) { | ||||||
|  |                                 for(int n = 0; n < incs3.count(); ++n) | ||||||
|  |                                 conf->addIncludePath(incs3[n]); | ||||||
|  |                                 if(!libs3.isEmpty()) | ||||||
|  |                                         conf->addLib(libs3); | ||||||
|  |                         } else { | ||||||
|  |                                 return false; | ||||||
|  |                         } | ||||||
| 		} else { | 		} else { | ||||||
| 			return false; | 			return false; | ||||||
| 		} | 		} | ||||||
|   | |||||||
| @@ -8,24 +8,20 @@ class qc_libtorrent_rasterbar : public ConfObj | |||||||
| { | { | ||||||
| public: | public: | ||||||
| 	qc_libtorrent_rasterbar(Conf *c) : ConfObj(c) {} | 	qc_libtorrent_rasterbar(Conf *c) : ConfObj(c) {} | ||||||
| 	QString name() const { return "libtorrent-rasterbar >= 0.14.0 (>= 0.15.0 advised)"; } | 	QString name() const { return "libtorrent-rasterbar >= 0.14.4"; } | ||||||
| 	QString shortname() const { return "libtorrent-rasterbar"; } | 	QString shortname() const { return "libtorrent-rasterbar"; } | ||||||
| 	bool exec(){ | 	bool exec(){ | ||||||
| 		QStringList incs; | 		QStringList incs; | ||||||
| 		QString req_ver = "0.14.0"; | 		QString req_ver = "0.14.4"; | ||||||
| 		QString adv_ver = "0.15.0"; |  | ||||||
| 		QString version, libs, other; | 		QString version, libs, other; | ||||||
| 		VersionMode mode = VersionMin; | 		VersionMode mode = VersionMin; | ||||||
| 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, req_ver, &version, &incs, &libs, &other)) | 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, req_ver, &version, &incs, &libs, &other)) | ||||||
| 			return false; | 			return false; | ||||||
| 		for(int n = 0; n < incs.count(); ++n) | 		for(int n = 0; n < incs.count(); ++n) | ||||||
| 			conf->addIncludePath(incs[n]); | 			conf->addIncludePath(incs[n]); | ||||||
| 		if(!libs.isEmpty()) | 		if(conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||||
| 			conf->addLib(libs); |   		  conf->addLib("-lcrypto"); | ||||||
| 		if(!conf->findPkgConfig("libtorrent-rasterbar", mode, adv_ver, &version, &incs, &libs, &other)) |                 } | ||||||
|                         printf("\nWarning: libtorrent-rasterbar v%s was detected.\nAlthough it will compile and run, you will be missing some features. Please consider updating to v%s.\n", version.toLocal8Bit().data(), adv_ver.toUtf8().data()); |  | ||||||
| 		else |  | ||||||
| 			conf->addDefine("LIBTORRENT_0_15"); |  | ||||||
| 		return true; | 		return true; | ||||||
| 	} | 	} | ||||||
| }; | }; | ||||||
|   | |||||||
							
								
								
									
										16
									
								
								qcm/pkg-config.qcm
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,16 @@ | |||||||
|  | /* | ||||||
|  | -----BEGIN QCMOD----- | ||||||
|  | name: pkg-config | ||||||
|  | -----END QCMOD----- | ||||||
|  | */ | ||||||
|  | #include <QProcess> | ||||||
|  | class qc_pkg_config : public ConfObj | ||||||
|  | { | ||||||
|  | public: | ||||||
|  | 	qc_pkg_config(Conf *c) : ConfObj(c) {} | ||||||
|  | 	QString name() const { return "pkg-config executable"; } | ||||||
|  | 	QString shortname() const { return "pkg-config"; } | ||||||
|  | 	bool exec(){ | ||||||
|  | 		return !conf->findProgram("pkg-config").isEmpty(); | ||||||
|  | 	} | ||||||
|  | }; | ||||||
| @@ -1,6 +1,7 @@ | |||||||
| /* | /* | ||||||
| -----BEGIN QCMOD----- | -----BEGIN QCMOD----- | ||||||
| name: Qt >= 4.4 | name: Qt >= 4.4 | ||||||
|  | arg: disable-gui, Disable qBittorrent Graphical user interface for headless running | ||||||
| -----END QCMOD----- | -----END QCMOD----- | ||||||
| */ | */ | ||||||
| class qc_qt4 : public ConfObj | class qc_qt4 : public ConfObj | ||||||
| @@ -11,10 +12,9 @@ public: | |||||||
| 	QString shortname() const { return "Qt 4.4"; } | 	QString shortname() const { return "Qt 4.4"; } | ||||||
| 	bool exec() | 	bool exec() | ||||||
| 	{ | 	{ | ||||||
| 		if(QT_VERSION >= 0x040500) { | 		if(!conf->getenv("QC_DISABLE_GUI").isEmpty()) { | ||||||
|                         conf->addDefine("QT_4_5"); | 			conf->addDefine("DISABLE_GUI"); | ||||||
| 		}	 | 		}	 | ||||||
| 		return(QT_VERSION >= 0x040400); | 		return(QT_VERSION >= 0x040400); | ||||||
| 		 |  | ||||||
| 	} | 	} | ||||||
| }; | }; | ||||||
|   | |||||||
							
								
								
									
										631
									
								
								src/GUI.cpp
									
									
									
									
									
								
							
							
						
						
							
								
								
									
										134
									
								
								src/GUI.h
									
									
									
									
									
								
							
							
						
						| @@ -37,13 +37,10 @@ | |||||||
| #include "ui_mainwindow.h" | #include "ui_mainwindow.h" | ||||||
| #include "qtorrenthandle.h" | #include "qtorrenthandle.h" | ||||||
|  |  | ||||||
| enum TabIndex{TAB_TRANSFER, TAB_SEARCH, TAB_RSS}; |  | ||||||
|  |  | ||||||
| class Bittorrent; | class Bittorrent; | ||||||
| class QTimer; | class QTimer; | ||||||
| class downloadFromURL; | class downloadFromURL; | ||||||
| class SearchEngine; | class SearchEngine; | ||||||
| class QLocalServer; |  | ||||||
| class QCloseEvent; | class QCloseEvent; | ||||||
| class RSSImp; | class RSSImp; | ||||||
| class QShortcut; | class QShortcut; | ||||||
| @@ -55,45 +52,36 @@ class TransferListFiltersWidget; | |||||||
| class QSplitter; | class QSplitter; | ||||||
| class PropertiesWidget; | class PropertiesWidget; | ||||||
| class StatusBar; | class StatusBar; | ||||||
|  | class consoleDlg; | ||||||
|  | class about; | ||||||
|  | class createtorrent; | ||||||
|  | class downloadFromURL; | ||||||
|  | class HidableTabWidget; | ||||||
|  | class LineEdit; | ||||||
|  | class QFileSystemWatcher; | ||||||
|  |  | ||||||
| class GUI : public QMainWindow, private Ui::MainWindow{ | class GUI : public QMainWindow, private Ui::MainWindow{ | ||||||
|   Q_OBJECT |   Q_OBJECT | ||||||
|  |  | ||||||
|   private: | public: | ||||||
|     // Bittorrent |   // Construct / Destruct | ||||||
|     Bittorrent *BTSession; |   GUI(QWidget *parent=0, QStringList torrentCmdLine=QStringList()); | ||||||
|     QList<QPair<QTorrentHandle,QString> > unauthenticated_trackers; // Still needed? |   ~GUI(); | ||||||
|     // GUI related |   // Methods | ||||||
|     QTimer *guiUpdater; |   QWidget* getCurrentTabWidget() const; | ||||||
|     QTabWidget *tabs; |   TransferListWidget* getTransferList() const { return transferList; } | ||||||
|     StatusBar *status_bar; |   QMenu* getTrayIconMenu(); | ||||||
|     QPointer<options_imp> options; |   PropertiesWidget *getProperties() const { return properties; } | ||||||
|     QPointer<QSystemTrayIcon> systrayIcon; |  | ||||||
|     QPointer<QTimer> systrayCreator; |  | ||||||
|     QMenu *myTrayIconMenu; |  | ||||||
|     TransferListWidget *transferList; |  | ||||||
|     TransferListFiltersWidget *transferListFilters; |  | ||||||
|     PropertiesWidget *properties; |  | ||||||
|     bool displaySpeedInTitle; |  | ||||||
|     bool force_exit; |  | ||||||
|     // Keyboard shortcuts |  | ||||||
|     QShortcut *switchSearchShortcut; |  | ||||||
|     QShortcut *switchSearchShortcut2; |  | ||||||
|     QShortcut *switchTransferShortcut; |  | ||||||
|     QShortcut *switchRSSShortcut; |  | ||||||
|     // Widgets |  | ||||||
|     QAction *prioSeparator; |  | ||||||
|     QAction *prioSeparator2; |  | ||||||
|     QSplitter *hSplitter; |  | ||||||
|     QSplitter *vSplitter; |  | ||||||
|     // Search |  | ||||||
|     SearchEngine *searchEngine; |  | ||||||
|     // RSS |  | ||||||
|     QPointer<RSSImp> rssWidget; |  | ||||||
|     // Misc |  | ||||||
|     QLocalServer *localServer; |  | ||||||
|  |  | ||||||
|   protected slots: | public slots: | ||||||
|  |   void trackerAuthenticationRequired(QTorrentHandle& h); | ||||||
|  |   void setTabText(int index, QString text) const; | ||||||
|  |   void showNotificationBaloon(QString title, QString msg) const; | ||||||
|  |   void downloadFromURLList(const QStringList& urls); | ||||||
|  |   void updateAltSpeedsBtn(bool alternative); | ||||||
|  |   void updateNbTorrents(unsigned int nb_downloading, unsigned int nb_seeding, unsigned int nb_active, unsigned int nb_inactive, unsigned int nb_paused); | ||||||
|  |  | ||||||
|  | protected slots: | ||||||
|   // GUI related slots |   // GUI related slots | ||||||
|   void dropEvent(QDropEvent *event); |   void dropEvent(QDropEvent *event); | ||||||
|   void dragEnterEvent(QDragEnterEvent *event); |   void dragEnterEvent(QDragEnterEvent *event); | ||||||
| @@ -103,8 +91,6 @@ class GUI : public QMainWindow, private Ui::MainWindow{ | |||||||
|   void on_actionWebsite_triggered() const; |   void on_actionWebsite_triggered() const; | ||||||
|   void on_actionBugReport_triggered() const; |   void on_actionBugReport_triggered() const; | ||||||
|   void on_actionShow_console_triggered(); |   void on_actionShow_console_triggered(); | ||||||
|     void readParamsOnSocket(); |  | ||||||
|     void acceptConnection(); |  | ||||||
|   void balloonClicked(); |   void balloonClicked(); | ||||||
|   void writeSettings(); |   void writeSettings(); | ||||||
|   void readSettings(); |   void readSettings(); | ||||||
| @@ -114,6 +100,10 @@ class GUI : public QMainWindow, private Ui::MainWindow{ | |||||||
|   void handleDownloadFromUrlFailure(QString, QString) const; |   void handleDownloadFromUrlFailure(QString, QString) const; | ||||||
|   void createSystrayDelayed(); |   void createSystrayDelayed(); | ||||||
|   void tab_changed(int); |   void tab_changed(int); | ||||||
|  |   void on_actionLock_qBittorrent_triggered(); | ||||||
|  |   void defineUILockPassword(); | ||||||
|  |   bool unlockUI(); | ||||||
|  |   void notifyOfUpdate(QString); | ||||||
|   // Keyboard shortcuts |   // Keyboard shortcuts | ||||||
|   void createKeyboardShortcuts(); |   void createKeyboardShortcuts(); | ||||||
|   void displayTransferTab() const; |   void displayTransferTab() const; | ||||||
| @@ -126,37 +116,71 @@ class GUI : public QMainWindow, private Ui::MainWindow{ | |||||||
|   void on_actionOpen_triggered(); |   void on_actionOpen_triggered(); | ||||||
|   void updateGUI(); |   void updateGUI(); | ||||||
|   void loadPreferences(bool configure_session=true); |   void loadPreferences(bool configure_session=true); | ||||||
|  |   void processParams(const QString& params); | ||||||
|   void processParams(const QStringList& params); |   void processParams(const QStringList& params); | ||||||
|   void addTorrent(QString path); |   void addTorrent(QString path); | ||||||
|     void addUnauthenticatedTracker(QPair<QTorrentHandle,QString> tracker); |   void addUnauthenticatedTracker(const QPair<QTorrentHandle,QString> &tracker); | ||||||
|   void processDownloadedFiles(QString path, QString url); |   void processDownloadedFiles(QString path, QString url); | ||||||
|     void downloadFromURLList(const QStringList& urls); |  | ||||||
|   void finishedTorrent(QTorrentHandle& h) const; |   void finishedTorrent(QTorrentHandle& h) const; | ||||||
|  |   void askRecursiveTorrentDownloadConfirmation(QTorrentHandle &h); | ||||||
|   // Options slots |   // Options slots | ||||||
|   void on_actionOptions_triggered(); |   void on_actionOptions_triggered(); | ||||||
|   void optionsSaved(); |   void optionsSaved(); | ||||||
|   // HTTP slots |   // HTTP slots | ||||||
|   void on_actionDownload_from_URL_triggered(); |   void on_actionDownload_from_URL_triggered(); | ||||||
|  |  | ||||||
|  | protected: | ||||||
|   public slots: |  | ||||||
|     void trackerAuthenticationRequired(QTorrentHandle& h); |  | ||||||
|     void setTabText(int index, QString text) const; |  | ||||||
|     void showNotificationBaloon(QString title, QString msg) const; |  | ||||||
|  |  | ||||||
|   protected: |  | ||||||
|   void closeEvent(QCloseEvent *); |   void closeEvent(QCloseEvent *); | ||||||
|   void showEvent(QShowEvent *); |   void showEvent(QShowEvent *); | ||||||
|   bool event(QEvent * event); |   bool event(QEvent * event); | ||||||
|   void displayRSSTab(bool enable); |   void displayRSSTab(bool enable); | ||||||
|  |   void displaySearchTab(bool enable); | ||||||
|  |  | ||||||
|   public: | private: | ||||||
|     // Construct / Destruct |   QFileSystemWatcher *executable_watcher; | ||||||
|     GUI(QWidget *parent=0, QStringList torrentCmdLine=QStringList()); |   // Bittorrent | ||||||
|     ~GUI(); |   Bittorrent *BTSession; | ||||||
|     // Methods |   QList<QPair<QTorrentHandle,QString> > unauthenticated_trackers; // Still needed? | ||||||
|     int getCurrentTabIndex() const; |   // GUI related | ||||||
|     QPoint screenCenter() const; |   QTimer *guiUpdater; | ||||||
|  |   HidableTabWidget *tabs; | ||||||
|  |   StatusBar *status_bar; | ||||||
|  |   QPointer<options_imp> options; | ||||||
|  |   QPointer<consoleDlg> console; | ||||||
|  |   QPointer<about> aboutDlg; | ||||||
|  |   QPointer<createtorrent> createTorrentDlg; | ||||||
|  |   QPointer<downloadFromURL> downloadFromURLDialog; | ||||||
|  |   QPointer<QSystemTrayIcon> systrayIcon; | ||||||
|  |   QPointer<QTimer> systrayCreator; | ||||||
|  |   QPointer<QMenu> myTrayIconMenu; | ||||||
|  |   TransferListWidget *transferList; | ||||||
|  |   TransferListFiltersWidget *transferListFilters; | ||||||
|  |   PropertiesWidget *properties; | ||||||
|  |   bool displaySpeedInTitle; | ||||||
|  |   bool force_exit; | ||||||
|  |   bool ui_locked; | ||||||
|  |   LineEdit *search_filter; | ||||||
|  |   // Keyboard shortcuts | ||||||
|  |   QShortcut *switchSearchShortcut; | ||||||
|  |   QShortcut *switchSearchShortcut2; | ||||||
|  |   QShortcut *switchTransferShortcut; | ||||||
|  |   QShortcut *switchRSSShortcut; | ||||||
|  |   // Widgets | ||||||
|  |   QAction *prioSeparator; | ||||||
|  |   QAction *prioSeparator2; | ||||||
|  |   QSplitter *hSplitter; | ||||||
|  |   QSplitter *vSplitter; | ||||||
|  |   // Search | ||||||
|  |   QPointer<SearchEngine> searchEngine; | ||||||
|  |   // RSS | ||||||
|  |   QPointer<RSSImp> rssWidget; | ||||||
|  |  | ||||||
|  | private slots: | ||||||
|  |     void on_actionSearch_engine_triggered(); | ||||||
|  |     void on_actionRSS_Reader_triggered(); | ||||||
|  |     void on_actionSpeed_in_title_bar_triggered(); | ||||||
|  |     void on_actionTop_tool_bar_triggered(); | ||||||
|  |     void on_actionShutdown_when_downloads_complete_triggered(); | ||||||
| }; | }; | ||||||
|  |  | ||||||
| #endif | #endif | ||||||
|   | |||||||
							
								
								
									
										
											BIN
										
									
								
								src/Icons/3-state-checkbox.gif
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 322 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/L.gif
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 66 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/flags/saoudi_arabia.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 546 B | 
| Before Width: | Height: | Size: 185 B After Width: | Height: | Size: 459 B | 
| Before Width: | Height: | Size: 1.3 KiB | 
| Before Width: | Height: | Size: 743 B | 
| Before Width: | Height: | Size: 659 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/chronometer.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 7.0 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/cookies.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 2.3 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/encrypted32.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.0 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/feed-subscribe.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.0 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/folder-documents.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 409 B | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/gear32.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/go-bottom.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.0 KiB | 
							
								
								
									
										
											BIN
										
									
								
								src/Icons/oxygen/go-down.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 892 B |