Commit graph

1633 commits

Author SHA1 Message Date
Mike Tzou
975b44d05f
Merge pull request #11241 from thalieht/delfolder
Add "Remove torrent and its files" option to share ratio limiting
2019-09-29 09:51:41 +08:00
thalieht
53e7faa47c Rename share ratio limiting options 2019-09-26 13:34:03 +03:00
thalieht
07eb261991 Add "Remove torrent and its files" option to share ratio limiting 2019-09-26 13:34:03 +03:00
Chocobo1
58fa5e004f
Improve "stats updated" signal handling in MainWindow class 2019-09-24 11:51:29 +08:00
Mike Tzou
50e0b2ab15
Merge pull request #11251 from Chocobo1/stats
Move "torrent status report" functionality out of Session class
2019-09-24 10:48:52 +08:00
Chocobo1
418164bee4
Move "torrent status report" functionality out of Session class 2019-09-23 21:08:59 +08:00
Chocobo1
c7ac96c4f5
Add ability to trigger action via keypad Enter 2019-09-23 19:18:14 +08:00
Chocobo1
4a71b78e2d
Group related code together
And also rename local variables.
2019-09-23 19:18:14 +08:00
Chocobo1
2152a81d11
Add ability to open file via keypad Enter
Closes #11260.
2019-09-23 19:18:07 +08:00
Chocobo1
82276b2a99
Rename variable 2019-09-19 16:50:57 +08:00
Chocobo1
e3b9659fb8
Fix seeding failed after creating a new torrent
Closes #11252.
2019-09-19 16:50:31 +08:00
Chocobo1
bab953298b
Escape HTML in comment field 2019-09-15 14:41:07 +08:00
Chocobo1
f1243871b0
Remove redundant HTML escaping
The text widget is already set to plaintext and doing HTML escaping will
not give us more security but only makes it harder to read.
2019-09-15 14:40:34 +08:00
Chocobo1
edcc74c1ae
Add option to align file to piece boundary when creating new torrent
Alignment is achieved by adding dummy pad files between files which is
handled by libtorrent.
Closes #10460.
2019-09-14 12:16:50 +08:00
Mike Tzou
d2c21ce507
Merge pull request #11195 from Chocobo1/mac
Replace deprecated macro
2019-09-07 11:58:23 +08:00
Chocobo1
0d5b0b9542
Replace deprecated macro
Q_OS_MAC is deprecated and the replacement is Q_OS_MACOS.
2019-09-05 20:16:18 +08:00
Chocobo1
9dc3b18178
Fix filename validation on non-Windows OS
Closes #11191.
2019-09-05 20:05:21 +08:00
Chocobo1
2396ef5bd6
Move error logging of adding peers to the proper place 2019-09-04 16:09:24 +08:00
Mike Tzou
2d13f87ba4
Merge pull request #11145 from Chocobo1/qpixmapcache
Setup pixmap cache in a proper place
2019-08-31 11:50:09 +08:00
Mike Tzou
ee8a7beb41
Merge pull request #11143 from Chocobo1/updater
Move "Check for program updates" checkbox out of Advanced settings
2019-08-30 14:55:55 +08:00
Chocobo1
7e0daf1663
Setup pixmap cache in a proper place
There is no need to reset the cache limit to previous value as
QPixmapCache is an application wide cache.
Also raise the cache size to 64MB.
2019-08-30 14:51:27 +08:00
Mike Tzou
62a3938480
Merge pull request #11085 from Chocobo1/model
Better on-demand reloading of torrent data
2019-08-30 12:45:57 +08:00
Chocobo1
eb784b0d2e
Move "Check for program updates" checkbox out of Advanced settings 2019-08-29 06:15:20 +08:00
Chocobo1
b921d96f4b
Use Q_ASSERT() to check invariants 2019-08-29 06:07:44 +08:00
Chocobo1
72d1d5d2dd
Cut down number of signal emits 2019-08-28 18:38:26 +08:00
Chocobo1
60df790b82
Initialize pointers
Fixup aeabd2d625.
2019-08-28 13:08:36 +08:00
Chocobo1
aeabd2d625
Clean up PeerListWidget class 2019-08-27 14:30:03 +08:00
Mike Tzou
5c7f9530ee
Merge pull request #11060 from Chocobo1/tracker
Improve embedded tracker
2019-08-22 12:18:56 +08:00
Chocobo1
8d0d8e4dcb
Improve embedded tracker
Now it conforms to BEPs more closely.
2019-08-21 18:05:50 +08:00
thalieht
e26573d97f Use FileSystemPathEdit in automated rss downloader 2019-08-20 15:34:51 +03:00
Chocobo1
863c9f9876
Speed up lookup operation in TransferListModel
Previously lookup is O(n), add operation is O(n), remove operation is
O(n).
Now lookup is O(1), add operation is O(1), remove operation is O(n).
n is the number of torrents already recorded.
2019-08-19 11:33:14 +08:00
Chocobo1
9c964cdd97
Fix using out-of-bounds of indexes 2019-08-18 20:00:54 +08:00
Chocobo1
e3483c62ca
Remove explicit conversion to QVariant 2019-08-18 20:00:43 +08:00
Chocobo1
1f3bf75fff
Better on-demand reloading of torrent data 2019-08-17 15:44:16 +08:00
Chocobo1
b34d90df0b
Fix translation issues
By using disambiguation field instead of comment field to differentiate
translations.
2019-08-13 12:20:23 +08:00
Mike Tzou
767f024585
Merge pull request #7475 from thalieht/ratiosuperseed
Add option to enable Super Seeding mode once ratio/time limit is reached. Closes #7160.
2019-08-10 11:33:09 +08:00
thalieht
1f6f1716ad Enable Super Seeding mode once ratio/time limit is reached 2019-08-09 13:06:34 +03:00
Chocobo1
0b6c1694b4
Update python installer URL 2019-08-09 12:47:52 +08:00
Mike Tzou
2427f5d324
Merge pull request #11041 from Chocobo1/splitRef
Revise operations in TorrentHandle class
2019-08-09 12:27:44 +08:00
Chocobo1
8d6b9b6181
Revise sort model and delegate code 2019-08-08 22:17:18 +08:00
Chocobo1
061219d0a2
Simplify code 2019-08-08 21:25:28 +08:00
Chocobo1
b5b678c58f
Replace QString::split() by faster alternatives 2019-08-08 18:57:54 +08:00
Chocobo1
c61116882b
Clean up TransferListModel class 2019-08-08 13:15:47 +08:00
Chocobo1
dcf632b39c
Remove redundant margin properties
Those are the same with the default values.
2019-08-08 13:15:47 +08:00
Mike Tzou
c65c40a5cb
Merge pull request #11020 from Piccirello/remove_workaround
Remove Qt bug workaround
2019-08-06 10:17:52 +08:00
Chocobo1
e90a2c00a5
Replace QList by QVector 2019-08-05 20:56:15 +08:00
Thomas Piccirello
378504de2b Remove Qt bug workaround
The Qt bug is fixed in 5.7.1, while we require Qt >= 5.9.0.
2019-08-05 01:27:47 -07:00
Mike Tzou
c0fc4e6d90
Merge pull request #10993 from Piccirello/adjust-verbiage
Adjust wording to sound more natural
2019-07-31 14:24:58 +08:00
Chocobo1
3ab2fe907f
Remove Windows XP remnants 2019-07-31 02:10:22 +08:00
Chocobo1
cdb0db02f9
Replace obsoleted QSysInfo functions 2019-07-31 02:10:22 +08:00
Tom Piccirello
eaa700791b
Adjust wording to sound more natural 2019-07-29 00:31:09 -07:00
Chocobo1
7ab3479a34
Replace static_cast by qOverload 2019-07-26 22:32:18 +08:00
Chocobo1
ee0d2d2220
Move fspathedit_p to private folder 2019-07-26 22:32:18 +08:00
Chocobo1
60faba60ea
Add availability column
Closes #1632.
2019-07-25 13:17:14 +08:00
Chocobo1
9d88dd2604
Rename class variables 2019-07-24 22:22:02 +08:00
Mike Tzou
ce81103398
Merge pull request #10839 from Piccirello/gui-files-table-file-size
Update remaining size of ignored files to 0
2019-07-23 22:57:32 +08:00
Vladimir Golovnev
cf2e7d77d6
Merge pull request #10950 from glassez/drop-deprecated
Don't use deprecated libtorrent features
2019-07-23 09:19:15 +03:00
Vladimir Golovnev (Glassez)
ad6a40d5f4
Extract PeerAddress class into separate file 2019-07-23 06:27:35 +03:00
Thomas Piccirello
1b23a27acb Update remaining size of ignored files to 0
Also fixes a bug where ignoring the last item within a folder wouldn't recalculate the folder's size
2019-07-21 12:51:35 -07:00
Vladimir Golovnev (Glassez)
60ffa3030e
Don't use deprecated libtorrent features 2019-07-21 19:28:28 +03:00
Chocobo1
4a90716843
Add override keyword to functions 2019-07-19 11:58:56 +08:00
Chocobo1
07263d2d70
Move implementation to its own file 2019-07-18 00:30:44 +08:00
Mike Tzou
1e70c52e7a
Merge pull request #10934 from Chocobo1/delete
Rely on Qt ownership to delete class members
2019-07-17 12:02:30 +08:00
Chocobo1
e74b984a0a
Rely on Qt ownership to delete class members 2019-07-16 18:42:26 +08:00
Prince Gupta
8267a4fef9 Incorporate GuiIconProvider inside UIThemeManager 2019-07-16 09:31:33 +05:30
Mike Tzou
94e2c44840
Merge pull request #10918 from Chocobo1/trackers
Various code clean up
2019-07-15 09:59:45 +08:00
Chocobo1
7b568b07e6
Clean up CMakeLists.txt 2019-07-13 19:55:13 +08:00
Chocobo1
032883e278
Move LineEdit files out of subfolder 2019-07-13 19:46:53 +08:00
Chocobo1
23ebb3134b
Move QLabels out of class 2019-07-13 19:38:37 +08:00
Chocobo1
cc663746eb
Forward declare some classes 2019-07-13 19:38:37 +08:00
thalieht
7b31868e3c Rename priority to queue in the context of torrents 2019-07-13 14:04:16 +03:00
Chocobo1
599bfc0735
Use Qt object ownership to handle QShortcut deletions 2019-07-13 13:24:27 +08:00
Chocobo1
662e1e6134
Clean up code in TrackerListWidget class 2019-07-13 12:53:26 +08:00
Chocobo1
b55c6a360a
Implement tri-state checkbox action in menu
The new TriStateAction class is an improvement of the old one in the
sense that:
1. Have public method to set states.
2. Can connect to the usual Qt slots.
3. Draws checkbox at the correct offset (where QAction draws) in menu
   and better handling of mouse clicking and keyboard navigating.
2019-07-12 19:57:31 +08:00
Mike Tzou
24932f6cb6
Merge pull request #10895 from Chocobo1/tracker
Add dialog to mass edit torrent's tracker
2019-07-12 10:59:50 +08:00
Chocobo1
8eabaf5eb2
Replace QList by QVector 2019-07-11 12:10:19 +08:00
Chocobo1
9e7f50517e
Add "Tracker entries" dialog 2019-07-11 12:10:19 +08:00
Prince Gupta
a24925c858 Allow styling with QSS stylesheets 2019-07-09 19:56:55 +05:30
Chocobo1
ed2199b91c
Add "File pool size" option 2019-07-03 18:06:07 +08:00
Chocobo1
6286bc716c
Add "Socket backlog size" option
The default value in libtorrent is 5 which is too small nowadays.
The new default value 30 is chosen to be in line with
QTcpServer::maxPendingConnections().
2019-07-03 17:36:56 +08:00
Mike Tzou
4b25f87859
Merge pull request #10874 from Chocobo1/qt
Replace obsoleted Qt functions
2019-07-02 10:57:06 +08:00
Chocobo1
4eff268095
Replace obsoleted QFontMetrics::width()
Qt 5.13 marked QFontMetrics::width() obsolete.
2019-07-01 14:48:53 +08:00
Vladimir Golovnev (Glassez)
c7f3693ad1
Implement "Application instances manager" 2019-06-30 20:02:46 +03:00
Chocobo1
da2bfd2457
Replace QList by QVector 2019-06-26 20:30:07 +08:00
Chocobo1
5b9b5ce577
Remove buttons from search widget
These buttons are replaced by right-click menu actions.
2019-06-26 20:30:07 +08:00
Chocobo1
4f5302adf8
Add more copy field actions to search widget
Closes #10250.
2019-06-26 20:30:07 +08:00
Chocobo1
26ff9150a2
Rename label in search widget 2019-06-26 10:52:13 +08:00
Chocobo1
af5af0ad3f
Remove unused lambda capture 2019-06-25 16:12:51 +08:00
Chocobo1
32a861fd1b
Add right click menu to SearchJobWidget 2019-06-25 16:12:51 +08:00
Chocobo1
cf89c2f5bf
Properly deallocate actions when menu closed
Fixup 3748b995ff.
2019-06-24 11:02:35 +08:00
Chocobo1
412e326cf2
Avoid allocating a new menu/action manually 2019-06-24 11:02:35 +08:00
Chocobo1
04e7b3f6d2
Move copy actions under a submenu 2019-06-24 11:02:34 +08:00
Chocobo1
0b1b3c1f84
Use numeric_limits instead of constants from C
In C++, using numeric_limits is more idiomatic compared to using constants.
2019-06-23 11:16:58 +08:00
Chocobo1
75c80c3716
Remove limits of "Disk cache expiry interval" setting 2019-06-22 17:13:26 +08:00
Chocobo1
042cd4267f
Remove upper limit of "Disk cache" setting 2019-06-22 17:13:24 +08:00
Chocobo1
88c3ffbef8
Avoid creating unnecessary event loops
This is part 2.
2019-06-20 11:42:54 +08:00
Chocobo1
4880dc812c
Use appropriate type 2019-06-19 18:52:24 +08:00
Chocobo1
516c968373
Support year unit in userFriendlyDuration() 2019-06-19 18:52:24 +08:00
Chocobo1
1de4c2497c
Fix wrong "Time Active" value displayed
Closes #9612.
2019-06-19 18:52:24 +08:00
Chocobo1
19f50a363d
Fix crash when removing phantom tags
Normally a tag is stored in both session and torrent's fastresume.
A phantom tag is a tag that is stored in fastresume but not in
session.
This crash can occur when user resets his config file and choose
to remove tag from torrent.

Closes #10569.
2019-06-19 18:52:24 +08:00
Chocobo1
e83019bdfa
Set wheel event to accepted only if we handle it 2019-06-19 18:52:24 +08:00
Mike Tzou
cfd02a4355
Merge pull request #10786 from Chocobo1/dialog
Avoid creating unnecessary event loops
2019-06-19 11:02:09 +08:00
Vladimir Golovnev (Glassez)
8e65317d61
Rename "fromNativePath" to "toUniformPath"
Unlike "toNativePath" which name clearly reflects the function result
"fromNativePath" has no such clear meaning.
Since this function converts path into uniform format "toUniformPath"
is better name.
2019-06-17 15:55:49 +03:00
Chocobo1
3748b995ff
Avoid creating unnecessary event loops
The `exec()` method will create another event loop and transfer
control over there which might introduce unexpected bugs.
2019-06-17 20:44:57 +08:00
Mike Tzou
206bb018dd
Merge pull request #10801 from Chocobo1/timeout
Add WebAPI session timeout settings
2019-06-17 00:18:01 +08:00
Mike Tzou
46d445d042
Merge pull request #10792 from Chocobo1/rename2
Remove empty leftover folders after rename properly
2019-06-16 12:22:22 +08:00
Chocobo1
440860c4a9
Properly remove empty leftover folders after rename
TorrentInfo::origFilePath will return the very original path from
.torrent file, not the most recent file path before the rename operation
and thus the code would not be working as we expected.
2019-06-15 19:08:23 +08:00
Chocobo1
89124bdcc8
Add WebAPI session timeout settings
Raise default timeout to 1 hour.
2019-06-15 18:57:19 +08:00
silverqx
3e97793ef1
Focus behavior row in Options dialog 2019-06-13 17:31:54 +02:00
silverqx
4f4f435e76
Add zlib version to GUI & stackdump 2019-06-12 08:02:24 +02:00
Chocobo1
eabcae1018
Fix unable to rename folder on Windows
The bug occurs when the new path and old path only differ by letter case.
2019-06-09 19:07:43 +08:00
Chocobo1
9c747d3c6d
Move renameSelectedFile(BitTorrent::TorrentInfo &) 2019-06-09 19:07:43 +08:00
Chocobo1
62ccfd37b2
Move renameSelectedFile(BitTorrent::TorrentHandle *) 2019-06-09 19:07:43 +08:00
Mike Tzou
370544764e
Merge pull request #10750 from Chocobo1/modal
Fix unable to control add torrent dialogs when opened simultaneously
2019-06-06 23:16:35 +08:00
Mike Tzou
f3c0cc3cee
Merge pull request #10763 from Chocobo1/connect
Use Qt5 connect syntax
2019-06-06 10:18:46 +08:00
Chocobo1
e071c31a4e
Use Qt5 connect syntax 2019-06-05 14:17:44 +08:00
Chocobo1
dc9d0ed76f
Fix unable to control add torrent dialogs when opened simultaneously 2019-06-05 13:24:49 +08:00
Chocobo1
03fdc0e1c4
Remove redundant disconnect()
The dialog is going out-of-scope in these instance and the signal-slot connection will disconnect
automatically.
2019-06-05 13:22:50 +08:00
Chocobo1
014273d7ec
Drop support for "BC Link" format
Fixup 19d6de795c.
2019-06-05 00:42:46 +08:00
thalieht
70f8882f87 Group Qt forward declarations separately from the others 2019-06-04 17:48:55 +03:00
thalieht
9995967fbf Remove some unused #include 2019-06-04 17:48:55 +03:00
thalieht
4370a7eb12 Forward declare in a few places 2019-06-04 17:48:55 +03:00
Mike Tzou
87dcbbbd23
Merge pull request #10734 from Chocobo1/folder
Use native folder icon in content tree
2019-06-02 09:40:17 +08:00
Chocobo1
f52dcc08eb
Use native folder icon in content tree
This icon is used in content tree where all icons should be OS native
and not the ones from qbt.
2019-06-01 10:00:42 +08:00
Chocobo1
49df1cd3c7
Use less operations when building strings 2019-05-31 14:52:08 +08:00
Chocobo1
0d9fcb0c1d
Fix arrow too large on macOS
By changing to use natvie UI tree controls.

Closes #10709.
2019-05-28 22:35:22 +08:00
Mike Tzou
c5430030e3
Merge pull request #10690 from Chocobo1/rtl
Various visual tweaks
2019-05-26 09:23:22 +08:00
Mike Tzou
ebdf5225a8
Merge pull request #10684 from jagannatharjun/arrow-transfercategory
Replace CheckBox with Arrow in transferlistfilterswidget
2019-05-25 11:21:06 +08:00
Chocobo1
ccbb4576b6
Tweak visuals in Options dialog 2019-05-23 21:27:50 +08:00
Chocobo1
d7afc91975
Avoid combo boxes extending to the right in Options dialog 2019-05-23 21:07:44 +08:00
Prince Gupta
e283026a3c Replace CheckBox with Arrow in transferlistfilterswidget.cpp 2019-05-22 21:08:04 +05:30
Chocobo1
1e029da5ad
Fix search icon placement when using RTL languages 2019-05-22 22:22:12 +08:00
Chocobo1
ed6bb0efdc
Replace QList by QVector for tracker related operations 2019-05-22 12:57:22 +08:00
Chocobo1
802af70e2f
Fix typos 2019-05-19 18:51:09 +08:00
Chocobo1
e92209475e
Use range-based for loops 2019-05-19 18:51:09 +08:00
Chocobo1
e288de7ec1
Forward declare as much as possible 2019-05-19 12:06:18 +08:00
Mike Tzou
3d6dccc689
Merge pull request #10627 from Chocobo1/alg
Improve removeIf() to support other types
2019-05-16 10:45:55 +08:00
Evgeny Lensky
62c72091ce
Change "Add new torrent" dialog to horizontal layout 2019-05-14 11:03:56 +08:00
Chocobo1
c6f3da1097
Improve removeIf() to support set types
We can now replace QMutable*Iterator by removeIf() which usage is more consistent with other
algorithm functions.
2019-05-14 01:26:01 +08:00
Ekin Dursun
c0c2fe247b Don't turn screen blank when closed to system tray
Closes #9240 and possibly #9121, as @zeule suggested here: https://github.com/qbittorrent/qBittorrent/issues/9240#issuecomment-408025722.
2019-05-07 02:08:46 +03:00
Mike Tzou
3a3dec1707
Merge pull request #10445 from Chocobo1/crash
Work around crashing in Qt networking library
2019-05-03 22:54:25 +08:00
Mike Tzou
2d7b833ae6
Merge pull request #10537 from Chocobo1/template
Minor cleanups
2019-05-01 23:51:23 +08:00
Chocobo1
375de4f8a6
Replace QMap with QHash when sensible 2019-05-01 11:09:25 +08:00
dzmat
7de0f9abed Change number of time axis divisions from 5 to 6 for convenience 2019-04-22 00:15:13 +07:00
dzmat
0af17bf7e9 Add 12 hour and 24 hour speed graphs 2019-04-22 00:15:13 +07:00
Mike Tzou
19dfec1e0a
Merge pull request #10464 from thalieht/torrent-size-limit
Increase the download request size limit from 10 to 100 MiB
2019-04-11 10:14:49 +08:00
thalieht
25102b9c5d Increase the download size limit to 100 MiB 2019-04-10 11:39:27 +03:00
Chocobo1
4bf4313862
Initialize class variable via constructor 2019-04-08 23:29:14 +08:00
thalieht
371a090cec Rename "Prefer encryption" to "Allow encryption"
Because it actually prefers non-encryption but allows it if requested.
2019-04-05 14:18:49 +03:00
Chocobo1
1ea61db1fb
Disable downloading tracker favicons by default
Workaround for a crash in Qt networking library, source:
https://github.com/qbittorrent/qBittorrent/issues/9667#issuecomment-464445025

Closes #9667.
2019-04-05 13:54:40 +08:00