Commit graph

1982 commits

Author SHA1 Message Date
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
thalieht
3731a3ea65 Make num enter key work the same as return in searchjobwidget 2019-03-22 20:01:48 +02:00
Vladimir Golovnev (Glassez)
ead078a38e
Add preliminary support of libtorrent v1.2
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
Mike Tzou
d1b0c230ed
Merge pull request #10366 from Chocobo1/logger
Avoid performance penalty when logger is full
2019-03-17 15:04:53 +08:00
Chocobo1
cb9a160366
Utilize parent pointer appropriately 2019-03-15 14:29:07 +08:00
Chocobo1
a3019f56b0
Clean up code 2019-03-15 14:29:06 +08:00
thalieht
4c53447d35 Remove the max half-open connections option from GUI
Its functionality was deprecated long ago.
2019-03-13 21:08:40 +02:00
thalieht
bcfa62cc76 Rename "#" column to "Tier" in the tracker list 2019-03-13 21:08:40 +02:00
thalieht
cccaca0c01 Center align the section labels in advanced settings 2019-03-13 21:08:40 +02:00
thalieht
3fca49e44d Add documentation links to some advanced settings 2019-03-13 21:08:40 +02:00
Mike Tzou
c47d6b517a
Merge pull request #10355 from Chocobo1/label
Improve AdvancedSettings::addRow()
2019-03-11 00:25:35 +08:00
Vladimir Golovnev
928ce940c9
Merge pull request #10346 from glassez/download-manager
Improve "Download manager"
2019-03-10 09:13:07 +03:00
Vladimir Golovnev (Glassez)
746916a963
Use DownloadHandler behind the scenes 2019-03-08 13:00:37 +03:00
sledgehammer999
c2d1af9853
Merge pull request #10338 from sledgehammer999/raise_qt5_ver
Raise minimum Qt version to 5.9.0
2019-03-08 00:42:26 +02:00
Chocobo1
f9e10616d0
Improve AdvancedSettings::addRow()
1. Add context to connect().
2. Use QLabel in the left table cell, this allows using rich text formatting, such as HTML links.
2019-03-07 16:22:23 +08:00
Mike Tzou
ccd8f3e0f1
Merge pull request #10340 from Chocobo1/move
Move helper functions to Utils::Gui namespace
2019-03-07 15:11:58 +08:00
paolo-sz
1ea7907e09 Add default tooltip "Searching..." on tab creation. 2019-03-05 20:36:49 +01:00
paolo-sz
22835c0350 Avoid crashes on torrent search
qbittorrent closes itself without any error message when a search tab
should be notified of a status change: fixed bad pointer variable catch
in lambda code.
2019-03-05 20:36:49 +01:00
Chocobo1
78b9eafed2
Replace deprecated qt_mac_set_dock_menu() 2019-03-05 17:17:07 +08:00
Vladimir Golovnev (Glassez)
6cb15706f5
Reduce number of DownloadManager signals 2019-03-05 11:28:29 +03:00
Chocobo1
adbd34c795
Move helper functions to Utils::Gui namespace 2019-03-05 14:55:22 +08:00
sledgehammer999
5c63ad3b95
Raise minimum Qt version to 5.9.0 2019-03-04 16:48:49 +02:00
Mike Tzou
0f1fc7be9d
Merge pull request #10302 from Chocobo1/uptr
Replace QScopedPointer with std::unqiue_ptr
2019-03-02 12:26:14 +08:00
Chocobo1
3dd969df64
Replace deprecated QSignalMapper class 2019-02-28 12:03:08 +08:00
Chocobo1
c6ae1aa9d9
Replace deprecated QString::null 2019-02-28 12:02:03 +08:00
Mike Tzou
46bc1d12b9
Merge pull request #10314 from thalieht/const2
More const
2019-02-28 11:33:35 +08:00
thalieht
77aea3c59e Add const to a few pointer arguments 2019-02-25 17:05:15 +02:00
thalieht
ce437817de Make various minor changes 2019-02-25 17:05:15 +02:00
thalieht
89dce36e98 Use uniform initialization on some default arguments 2019-02-25 17:05:15 +02:00
thalieht
8a19a0d4a0 Remove const in declarations' arguments that are passed by value 2019-02-25 17:05:15 +02:00
thalieht
70f1537d9f Add const to almost all remaining vars and arguments that qualify 2019-02-25 17:05:15 +02:00
Chocobo1
e5dca50025
Convert to use private pointer for ui object 2019-02-25 01:22:40 +08:00
Mike Tzou
bb041c0eca
Merge pull request #10292 from Chocobo1/rmInvalid
Load torrent from data directly
2019-02-21 23:18:02 +08:00
Chocobo1
5c0d9b7eab
Load torrent from data directly 2019-02-20 00:14:41 +08:00
Chocobo1
5e3fddf456
Replace QScopedPointer with std::unqiue_ptr
These 2 types are very similar and we should prefer the one from C++
standard library, this reduces the number of types in our code base.

Also see:
https://stackoverflow.com/questions/40346393/should-i-use-qscopedpointer-or-stdunique-ptr#comment67966940_40346991
2019-02-18 16:06:40 +08:00
thalieht
8c944bd4e1 Avoid repeating the return type 2019-02-16 18:54:18 +02:00
thalieht
92a290895b Convert vars into refs to avoid copy construction from const refs 2019-02-16 18:54:17 +02:00
thalieht
400792d18e Use isEmpty() instead of size() for emptiness 2019-02-16 18:54:17 +02:00
thalieht
d8cbc9266a Use 'auto' to avoid duplicating the type name 2019-02-16 18:54:17 +02:00
thalieht
947c7e1d64 Convert to range-based for loop 2019-02-16 16:53:26 +02:00
thalieht
8a3f942385 Don't use 'else' after return/break 2019-02-13 18:23:25 +02:00
Mike Tzou
78ab0e4ba9
Merge pull request #10220 from thalieht/const
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
445adb0ab4 Convert pass-by-value arguments to const refs where applicable 2019-02-12 02:45:55 +02:00
thalieht
ca3ce87e06 Add const to many vars and arguments
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Mike Tzou
efed3fc78c
Merge pull request #10256 from Chocobo1/license
Add license header
2019-02-08 12:07:08 +08:00
Mike Tzou
6f0a66ce26
Merge pull request #10255 from Chocobo1/algorithm
Make use of std algorithms and C++14 features
2019-02-07 10:45:40 +08:00
Chocobo1
6d29a3af60
Make use of std algorithms 2019-02-05 13:35:54 +08:00
Chocobo1
f789df7edf
Add license header 2019-02-04 17:28:55 +08:00
Vladimir Golovnev
e9f3e20e67
Merge pull request #10243 from glassez/content-menu
Close context menu when torrent content model is reset. Closes #9522
2019-02-02 21:13:41 +03:00
Vladimir Golovnev (Glassez)
5a86c4ac52
Close context menu when content model is reset
Closes #9522.
2019-02-01 18:44:26 +03:00
Mike Tzou
40eb8a1f4a
Merge pull request #10175 from Chocobo1/cert
Load WebUI certificate & key from file path
2019-02-01 13:37:13 +08:00
Vladimir Golovnev (Glassez)
c631dbdaa1
Improve Properties widget
Drop redundant dependencies.
Refresh after BitTorrent session refreshing  (instead of using timer).
2019-01-28 12:42:12 +03:00
Chocobo1
5cdb3b6a2d
Load WebUI certificate & key from file path
This allow users to update certificate & key more easily, i.e. without the need to import them
into qbt.

Closes #6675, #7547, #8315, #8564.
2019-01-28 16:33:48 +08:00
sledgehammer999
bb3ad8acd3
Merge pull request #10191 from sledgehammer999/drop_google
Don't query Google for tracker favicons
2019-01-27 22:19:56 +02:00
sledgehammer999
009fd0e211
Don't query Google for tracker favicons
It is a bad idea for user privacy to automatically contact a 3rd party
about tracker domains. Especially when the user isn't informed about
this and the 3rd party is Google.

Reverts 1b9882b3a3
2019-01-21 16:15:09 +02:00
Chocobo1
04227f5a41
Add QBT_APP_64BIT define
Now we use QT_POINTER_SIZE to detect CPU bitness, it has the advantage of applicable to all CPU
architectures not limiting to x86 arch.
2019-01-19 10:14:10 +08:00
Mike Tzou
81c09d34ad
Merge pull request #10163 from airium/allow-larger-checking-memory-usage
Allow setting larger checking memory usage in GUI
2019-01-19 01:30:55 +08:00
sledgehammer999
2ac7f2defe
Update copyright year 2019-01-17 01:08:51 +02:00
sledgehammer999
6c6d75f607
Mention Swedish translator
Closes #10103
2019-01-17 00:53:38 +02:00
airium
dbca4346aa Allow setting larger checking memory usage in GUI 2019-01-16 14:23:21 +08:00
Vladimir Golovnev (Glassez)
302c99d7d5
Drop support of libtorrent < 1.1.10 2019-01-11 15:13:17 +03:00
sledgehammer999
88295f8075
Merge pull request #10094 from Kolcha/pb-fix
Draw progress bar in Fusion style on macOS systems
2019-01-04 00:31:34 +02:00
Bert Verhelst
9f8f9b6702
Converted remaining icons to svg 2019-01-04 00:24:30 +02:00
Nick Korotysh
bd1856594b
Draw progress bar in Fusion style on macOS systems
Qt has a bug QTBUG-72558, which leads to incorrect progress bar
position, when drawing it in delegate.
Also, since OS X 10.10 Yosemite macOS default style was changed,
and progress bars became very tiny and without text (percentage).
These two cases make qBittorrent look pretty awful, but drawing
progress bar in Fusion style solves both issues.
2019-01-02 10:01:32 +03:00
Mike Tzou
b87987ec89
Merge pull request #10074 from Chocobo1/magneturi
Drop support for "BC Link" format
2019-01-01 23:13:05 +08:00
Chocobo1
2b903fc3d1
Move Utils::Misc::isUrl() function
All usage of this function gets to call Net::DownloadManager eventually.
2018-12-31 20:00:15 +08:00
Chocobo1
6759446639
Cleanup code
Also remove redundant code, it is already handled correctly in subsequent function calls.
2018-12-31 20:00:15 +08:00
Mike Tzou
3772968f49
Merge pull request #10076 from Chocobo1/pr_9756
Prevent flickering preview dialog
2018-12-31 13:45:55 +08:00
sledgehammer999
6236aee8d5
Merge pull request #10046 from sledgehammer999/translator
Mention more translators
2018-12-30 18:20:53 +02:00
Chocobo1
dd2763d725
Forward declare TorrentHandle 2018-12-29 18:39:54 +08:00
silver
0b47021504
Prevent flickering preview dialog
Avoid instantiation of a preview dialog, when torrent is not
previewable
2018-12-29 18:39:54 +08:00
Chocobo1
2a84345835
Mark constructors as explicit 2018-12-26 12:04:40 +08:00
sledgehammer999
5b62aaa9f8
Mention more translators
Closes #10043
2018-12-25 14:19:07 +02:00
Thomas Piccirello
718f66e6a2 Remove condition for unsupported libtorrent version 2018-12-11 01:37:32 -05:00
Thomas Piccirello
c89e9d4354 Reorder and rename Tracker list context menu option
Adds an ellipses to indicate that the Edit option opens a dialog. Also moves Edit to top of the list to convey action's prominence.
2018-12-11 00:41:18 -05:00
Thomas Piccirello
b481787574 Rename Tracker List columns
"Received" renamed to "Peers", "Peers" renamed to "Leeches".
2018-12-11 00:41:18 -05:00
Mike Tzou
cf9d903ba9
Merge pull request #9541 from Piccirello/webui-file-priority
Set priority for multiple files in one WebAPI request
2018-12-11 13:32:53 +08:00
Thomas Piccirello
57e625494b Update Copyright email address 2018-12-10 23:21:09 -05:00
Thomas Piccirello
f27dc977e9 Replace prio namespace with FilePriority enum class 2018-12-10 23:21:09 -05:00
Mike Tzou
c093561532
Merge pull request #9980 from Chocobo1/opensslVersion
Add OpenSSL version to GUI & stackdump
2018-12-09 15:57:33 +08:00
Chocobo1
f13bcbd772
Add OpenSSL version to GUI & stackdump 2018-12-08 12:46:50 +08:00
Thomas Piccirello
3aeaf6a054 Disallow setting a blank alternative WebUI location 2018-12-07 00:57:59 -05:00
Thomas Piccirello
d05cf47169 Add WebUI Auto TMM options 2018-12-07 00:55:29 -05:00
Mike Tzou
6bb4eb825b
Merge pull request #9942 from Chocobo1/pbkdf2
Do password hashing properly
2018-12-06 16:22:22 +08:00
Mike Tzou
1eef5b6876
Merge pull request #9373 from FranciscoPombal/checking_mem_usage_adv_settings
Add checking_mem_usage option to AdvancedSettings
2018-12-06 16:20:02 +08:00
Mike Tzou
0ab5b8fcba
Merge pull request #9824 from thalieht/style
Convert all foreach() to range-based for()
2018-12-06 16:19:17 +08:00
FranciscoPombal
74be5d9030
Add checking_mem_usage option to AdvancedSettings 2018-12-06 03:10:24 +08:00
Chocobo1
2c8890bd06
Apply PBKDF2 to GUI lock 2018-12-05 13:28:42 +08:00
Chocobo1
05d6a29416
Apply PBKDF2 when storing passwords 2018-12-05 13:28:42 +08:00
thalieht
6a21acbf1a Save option to start minimized in Mac 2018-12-04 11:43:32 +02:00
Chocobo1
297ef52dcb
Fix weekday names translations
Closes #9933.
2018-12-01 20:32:35 +08:00
Chocobo1
0ad831e48a
Fix strings not translated
Closes #9934.
2018-12-01 20:32:34 +08:00
thalieht
1f36b8b89f Combine qAsConst() with copyAsConst() to asConst() 2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555 Convert all foreach() to range-based for() 2018-11-28 23:40:12 +02:00
thalieht
d668a4fe6d Fix coding style for various things 2018-11-28 23:37:35 +02:00
Chocobo1
0339e6ee35
Clean up code 2018-11-27 22:01:27 +08:00
Chocobo1
58be2d4bc2
Put WebUI security related options into a groupbox 2018-11-19 11:05:04 +08:00
Chocobo1
344e47dcfb
Add option for WebUI Host header validation
Closes #9743.
2018-11-19 11:05:04 +08:00
Chocobo1
d866033a8e
Fix divide-by-zero crash
Previously here was using a cheap method to avoid divisor becoming < 0, but from
the crash stacktrace it seems this is not enough, now the divisor is properly
clamped to have 1 as the minimum.
Also it will now display "Unknown" for invalid calculation results.

Closes #9857.
2018-11-18 13:50:23 +08:00
Mike Tzou
9090f2d321
Merge pull request #9832 from thalieht/fieldwidth
Allow qBt to resize the search filter in search job
2018-11-14 03:58:37 +08:00
thalieht
59fcfdc13b Allow resizing search filter in search job
Allow qBt to resize the search filter in search job because it causes
qBt's width to exceed the screen's width for laptop users.
2018-11-13 11:20:29 +02:00
sledgehammer999
ceb4a0d5fe
Change FossHub RSS url for updates
The new RSS format is compatible with our current parser. FossHub will
redirect old URL to the new one so older clients will not be affected.
2018-11-11 18:30:00 +02:00
Mike Tzou
547140ec46
Merge pull request #9822 from Chocobo1/fixCrash
Don't double delete a pointer
2018-11-09 00:11:09 +08:00
Chocobo1
626b9eb380
Don't double delete a pointer
`m_searchFilterAction` is owned by Qt, so we shouldn't delete it
manually.
2018-11-08 21:02:44 +08:00
Mike Tzou
2ce57b97be
Merge pull request #9799 from Chocobo1/removeCheckbox
Remove speed limit checkbox in Options dialog
2018-11-07 13:40:43 +08:00
dzmat
6fa64c81b7
Fix speed graph "high speeds" bug 2018-11-06 15:53:20 +03:00
Chocobo1
266ce1d226
Clean up SpeedLimitDialog class 2018-11-05 11:07:52 +08:00
Chocobo1
3fa5358c3f
Remove speed limit checkbox in Options dialog
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Vladimir Golovnev
dea6b3d7e0
Merge pull request #9562 from dzmat/round_speed_labels
Improve scaling of speed graphs
2018-11-01 09:46:26 +03:00
Vladimir Golovnev
7e36cc746f
Merge pull request #8584 from Piccirello/new-search-api-2
WebUI search API. Closes #2495
2018-10-24 13:13:16 +03:00
dzmat
fabd7e34f5 Improve scaling of speed graphs
Make Y axis scale to fix on predetermined nice looking positions
2018-10-21 16:45:32 +07:00
dzmat
23d924643f Reduce horizontal graphs resolution
Rewrite averaging code and reduce horizontal graphs resolution for
30 minutes and 6 hours graphs to decrease CPU usage.
2018-10-13 18:28:38 +07:00
Vladimir Golovnev
72e148e0f1
Merge pull request #9590 from dzmat/disable_graphs_collection
Implement option for disabling speed graphs
2018-10-12 08:24:33 +03:00
Vladimir Golovnev
305c1fc851
Merge pull request #8980 from silverqx/clear-on-esc
Clear LineEdit on ESC
2018-10-11 17:31:38 +03:00
Stephen Dawkins
d8054f9cb3
Allow to disable downloading REPACK/PROPER matches 2018-10-09 08:14:12 +03:00
dzmat
2d0f0cb372 Allow to disable speed graphs 2018-10-08 23:51:02 +07:00
silverqx
ea404445f6
Clear LineEdit on ESC 2018-10-04 20:01:12 +02:00
Thomas Piccirello
0b6ae68801 Add WebUI search API controller
Closes #2495.
2018-09-30 20:07:27 -04:00
Chocobo1
43fbf8ab3b
Remove default parameter in derived function
When derived function have different default value than base, it might cause
unnecessary confusion, see: https://stackoverflow.com/q/3533589
2018-09-27 00:43:24 +08:00
Chocobo1
66ffb01629
Add include guard to headers 2018-09-26 23:49:33 +08:00
Chocobo1
f26a5c3581
Update Python URLs 2018-09-25 11:46:40 +08:00
Chocobo1
7d808cfc99
Fix asking to install Python
The dialog asking users to install python is borked since the last refactor, this
commit fixes it.
2018-09-25 11:46:39 +08:00
sledgehammer999
bfb1210c43
Merge pull request #9406 from thalieht/preselecttext
Preselect name without extension when renaming files
2018-09-11 14:33:25 +03:00
Vladimir Golovnev
5e35335ad4
Merge pull request #9254 from thalieht/searchStuff
Add a shortcut to download selected torrents from search job
2018-09-10 07:19:02 +03:00
Vladimir Golovnev
d18de18128
Merge pull request #9461 from thalieht/tracker
Show "N/A" if there is no scrape response
2018-09-10 07:14:28 +03:00
thalieht
94613c2fa2 Fix some warnings 2018-09-07 19:40:08 +03:00
thalieht
e2b46f01bb Show "N/A" if there is no scrape
Disambiguates whether the tracker send a response of 0 peers/seeds/downloaded or didn't send one at all.
2018-09-07 19:39:53 +03:00
sledgehammer999
eb9f07bcc6
Save option about tracker favicons under correct key 2018-09-06 02:45:09 +03:00
thalieht
ffc2193df9 Preselect name without extension when renaming files
And preselect the whole string for everything else.
2018-09-05 16:55:42 +03:00
Thomas Piccirello
c10d237f7a Don't disable DHT when using force proxy
Closes #9292
2018-09-02 19:48:03 -04:00
thalieht
ce3e68670d Refactor in searchjob to always color visited entries
Now it colors multiple entries, when visited at once, via the hotkey or
the Download button.
2018-08-31 15:57:07 +03:00
Chocobo1
718b3f0bf5
Reset button text to default
This is to avoid Qt auto-generating code like this:
  `buttonAdd->setText(QStringLiteral(""));`
Which makes no sense and triggers clazy warning (Wclazy-empty-qstringliteral).
2018-08-28 14:14:01 +08:00
Vladimir Golovnev
9fa78c7b50
Merge pull request #9331 from thalieht/seqfirstlast
Allow setting seq & first/last from context menu without metadata
2018-08-22 17:16:44 +03:00
Vladimir Golovnev
93f9b3de8b
Merge pull request #9314 from thalieht/searchregexfilter
Add option to use regexps in the search job's search filter's context menu
2018-08-22 17:15:37 +03:00
Chocobo1
d7aa0819d9
Fix values sorted wrong in "Last Activity" column
I suspect there could be other negative values.
Closes #9012.

Also apply the changes to TR_RATIO_LIMIT, avoiding similar problems.
2018-08-16 11:30:26 +08:00
thalieht
7ed0d13de2 Allow setting seq & first/last from context menu without metadata 2018-08-14 13:58:22 +03:00
thalieht
400eafce2b Rename 2 methods to eliminate ambiguity 2018-08-14 13:40:00 +03:00
thalieht
4dcb0b922e Add regex option in the search filter's context menu
In the search job widget.
2018-08-14 13:38:34 +03:00
Chocobo1
71dcc76a64
Replace png icons with svg 2018-08-14 17:03:14 +08:00
Chocobo1
866408151c
Remove GuiIconProvider::generateDifferentSizes()
Let Qt do the scaling seems to be fine.
2018-08-14 16:48:58 +08:00
sledgehammer999
6c9a4df515
Merge pull request #8538 from thalieht/searchFilter
Add a name filter for search results
2018-08-12 16:44:53 +03:00
sledgehammer999
366239ca7b
Merge pull request #9244 from Couchy/inhibit_sleep_options
Inhibit sleep for running downloads or uploads regardless of network activity
2018-08-12 16:31:01 +03:00
sledgehammer999
a3172590d0
Merge pull request #9255 from thalieht/filterRegex
Add option to use regexps in the transfer list's search filter's context menu
2018-08-12 16:22:00 +03:00
thalieht
2485525896 Add option for regexps in the transferlist search filter's context menu 2018-08-10 12:44:10 +03:00
sledgehammer999
fd30bf7423
Notify users on 1st time close/minimize to tray 2018-08-09 16:48:34 +03:00
Chocobo1
8e1f3ac016
Make ProgramUpdater upgrade to 64-bit qbt when running on 64-bit Windows 2018-08-06 17:36:32 +08:00
Lukas Greib
48cd993c92 Inhibit sleep regardless of activity
"Active torrents" is a somewhat unintuitive concept as a basis for
preventing sleep, as torrents can become active or inactive on the
network at any time. This brings some predictability to the inhibit
sleep option, and will inhibit sleep as long as there are unpaused
downloads or uploads, regardless of network activity.

Closes #1696, #4592, #4655, #7019, #7159, #7452
2018-08-03 09:58:15 -04:00
Chocobo1
9612a75faa
Put temporary files in qbt own temp folder 2018-08-02 17:44:06 +08:00
Chocobo1
e1727c9a6a
Refactor GuiIconProvider::generateDifferentSizes() 2018-08-02 17:44:06 +08:00
Chocobo1
9df67b52b8
Add const to function signature 2018-08-01 01:40:50 +08:00
thalieht
c55daeec38 Set "enter" as shortcut to download the selected torrents in search job 2018-07-29 21:42:21 +03:00
Chocobo1
a70219eea0
Move member variable initialization
Move the initialization from constructor body to member initializer
list.
Remove superfluous initializer.
2018-07-23 13:40:25 +08:00
Chocobo1
56766dc08b
Avoid binding constant reference to returned object
In such cases, it makes no sense doing so.
2018-07-23 13:40:25 +08:00
Chocobo1
0217d5b4c0
Replace single-character string with character literal
Also remove unnecessary dynamic allocation.
2018-07-21 23:26:15 +08:00
Chocobo1
cb687ba3bd
Add options in AddNewTorrentDialog
The new checkboxes are: "Download in sequential order", "Download first
and last pieces first".
2018-07-21 00:36:08 +08:00
Chocobo1
1b406c97da
Revise dialog messages
Using critical dialog is a bit too strong as qbt didn't actually run
into something that fails, so downgrade to warning dialog.
2018-07-17 00:06:16 +08:00
thalieht
ae03ecea21 Add hotkey for toggling focus between the search LineEdits 2018-07-14 09:26:24 +03:00
thalieht
2e9c61c452 Limit the scope of find torrents hotkey in MainWindow
To TransferListWidget because it will interfere with the SearchWidget's focus hotkey
2018-07-14 09:26:24 +03:00
thalieht
df9aa6dc36 Add a name filter for search results
Closes #8226
2018-07-14 09:26:24 +03:00
Vladimir Golovnev (Glassez)
088273a767
Download favicon using appropriate protocol
Some trackers use UDP protocol but we can't download its favicon
using UDP. Just try to download it using HTTP.
2018-07-13 13:13:53 +03:00
Thomas Piccirello
b2ffd6e03b Instantiate SearchPluginManager with other application components 2018-07-11 20:11:33 -04:00
sledgehammer999
de8050701d
Revert email address changes in copyright notices 2018-07-10 00:37:44 +03:00
tjjh89017
670a8e27af
Add async io threads option to AdvancedSettings 2018-07-08 22:58:35 +08:00
Chocobo1
d61435e4bf
Allow save resume interval to be disabled
Also raise the allowable upper limit
2018-07-05 13:22:20 +08:00
Chocobo1
a0348c46fc
Remove unnecessary resources inclusion 2018-07-05 02:34:04 +08:00
thalieht
456270bbb1 Delete several unused #include 2018-07-03 08:38:32 +03:00
thalieht
eb508d67ef Fix coding style 2018-07-03 08:38:32 +03:00
thalieht
6d4434ad66 Convert the names used in ui and c++ files from snake_case to camelCase 2018-07-03 08:38:32 +03:00
Mike Tzou
97b3761dbf
Merge pull request #9094 from Chocobo1/recursive
Fix crash in Recursive Download dialog
2018-07-02 21:25:47 +08:00
Vladimir Golovnev
b0afa33e22
Merge pull request #9125 from glassez/downloader
Implement "Sequential downloading" feature. Closes #6835
2018-07-02 15:24:58 +03:00
Vladimir Golovnev (Glassez)
112a9bcfa2
Use new DownloadManager interface 2018-06-29 15:48:17 +03:00
Chocobo1
6bf3f1d0b8
Add checkbox for recursive download dialog
Also group similar options together.
2018-06-26 23:26:45 +08:00
Chocobo1
78d7cc0570
Work around crash when procesing recursive download
The messagebox is modal and exec() it makes it generates a new local
event loop, however the new local event loop will continue to process
libtorrent events (in Session::readAlerts()), at the time exec()
returns, the original libt::alert pointers are lost and resume
processing alerts will cause the crash.
One solution is to make the messagebox use show() and avoid exec().

Closes #9086.
2018-06-26 23:26:23 +08:00
Chocobo1
3e6c8a05dd
Reduce queries to python version
Instead of doing at least 2 queries for python infos, now requires only
1 query (in ideal condition), and the result is cached.
2018-06-24 19:41:44 +08:00
Chocobo1
51e82762c5
Move related functions to Utils::Python 2018-06-24 06:21:15 +08:00
thalieht
d34ddb2e3c Change file names and classes names to match them 2018-06-15 20:12:59 +03:00
Vladimir Golovnev
0433d5f074
Merge pull request #9042 from thalieht/codingstyle
Fix coding style final
2018-06-13 12:41:56 +03:00
Mike Tzou
4100282673
Merge pull request #9073 from Chocobo1/apple
Replace deprecated function on macOS
2018-06-12 12:19:54 +08:00
thalieht
4022799881 Fix coding style 2018-06-12 07:17:05 +03:00
Mike Tzou
c8c7ed4a2e
Merge pull request #9053 from Chocobo1/optionWheel
Disable certain mouse wheel events in Options dialog
2018-06-10 13:06:04 +08:00
Chocobo1
0073f2c8ab
Replace deprecated function on macOS
Closes #8993.
2018-06-09 13:49:20 +08:00
Mike Tzou
da87c2d9ae
Merge pull request #9060 from Chocobo1/preinc
Replace post-increment with pre-increment
2018-06-09 12:40:30 +08:00
Chocobo1
5ddbf9bba9
Replace post-increment with pre-increment
And post-decrement with pre-decrement.
2018-06-08 08:44:06 +08:00
Eugene Shalygin
04aea413ba
Merge pull request #9055 from zeule/cmake
Update CMake build scripts
2018-06-07 21:31:09 +02:00
Chocobo1
96819f3798
Disable certain mouse wheel events in Options dialog
The mouse wheel events for QComboBox & QSpinBox widgets in Options
dialog are filtered out.
2018-06-06 15:17:49 +08:00
Eugene Shalygin
fa770871e9 Refactor CMake build scripts
1. Use FeatureSummary module to show configuration results.

2. Invert option()/find_package() relationship: instead of
calling find_package(... REQUIRED) when option is set, rely on optional
find package call and PackageName_FOUND variable.

3. Refactor handling options that result in simple preprocessor defines
(actually copy the snippet from libtorrent) so that everything is done
in a single function call.

4. Populate target properties in order to get rid of
include_directories() calls.
2018-06-05 11:39:11 +02:00
Chocobo1
0b050e2a30
Remove duplicate private sections in class
And group related methods & variables together.
2018-06-05 12:22:32 +08:00
Mike Tzou
731865427e
Merge pull request #9008 from Chocobo1/changelog
Add changelog URL link in updater
2018-06-04 20:51:18 +08:00
Vladimir Golovnev
e61c882fee
Merge pull request #9015 from thalieht/style
Fix coding style
2018-06-03 14:48:04 +03:00
thalieht
356d6a6589 Fix coding style 2018-05-31 19:45:09 +03:00
Chocobo1
09f759355f
Replace QRegExp with QRegularExpression
Revise `static` keyword usage, static is added to frequently used
instances.
2018-05-31 22:56:49 +08:00
Chocobo1
c22e6b4502
Cleanup header include order
Add missing header.
Cleanup license.
2018-05-31 22:56:25 +08:00
Chocobo1
68c6ddf05d
Add changelog link in program updater
Closes #8997.
2018-05-30 13:54:15 +08:00
Chocobo1
ee202b721d
Refactor function 2018-05-29 09:36:08 +08:00
Chocobo1
727800ef2c
Improve DownloadFromURL behavior
URL should be considered case sensitive.
2018-05-29 09:36:08 +08:00
Chocobo1
34ed0cba08
Move DownloadFromURLDialog to its own file
Simplify code, no functionality changes.
Remove debug messages.
Capitalize dialog name.
Capitalize class name.
Update license text.
2018-05-29 09:36:03 +08:00
Chocobo1
817b7bb4f2
Add missing header include 2018-05-29 02:07:55 +08:00
Mike Tzou
4a51f14328
Merge pull request #8967 from Chocobo1/protect
Add options to control WebUI security measures
2018-05-28 14:21:53 +08:00
sledgehammer999
a1a6a7ef56
Merge pull request #8868 from Chocobo1/macos
Fix GUI scaling factor on macOS
2018-05-27 17:39:00 +03:00
Chocobo1
4751b79f42
Initialize variables properly
The warnings are emitted when compiling on msys2, mingw

The warning was:
gui/torrentcontentmodel.cpp:135:33: warning: missing initializer for
member '_SHFILEINFOW::iIcon' [-Wmissing-field-initializers]

..\..\qBittorrent\src\app\stacktrace_win.h:141:30: warning: missing
initializer for member '_IMAGEHLP_LINE64::Key'
[-Wmissing-field-initializers]
2018-05-25 21:22:31 +08:00
Mike Tzou
84df2794dc
Merge pull request #8944 from Chocobo1/literal
Make use of QStringLiteral
2018-05-23 13:23:41 +08:00
sledgehammer999
9df6ecafd0
Merge pull request #8961 from sledgehammer999/stats_dialog
Fix Stats dialog size
2018-05-22 20:24:50 +03:00
Chocobo1
9eeef0be97
Add option to control CSRF protection
Some users are using WebUI with simple port-forwarding from their router,
providing an option to control the protection will save them from setting up an
non-trival web proxy.
Closes #7274.
2018-05-22 12:57:03 +08:00
Chocobo1
bad4d94f77
Add option to control WebUI clickjacking protection
Some users actually want embedding WebUI into their custom build iframe.
Closes #7370.
2018-05-22 01:07:25 +08:00
Vladimir Golovnev
0aee1cf7d0
Merge pull request #8945 from glassez/rss-rule
Improve code of  RSS auto-downloading rule. Closes #8933
2018-05-21 08:04:12 +03:00
sledgehammer999
b4c1a949cc
Fix Stats dialog size
Partially reverts e31ec20ec4.
Closes #8870.
2018-05-20 23:35:20 +03:00
Vladimir Golovnev (Glassez)
3be945a401
Add last used save path to the front of history 2018-05-19 19:43:01 +03:00
Chocobo1
eb72b9ca7d
Simplify the saving & loading of a setting
Remove excessive usage of constexpr.
2018-05-19 20:56:43 +08:00
Vladimir Golovnev (Glassez)
53b9bcaaac
Place "Use Smart Episode Filter" more correctly 2018-05-19 14:52:38 +03:00
Vladimir Golovnev (Glassez)
844f76c2ca
Make "Ignoring days" to behave like other filters
This prevents confusing in GUI when it shows matched RSS
articles which be really ignored by the rule.
2018-05-19 14:52:24 +03:00
Chocobo1
ceaf755ac6
Make use of QStringLiteral
Only changed instances that are initialized at program start.
2018-05-18 02:14:49 +08:00
Vladimir Golovnev
e2da7928b1
Merge pull request #8922 from glassez/save-path
Add option to remember last used save path. Closes #7323
2018-05-15 19:30:09 +03:00
Vladimir Golovnev (Glassez)
71e5a40857
Add option to remember last used save path
Replace in "Add new torrent" dialog confusing "Set as default save path" option
with "Remember last used save path" option that affects only selected value in
"Save path" combo box.
Closes #7323.
2018-05-15 10:38:24 +03:00
Mike Tzou
a0f200be0d
Merge pull request #8894 from Chocobo1/tr
Make strings translatable
2018-05-14 12:53:40 +08:00
sledgehammer999
8a99e29122
Merge pull request #8716 from sledgehammer999/move_progress
Move and recheck progress
2018-05-13 13:02:03 +03:00
sledgehammer999
565ffa7d1e
Add 'Moving' state for torrents being relocated/moved
This is another indication to the user that something is happening
behind the scenes.
Uses the same icon/color as "Checking" status.
Torrents in the `Moving` state are considered as "Active". This should
prevent accidental program exit from the user and inhibit system sleep.
2018-05-12 20:49:33 +03:00
Chocobo1
c26ff40029
Make strings translatable
Closes #8866.
2018-05-11 19:29:02 +08:00
thalieht
4cfa163bbd Use qt5 syntax for a few remaining SLOT() 2018-05-11 08:19:41 +03:00
thalieht
20ca90800d Fix coding style 2018-05-09 17:06:22 +03:00
thalieht
586e1a0830 Move some connect() from propertieswidget to their corresponding widget 2018-05-09 16:08:22 +03:00
thalieht
6b4455e13d Use qt5 connect() syntax 2018-05-09 16:08:22 +03:00
Chocobo1
4d04af4043
Replace raster qbt logo with vector version
Add helper function for svg icons.
2018-05-09 16:33:17 +08:00
Chocobo1
f934042a98
Fix GUI scaling factor on macOS
macOS seems have an unique way to handle widget size, that is, it doesn't require
application to resize widgets manually, Qt will handle the resize job
automatically.

Closes #8841.
2018-05-09 16:33:14 +08:00
Mike Tzou
99a1343b9d
Merge pull request #8862 from Chocobo1/cleanup
Code cleanups
2018-05-09 14:33:49 +08:00
Vladimir Golovnev
3a0e5e51df
Merge pull request #8761 from thalieht/nullptr
Replace the zeroing of pointers with nullptr
2018-05-08 17:10:37 +03:00
Chocobo1
defba23d61
Refactor code
Remove forward declarations of Qt types.
Fix header include order.
2018-05-08 12:18:18 +08:00
Chocobo1
9f809114f0
Really fix translation in fspathedit
QT_TRANSLATE_NOOP3 is a macro, so we cannot use a runtime string for the context
argument.
Fix up 1d778676cd.
2018-05-05 21:09:47 +08:00
Mike Tzou
d8c14ffe97
Merge pull request #8814 from Chocobo1/tr_fix
Fix tr() related issues
2018-05-05 13:48:09 +08:00
sledgehammer999
90bb67c654
Add RSS/Log widgets to the QTabWidget on macOS
Fixes commit a468c84b30
2018-05-04 19:56:42 +03:00
Chocobo1
e423314ac2
Work around false-positive warning from lupdate
In short, lupdate will get confused when seeing `template <class T>`,
see: QTBUG-55478
2018-05-01 23:28:34 +08:00
Chocobo1
c61f641613
Fix untranslated string
Closes #8809.
2018-05-01 11:49:10 +08:00
Chocobo1
8b575484e6
Fix path separator in log messages 2018-04-24 01:02:54 +08:00
Mike Tzou
0dec7b9f4f
Merge pull request #8742 from tostercx/master
Add "Preserve file order" option to torrent creator. Closes #5652
2018-04-22 23:33:25 +08:00
toster
c4625f50a8 Pass isAlignmentOptimized flag to piece size calculation 2018-04-20 14:31:20 +03:00
thalieht
3e4099fe5b Replace the zeroing of pointers with nullptr 2018-04-15 13:06:31 +03:00
toster
e538eae726 Make alignment optimization optional
Disabling alignment optimization allows preserving file order in torrent
files and closes #5652
2018-04-14 06:46:41 +03:00
Chocobo1
898239a42e
Fix renaming completed files
Check whether the file is already downloaded before appending QB_EXT to
filename.

Closes #8039.
2018-04-12 14:13:59 +08:00
sledgehammer999
d997d887e5
Merge pull request #8650 from luis-pereira/fix-invalid-iterator-crash
Fix crashes due to invalid iterator use
2018-04-10 16:18:44 +03:00
Luís Pereira
758c70283f
Fix crashes due to invalid iterator use
Although the iterators are constant we are indirectly changing them.
Introduced by commit ac42ccb5e4.
Closes #8633
2018-04-09 23:40:08 +03:00
Chocobo1
59e6757242
Avoid showing an empty row in AdvancedSettings
Fixup 543cbc6d1c.
2018-04-05 21:34:07 +08:00
Chocobo1
37ea01bd44
Use lightweight printf instead of iostream
Using iostream usually adds a lot of other operators (<<, endl), whereas
*printf takes only 1 function call.

Also use qUtf8Printable whenever possible.
2018-03-31 03:21:53 +08:00
Vladimir Golovnev
a5294e1e08
Merge pull request #8558 from luis-pereira/containter-anti-pattern
Don't create temporary containers just to iterate over them
2018-03-19 13:06:01 +03:00
Luís Pereira
ac42ccb5e4
Don't create temporary containers just to iterate over them
Stops temporary containers being created needlessly due to API misuse.
For example, it’s common for developers to assume QHash::values() and
QHash::keys() are free and abuse them, failing to realize their
implementation internally actually iterates the whole container, allocates
memory, and fills a new QList.

Added a removeIf generic algorithm, similar to std ones. We can't use std
algorithms with Qt dictionaries because Qt iterators have different
behavior from the std ones.

Found using clazy.
2018-03-18 16:22:12 +03:00
Mike Tzou
68ca95faf0
Merge pull request #8603 from Chocobo1/typo
Fix typo
2018-03-17 00:49:41 +08:00
Mike Tzou
1f28122428
Merge pull request #8595 from Chocobo1/runExt
Add Tags parameter to "Run External Program"
2018-03-16 19:37:34 +08:00
Chocobo1
423511765a
Fix typo 2018-03-14 23:37:08 +08:00
Chocobo1
88881de8c6
Add Tags parameter to "Run External Program"
Closes #8586.
Also sort headers.
2018-03-14 10:12:32 +08:00
Chocobo1
690c439ae6
Properly align text label 2018-03-14 00:35:20 +08:00
Mike Tzou
e78b5202bc
Merge pull request #8585 from Chocobo1/lint
Fix compiler/clazy warnings
2018-03-13 22:36:10 +08:00
Vladimir Golovnev
c9be1d0a19
Merge pull request #8494 from paolo-sz/master
Fix for "Content" panel messed up
2018-03-13 16:54:05 +03:00
Vladimir Golovnev
3348eef423
Merge pull request #8488 from thalieht/fix
Move suffix-labels inside the corresponding spinboxes
2018-03-12 16:58:05 +03:00
Chocobo1
a468c84b30
Fix warnings from unused variables 2018-03-12 14:36:28 +08:00
Thomas Piccirello
7278625f53 Calculate supported categories based on selected plugin 2018-03-12 01:33:45 -04:00
Chocobo1
08a2439f46
Check directly if container is empty or not 2018-03-11 23:12:16 +08:00
Chocobo1
6767487e40
Remove unused variable 2018-03-11 22:31:17 +08:00
thalieht
2eea57e609 Use spinbox suffix to display time unit 2018-03-11 12:08:00 +02:00
thalieht
0b185e347b Use spinbox suffix to display rate unit 2018-03-11 12:07:38 +02:00
thalieht
1e1db31ab5 Use unique layout names 2018-03-11 12:07:24 +02:00
paolo-sz
d4e2b21534 Fix Content widget misbehavior
Starting from QT 5.10.1 Content widget is messed up and its settings are
lost while restarting.
Setting StretchLastSection property to false seems to solve the issue.
(Closes #8439).
2018-03-10 18:56:18 +01:00
Chocobo1
fdf3ebbb6c
Remove usage of deprecated functions
Also use proper type for storing date/time data
2018-03-09 19:20:58 +08:00
Chocobo1
a3d9e457a0
Add context parameter in connect() 2018-03-09 13:44:17 +08:00
Chocobo1
ffb5c0635e
Remove unused slot declaration for function 2018-03-09 01:50:23 +08:00
Chocobo1
0457fd260e
Avoid temporary QString allocations
This fixes clazy warning: Use multi-arg instead [-Wclazy-qstring-arg]
2018-03-07 20:06:00 +08:00
Chocobo1
c60b7b213e
Add missing 'override' specifier
This fixes clang warning:
'notify' overrides a member function but is not marked 'override'
[-Winconsistent-missing-override]
2018-03-07 20:05:52 +08:00
Chocobo1
20c4b0ee0c
Use original scheme when downloading favicons
Previously was always using http, now we only drop back to http when
scheme is absent
2018-03-03 12:53:27 +08:00
Chocobo1
3df4a7ac2e
Use https for documentation links 2018-03-03 12:43:59 +08:00
Mike Tzou
38dc6ab8cf
Merge pull request #8441 from Chocobo1/runExt
Revert back to QLineEdit for "Run external program". Closes #7800.
2018-03-01 13:23:42 +08:00
Vladimir Golovnev
b26eb3d146
Merge pull request #8373 from glassez/search
Improve Search handling
2018-02-28 10:46:33 +03:00
Mike Tzou
050af8a793
Merge pull request #7894 from Piccirello/auto-management
Disable options when Force Proxy is enabled
2018-02-25 01:44:58 +08:00
Vladimir Golovnev
6207855f3b
Merge pull request #8372 from thalieht/inactiverate
Expose the libtorrent fields for "dont_count_slow_torrents" to GUI.
Closes #5713.
2018-02-24 14:13:39 +03:00
Vladimir Golovnev (Glassez)
279bce2014
Make SearchManager singleton 2018-02-23 20:26:32 +03:00
Vladimir Golovnev (Glassez)
f3d370870d
Improve Search handling
Legacy SearchEngine class really has three roles:
  1. Manage search plugins,
  2. Handle the search job, and
  3. Handle the download of the torrent file using the search plugin.
Now it is splitted into 3 classes: SearchManager, SearchHandler and
SearchDownloadHandler.
Search GUI is also improved.
2018-02-23 20:15:25 +03:00
Vladimir Golovnev
5c2f698cb4
Merge pull request #8325 from luis-pereira/prevent-c++11-range-loop-detach
Prevent possible c++11 range-loop container detach
2018-02-22 16:28:04 +03:00
Chocobo1
aba23f67a0
Revert back to QLineEdit for "Run external program". Closes #7800
1. Using FileSystemPathEdit is not entirely correct, as it only always
shows false warnings when parameters are present.
2. FileSystemPathEdit::selectedPath() modifies the path to unix format,
in this specific case, we need to faithfully execute what user inputted.
3. Given the above it is reasonable to revert back to QLineEdit, as it
is just sufficient in functionality and doesn't modifiy the inputs.
2018-02-21 10:16:32 +08:00
Luís Pereira
1a913c502b Prevent possible c++11 range-loop container detach
Explicit or implicit calls to begin() and end() cause a non-const
container to detach from shared data, ie. to perform a deep-copy to gain
a unique copy of the data.
That can be a expensive although unneeded operation.

In order to assist the developer a copyAsConst function is added.
copyAsConst returns a const copy of the object.

For lvalues just use qAsConst. It's only available on Qt 5.7.0. But we
added also for earlier versions. The developer can always use qAsConst.

Intended uses:

    QString s = ...;
    for (const auto &ch : qAsConst(s))
          process(ch);

    for (const auto &ch : copyAsConst(funcReturningQString()))
        process(ch);
2018-02-20 19:28:51 +00:00
Thomas Piccirello
fccdc7ebdc Remove extra space 2018-02-20 02:22:40 -05:00
Thomas Piccirello
ba331436fa Add More Information link 2018-02-20 02:16:16 -05:00
Thomas Piccirello
afd4069eb4 Disable options when force proxy is enabled 2018-02-20 02:16:15 -05:00
vit9696
dac2ab5409
Fix compilation with Qt 5.11 on macOS 2018-02-19 22:39:25 +03:00
Luís Pereira
ea1b0b26b1 Don't implicitly cast iterator to const_iterator
It prevents detachments:
To illustrate:

QMap<QString, QString> map;
/* code compiles and works fine but find() returns the non-const
   QMap::iterator that detaches!
*/
QMap<QString, QString>::const_iterator it = map.find("girish");

but also some subtle bugs:

QHash<int, int> wrong;
if (wrong.find(1) == wrong.cend()) {
    qDebug() << "Not found";
} else {
    /* find() detached the container before cend() was called, so it
       prints "Found"
    */
    qDebug() << "Found";
}

QHash<int, int> right;
if (right.constFind(1) == right.cend()) {
    qDebug() << "Not found"; // This is correct now !
} else {
    qDebug() << "Found";
}

Enforced by QT_STRICT_ITERATORS definition.
2018-02-17 17:02:52 +00:00
Vladimir Golovnev
98a1c111b9
Merge pull request #5287 from elFarto/master
Implement RSS Smart Filter
2018-02-16 13:43:38 +03:00
Mike Tzou
47048d8410
Merge pull request #8349 from Chocobo1/stats
Improve stats dialog
2018-02-16 15:31:01 +08:00
Mike Tzou
882fa7ecd4
Merge pull request #8336 from Chocobo1/coalesce
Add "Coalesce reads & writes" checkbox in advanced options
2018-02-16 15:30:17 +08:00
Vladimir Golovnev
d07ece53e6
Merge pull request #7610 from glassez/webapi2
Redesign Web API
2018-02-16 10:09:35 +03:00
Vladimir Golovnev
afd2f6ba14
Merge pull request #8344 from FranciscoPombal/master
Fixed typo in function name isSplashScreenDisabled()
2018-02-16 09:55:37 +03:00
Luís Pereira
44e4b5d238 Don't use qDeleteAll() on temporaries
qDeleteAll() is being used on an unnecessary temporary container created
by QHash::values().
Using qDeleteAll(mycontainer) instead.
2018-02-12 16:36:03 +00:00
thalieht
f50b4724a6 Expose the libtorrent fields for "dont_count_slow_torrents" to GUI:
inactive_down_rate
inactive_up_rate
auto_manage_startup
2018-02-08 14:14:39 +02:00
Stephen Dawkins
48cbccff1e Made smart episode filter regular expression configurable 2018-02-05 19:23:11 +00:00
Chocobo1
e31ec20ec4
Clarify some terms in stats dialog
Reorder list
2018-02-02 23:41:42 +08:00
Chocobo1
b9ec216aa5
Redefine CacheStatus.readRatio field.
Now it is defined as:
CacheStatus.readRatio = (blocks read from cache) / (blocks read from disk + blocks read from cache)
The 2 variables in denominator are counted separately and the formula before this change doesn't really make sense

Add percentage sign to "Read cache hits" stats
Also remove redundant header include
2018-02-02 23:41:42 +08:00
FranciscoPombal
2ac3004762 Fixed typo in function name isSplashScreenDisabled() 2018-01-31 12:05:41 +00:00
Chocobo1
543cbc6d1c
Add "Coalesce reads & writes" checkbox in advanced options
The setting is defaulted to ON for Windows. Closes #8295.
2018-01-30 22:46:14 +08:00
Vladimir Golovnev (Glassez)
27d8dbf13b
Redesign Web API
Normalize Web API method names.
Allow to use alternative Web UI.
Switch Web API version to standard form (i.e. "2.0").
Improve Web UI translation code.
Retranslate changed files.
Add Web API for RSS subsystem.
2018-01-28 19:16:24 +03:00
sledgehammer999
e487b31877
Merge pull request #8319 from sledgehammer999/saner_log_settings
Set default file log size to 65 KiB and delete backup logs older than…
2018-01-27 15:26:03 +02:00
Stephen Dawkins
2845a791d0 Initial implementation of Smart Filter feature 2018-01-27 09:14:36 +00:00
sledgehammer999
024df8c53f
Set default file log size to 65 KiB and delete backup logs older than 1 month. 2018-01-27 01:17:50 +02:00
Vladimir Golovnev (Glassez)
69df8174b9
Allow to load TorrentInfo from data buffer 2018-01-23 11:08:32 +03:00
Vladimir Golovnev
0a45fc9ffe
Merge pull request #7990 from Piccirello/subnet-whitelist-refactor
Refactor ip subnet whitelist
2018-01-23 10:03:00 +03:00
sledgehammer999
53cc8e1115
Revert "Remove examples from gpl.html. Closes #7749."
The GPL folks are a bit overzealous. See https://www.gnu.org/licenses/gpl-faq.html#GPLOmitPreamble

This reverts commit 5cf4f00824.
2018-01-18 16:25:38 +02:00
Tom Piccirello
e6a1b72354 Only add search separators as needed 2018-01-16 00:22:51 -05:00
Mike Tzou
e48b97466c
Merge pull request #8199 from winneon/reannounce
transferlist: added a force reannounce option
2018-01-10 18:48:41 +08:00
Chocobo1
5c50dba9e1
Torrent creator: raise maximum piece size to 32 MiB 2018-01-09 13:04:44 +08:00
Chocobo1
fb698896c9
Fix translation context.
Partially addresses #8220.

Also sort include headers
2018-01-07 23:01:22 +08:00
sledgehammer999
95c32221a2
Update copyright year. 2018-01-06 02:23:09 +02:00
Chocobo1
1d778676cd
Fix translation context. Closes #8211. 2018-01-05 12:07:50 +08:00
Jesse Bryan
e887b3106f transferlist: added a force reannounce option. closes #6448. 2018-01-03 16:48:31 -06:00
Mike Tzou
a73c4d57b1
Merge pull request #8136 from Chocobo1/pri
Sort filename lists in .pri files
2018-01-03 23:53:50 +08:00
sledgehammer999
13f69a2245
Fix constant status of '[F] Downloading'. Closes #7628. 2018-01-02 18:09:48 +02:00
Chocobo1
ec337a8a84
Sort filename lists in .pri files 2017-12-31 11:53:45 +08:00
Mike Tzou
267362a7a0
Merge pull request #7876 from Chocobo1/optionIcons
Fix gui issues on high DPI monitor
2017-12-31 11:42:55 +08:00
Thomas Piccirello
ddd6c82dd7 Use https for www.qbittorrent.org 2017-12-26 18:22:03 -05:00
Chocobo1
c2c0dd2717
Fix column size too narrow on resize
Instead of giving a value, just resize to the content size
2017-12-24 21:54:56 +08:00
Chocobo1
27cf98a962
Resize dialog size on high DPI monitors 2017-12-24 21:54:56 +08:00
Chocobo1
aaaa67050c
Fix gui issues on high DPI monitor
Fix LineEdit widget size issues
Up-scale the icons on statusbar
Up-scale the icons in options dialog. Closes #7729.
Fix small icons in cookie manager
Fix progress bar height
Fix small icons in confirm delete dialog
Fix small icons in options dialog
Fix small images in about dialog
2017-12-24 21:47:46 +08:00
Chocobo1
52ae118e3c
Tweak spacing 2017-12-24 21:47:46 +08:00
Chocobo1
cb929f7e59
Cleanup
Use Qt5 connect syntax
Reorder include headers
2017-12-24 21:47:44 +08:00
sledgehammer999
0a35adbdba
Merge pull request #8087 from sledgehammer999/fix_flag_sorting
Fix sorting of country flags column in Peers tab.
2017-12-23 19:15:44 +02:00
sledgehammer999
38d68d9d97
Merge pull request #8103 from glassez/fix-8094
Fix RSS rule updated when deleting. Closes #8094
2017-12-23 19:09:59 +02:00
sledgehammer999
8494c6c5d4
Merge pull request #8003 from Chocobo1/fileicon
Use standard folder icon for open file behavior on Windows
2017-12-23 19:09:05 +02:00
sledgehammer999
cbfdb7df56
Merge pull request #8033 from vit9696/cmdw
Fix CMD+W not closing the main window
2017-12-23 19:07:51 +02:00
sledgehammer999
ea44923cce
Merge pull request #8032 from vit9696/fopen
Fix torrent file selection in Finder on mac
2017-12-23 19:03:33 +02:00
Vladimir Golovnev (Glassez)
e75f8603b0
Fix RSS rule updated when deleting
Closes #8094
2017-12-23 16:25:09 +03:00
sledgehammer999
99abc21dab
Simplify sorting code. 2017-12-21 15:26:38 +02:00
sledgehammer999
5156399c68
Fix sorting of country flags column in Peers tab. 2017-12-21 15:21:53 +02:00
Mike Tzou
c8a5ef8c5d
Merge pull request #7985 from Chocobo1/source
Add source field in Torrent creator
2017-12-21 20:26:38 +08:00
vit9696
ed154d35ba Fix Finder reveal in preview and torrent contents 2017-12-17 02:16:36 +03:00
vit9696
ff7e5da6de Fix cmd+w not closing the main window on macOS 2017-12-13 13:30:40 +03:00
vit9696
d7fa5b6b6b Put macOS specific functions to MacUtils namespace 2017-12-12 20:53:20 +03:00
vit9696
d57bd62add Fix torrent file selection in Finder on mac 2017-12-12 20:53:20 +03:00
Chocobo1
8dcf326576
Add source field in Torrent creator. Closes #7965.
This field is often used for cross-seeding between (private) trackers.
2017-12-09 00:39:50 +08:00
Chocobo1
c5d99a12f3
Use standard folder icon for open file behavior on Windows. Closes #7880. 2017-12-08 09:15:44 +08:00
Thomas Piccirello
d184bd8c82 Perform ip string validation inside setWebUiAuthSubnetWhitelist 2017-12-06 02:05:33 -05:00
Thomas Piccirello
98a2dedb32 Separate subnet whitelist options into two lines 2017-12-06 02:05:32 -05:00
Chocobo1
c405cb2f1c
Add struct TorrentCreatorParams for passing parameters
Filter out continuous newlines in Trackers field
Avoid adding empty url seed entries

Cleanup:
  Replace boost::bind
  Add const
  Use nullptr
  Use QString::SkipEmptyParts
  Rename variables
  Throw proper exception type
2017-12-06 01:56:36 +08:00
sledgehammer999
5ea100352e
Merge pull request #7958 from Chocobo1/fixsort
Fix crash in #7952
2017-12-04 22:58:22 +02:00
Chocobo1
86c5a8df75
Partial revert eac8838dc2. Fixes #7952.
mapFromSource() didn't work as expected, when used in lessThan(), it sometimes
returns an invalid QModelIndex.
A crash is observed when filtering source model via filterAcceptsRow() in #7952,
the crash is due to endless recursive of filterAcceptsRow() & lessThan() calling
each other and mapFromSource() is the culprit of it.
2017-12-04 17:40:44 +08:00
sledgehammer999
c9720cad81
Merge pull request #7915 from Chocobo1/dragndrop
Allow to drag-n-drop URLs into mainwindow to initiate download
2017-12-02 20:35:47 +02:00
Mike Tzou
eac8838dc2
[GUI] Implement stable sort (#7703)
* NaturalCompare now returns compare result instead of "less than" result
* Change to stable sort in GUI components
* Add Utils::String::naturalLessThan() helper function
* Use Qt::CaseSensitivity type
2017-11-30 17:10:30 +08:00
Mike Tzou
74d281526b
Merge pull request #7647 from thalieht/style
Coding style for many files
2017-11-30 17:09:18 +08:00
Chocobo1
b9339bb727
Allow to drag-n-drop URLs into mainwindow to initiate download
Fix issue: https://github.com/qbittorrent/qBittorrent/issues/7785#issuecomment-347092418
Minor refactor
2017-11-27 16:45:55 +08:00
Vladimir Golovnev
a7da714b13
Merge pull request #7832 from glassez/rss-import
Implement Import/Export RSS rules. Closes #7721
2017-11-25 10:35:24 +03:00
Vladimir Golovnev (Glassez)
916cfcdb03
Implement Import/Export RSS rules in JSON format 2017-11-24 21:20:44 +03:00
Vladimir Golovnev (Glassez)
b8fc415870
Implement Import/Export RSS rules in legacy format 2017-11-24 16:19:16 +03:00
sledgehammer999
99341409f4
Remove examples from gpl.html. Closes #7749. 2017-11-24 02:03:29 +02:00
sledgehammer999
a38730eb9e
Merge pull request #7792 from Chocobo1/creator2
Fix crash when aborting a torrent creation process
2017-11-22 00:41:26 +02:00
sledgehammer999
1a9e650936
Merge pull request #7782 from Chocobo1/utf8
Remove superfluous QString::fromUtf8()
2017-11-22 00:40:51 +02:00
Chocobo1
27090f0cfb
Remove superfluous QString::fromUtf8() 2017-11-21 22:48:00 +08:00
Chocobo1
c3de2310c5
Avoid double delete on close 2017-11-21 18:11:28 +08:00
Chocobo1
b9478e0f00
Use Qt5 connect syntax 2017-11-21 18:11:28 +08:00
Chocobo1
94aeac992c
Allow drag-n-drop magnet links to mainwindow. Closes #7742. 2017-11-21 14:19:34 +08:00
thalieht
ae1634623e Coding style for many files 2017-11-20 23:29:59 +02:00
Vladimir Golovnev
f41cb8089d
Merge pull request #6779 from Piccirello/disable-web-auth
Add ip subnet whitelist for bypassing webui auth
2017-11-20 21:52:33 +03:00
sledgehammer999
9db1f3baca
Merge pull request #6484 from sledgehammer999/new_logo
Change qbittorrent logo. Issue #6467.
2017-11-19 19:15:50 +02:00
Eugene Shalygin
08755a211b
Merge pull request #7596 from evsh/path-history-items
Add option to tune download history list length. Closes #4043.
2017-11-10 12:23:40 +01:00
Thomas Piccirello
0de2f1776e Remove duplicate header 2017-11-08 22:39:49 -05:00
Thomas Piccirello
da0db92b9f Enable preferences Apply button when ip banlist is modified 2017-11-08 22:39:49 -05:00
Thomas Piccirello
95bf63330e Add ip subnet whitelist for bypassing webui auth 2017-11-08 22:39:49 -05:00
sledgehammer999
3a5c0d9818
Allow to specify if announcing to all tiers is desired. 2017-10-30 23:27:28 +02:00
sledgehammer999
2194a05e60
Merge pull request #7652 from Chocobo1/aboutExtLink
Open links in browser. Closes #7651.
2017-10-30 18:06:34 +02:00
sledgehammer999
09cb95d3da
Use the SVG for the tray icon. 2017-10-30 02:41:23 +02:00
sledgehammer999
5157fc201c
Add Turkish translator in about page. 2017-10-30 00:32:44 +02:00
Chocobo1
492ea5bceb
Open links in browser. Closes #7651. 2017-10-28 14:51:20 +08:00
Chocobo1
fc0628d35b
Allow SMTP sender to be set. Closes #7575. 2017-10-26 17:57:32 +08:00
Eugene Shalygin
1fed324f91 Add option to tune download history list length. Closes #4043. 2017-10-24 12:56:05 +02:00
Eugene Shalygin
e4771ba508 Add maxVisibleItems combo box property to FileSystemPathComboEdit. 2017-10-24 12:56:04 +02:00
sledgehammer999
2956b28a32
Mention more translators in the about page after their request. 2017-10-24 03:32:57 +03:00
sledgehammer999
50471ec8c8
String fixes and optimizations mentioned by translators on Transifex. 2017-10-24 03:32:56 +03:00
sledgehammer999
52df71ad3a
Use svg icons for the country flags.
Closes #6223.
2017-10-23 01:23:45 +03:00
Mike Tzou
9600e7f5ad Merge pull request #7573 from fmatthew5876/config_webui_ip
Add WebUi\Address config option
2017-10-22 14:18:08 +08:00
Matthew Fioravante
8cd243b06b Add WebUi\Address config option 2017-10-21 09:32:30 -04:00
Vladimir Golovnev
c72fb92318 Merge pull request #7529 from dzmat/speedwidget_qtconcurrent_removal
Excess QtConcurrent usage removal
2017-10-20 10:32:27 +03:00
scootergrisen
8400d855de Add me for danish 2017-10-16 22:14:10 +02:00
dzmat
9d0ab0ae5f speedwidget class: excess QtConcurent usage removal 2017-10-12 20:59:13 +07:00
Eugene Shalygin
7a652c0a8c Merge pull request #7566 from evsh/themes-cbc
Themes part 1
2017-10-11 10:34:56 +02:00
Eugene Shalygin
db35bb54e1 Make BitTorrent::TorrentState strongly-typed enum
This is needed to forward declare this type and pass it by value.

Conversion from/to QVariant are hanled via Q_DECLARE_METATYPE, while
TorrentState::toString() function was used in webui only and as such is
moved there.
2017-10-10 21:28:57 +02:00
Tim Delaney
19bb6f5fe0 Follow project coding style. Issue #2192.
--HG--
branch : magao-dev
2017-10-10 21:28:56 +02:00
Chocobo1
aab752dd2e
Fix delete key has no effect due to "Ambiguous shortcut overload"
We want to show the accelerator key in the menu but without hitting
the ambiguous overload error.
Fixup of 1378245a63
2017-10-10 14:43:05 +08:00
sledgehammer999
16ac20b594
Remove unused image. Possibly leftover from dropping Qt4. 2017-10-09 18:15:39 +03:00
sledgehammer999
d93d0ab19e
Show new paths in native form. 2017-10-09 17:42:42 +03:00
Vladimir Golovnev
083bc71315 Merge pull request #7396 from thalieht/updownratio
Properly pre-select the selected torrent's current ratio limiting options in UpDownRatioDlg
2017-10-08 21:06:55 +03:00
thalieht
525fdd6c2b Coding style, use nullptr and other minor things 2017-10-08 10:20:54 +03:00
thalieht
f27e75e8fa Properly pre-select the selected torrent's current ratio limiting options in UpDownRatioDlg dialogs. Fixes #7352 2017-10-08 10:20:38 +03:00
Mike Tzou
7895afb8e9 Merge pull request #7542 from Chocobo1/wordbreak
Set QTextOption::NoWrap property in "Download from URLs" dialog
2017-10-07 13:40:41 +08:00
Mike Tzou
2626378dfd Merge pull request #7545 from Kolcha/del-shortcut
added keyboard shortcut to delete torrent. closes #7508
2017-10-07 13:38:05 +08:00
Nick Korotysh
1378245a63
show delete accelerator key in menu. closes #7508 2017-10-06 14:51:19 +03:00
Chocobo1
b3207b8144
Set QTextOption::NoWrap property in "Download from URLs" dialog
This makes it easier to put each magnet link on its own line
2017-10-03 22:45:18 +08:00
Nick Korotysh
4c8dd0ca9d allow search plugins sorting. closes #7526 2017-10-03 16:57:09 +03:00
Vladimir Golovnev
c5607f07c8 Merge pull request #7514 from dzmat/members_names_clarification
members names clarification
2017-09-30 09:36:24 +03:00
Mike Tzou
49802be7d4 Merge pull request #7499 from Chocobo1/fixTimeActive
Fix "Time active" field in transfer list
2017-09-30 11:36:57 +08:00
dzmat
3d932b1cce transferlistwidget class members names clarification 2017-09-29 19:55:30 +07:00
Vladimir Golovnev
66a6674cbc Merge pull request #7490 from glassez/category-path
Allow to set explicit save path for Category from GUI
2017-09-29 14:25:40 +03:00
Chocobo1
2d12c126eb
Fix "Time active" field in transfer list
The "Time active" field was broken, displaying nothing when in
downloading state.
Also change type to int to match the return
types of TorrentHandle::activeTime() & TorrentHandle::seedingTime()
2017-09-28 16:54:46 +08:00
Vladimir Golovnev (Glassez)
3ec992474d
Implement TorrentCategoryDialog class 2017-09-27 21:25:22 +03:00
Mike Tzou
15babe97ea Merge pull request #7500 from Chocobo1/mergeName
Show torrent name in "add new torrent" dialog on merging trackers
2017-09-27 21:04:51 +08:00
Mike Tzou
308fd3dcac Merge pull request #7477 from silverqx/options-dlg-persist-size
Center Options dialog when showed
2017-09-27 20:35:04 +08:00
Mike Tzou
e8250104c8 Merge pull request #7429 from silverqx/preview-modal-ux
Improved ux in preview dialog
2017-09-27 20:33:31 +08:00
Mike Tzou
796cd674d7 Merge pull request #7495 from silverqx/options-save-state-cancel
Options dialog save windows state in destructor
2017-09-26 15:30:17 +08:00
Mike Tzou
1fe9272a8f Merge pull request #7480 from Chocobo1/lastAct
Fix last activity calculation
2017-09-26 15:17:35 +08:00
sledgehammer999
c285de87d4
Don't use margins in FileSystemPathEdit widgets.
Introduced in 30081e0.
2017-09-26 04:06:32 +03:00
Chocobo1
058062d586
Show torrent name in "add new torrent" dialog on merging trackers 2017-09-26 01:34:24 +08:00
silver
3b4fd35dde
Persist size and treeview header state in preview dialog
- renamed variable m_headerState
 - renamed PreviewSelect class to PreviewSelectDialog
 - renamed previewselect files to previewselectdialog
2017-09-25 16:33:17 +02:00
silver
2a6bd5de35
Options dialog save windows state in destructor 2017-09-24 22:56:14 +02:00
silver
64e539fcfb
Center Options dialog when showed 2017-09-24 19:40:48 +02:00
Chocobo1
62493c672d
Fix last activity calculation. Closes #7461
`time_since_upload` & `time_since_download` can be -1, so filter them out
2017-09-24 21:06:34 +08:00
Vladimir Golovnev (Glassez)
8c58a69be6
Use Qt5 connect() style in CategoryFilterWidget 2017-09-24 16:01:39 +03:00
Mike Tzou
83c6b22d30 Merge pull request #7454 from Chocobo1/buttonbox
Replace dialog ok-cancel buttons with QDialogButtonBox
2017-09-21 22:45:45 +08:00
sledgehammer999
b9e233601d Merge pull request #7446 from Chocobo1/utpOnly
Add uTP only mode option
2017-09-19 01:45:58 +03:00
Chocobo1
45a0c5558a
Add comboBox for selecting BitTorrent protocol. Closes #6316.
Use unicode string C_UTP in place of "uTP"
2017-09-18 01:52:57 +08:00
Chocobo1
7059b947e8
Replace dialog ok-cancel buttons with QDialogButtonBox
This PR will make button order follow the platform default.
For example: windows use: OK, Cancel; linux use: Cancel, OK.
2017-09-15 18:52:21 +08:00
Chocobo1
a341b793e4
Rename option
The previous "Disk write cache size" is not accurate since it is also being used
for read cache, so rename it to "Disk cache".
2017-09-14 20:32:10 +08:00
Eugene Shalygin
4ec193042f Allow custom tray icons when system icon theme is used. Closes #7403. 2017-09-11 16:18:10 +02:00
sledgehammer999
7b5730723d
Fix file list expansion on singlefile torrent with folder. 2017-09-06 01:11:49 +03:00
Vladimir Golovnev
c6dfdf9135 Fix CategoryFilterWidget::sizeHint() 2017-09-01 16:11:21 +03:00
Chocobo1
64d5e329c0
Sort the resource lists
Update RCC header
2017-08-29 13:39:02 +08:00
Chocobo1
551ffb88ab
Define QT_USE_QSTRINGBUILDER.
The old defines are deprecated.
QT_USE_QSTRINGBUILDER also supports QByteArray which we use extensively
in WebUI.
2017-08-29 13:37:29 +08:00
Chocobo1
ccd3b305c2
Use Qt5 connect syntax 2017-08-24 20:15:25 +08:00
Chocobo1
b47c90f0e0
Setup parent ownership to avoid memory leak 2017-08-24 20:01:39 +08:00
Mike Tzou
1afd5f70dd Merge pull request #3235 from Chocobo1/session_option
libtorrent session options
2017-08-24 11:35:15 +08:00
Vladimir Golovnev
f2af308e6d Fix RSS Downloader fails to rename rule
Closes #7333.
2017-08-23 16:45:14 +03:00
Vladimir Golovnev
a6868e2b25 Merge pull request #7313 from glassez/sched
Don't disable scheduler when manually switching speed limits. Closes #7306
2017-08-23 17:05:28 +04:00
Vladimir Golovnev (qlassez)
93f5d4058d
Improve BandwidthScheduler
Don't disable scheduler when manually switching speed limits.
Closes #7306.
2017-08-23 09:48:31 +03:00
Evengard
ea7c1ace2a Disable skipping of loopback interfaces
This fixes the absence of VPN tunnel interfaces under Windows and works around the QTBUG-32349
Fixes #7291
2017-08-22 00:00:20 +03:00
Chocobo1
2da2054ccf
Use enums for settings 2017-08-21 20:30:26 +08:00
Chocobo1
f4be165767
Add send_buffer_watermark send_buffer_low_watermark
send_buffer_watermark_factor knobs
2017-08-21 16:50:14 +08:00
Chocobo1
55a1628a5e
Add suggest_mode knob 2017-08-21 16:50:14 +08:00
Chocobo1
6c32f6beff
Add choking_algorithm & seed_choking_algorithm knob 2017-08-21 16:49:45 +08:00
Chocobo1
21ec8fe53f
Add allow_multiple_connections_per_ip knob. Closes #5884. 2017-08-21 16:48:38 +08:00
Chocobo1
4185209036
Add mixed_mode_algorithm knob 2017-08-21 16:48:38 +08:00
Chocobo1
6150e0c56b
Add guided_read_cache knob
cleanup header include order
2017-08-21 16:48:37 +08:00
sledgehammer999
b649d61e8b
Options to better memory control by libtorrent. Closes #7029. 2017-08-18 20:21:37 +03:00
Eugene Shalygin
3331526865 Use pixmap cache for file icons on Mac OS and Windows. Closes #7264. 2017-08-15 22:25:03 +02:00
vit9696
eb8ff91c5d Fix notification display on macOS 2017-08-15 21:16:37 +03:00
sledgehammer999
f98edcab5c Merge pull request #7272 from vit9696/patch-1
Fix macOS window restoration after using hide icon
2017-08-15 21:13:58 +03:00
sledgehammer999
e5ea3bd707 Merge pull request #7253 from briankendall/fix_objc_errors
Fixed mac specific compiler errors and cleaned up Objective C code. Closes #7252
2017-08-15 21:06:09 +03:00
sledgehammer999
c87c1d2359
Use simpler ifdef style. 2017-08-15 21:01:55 +03:00
sledgehammer999
25eb2edb86 Merge pull request #7273 from vit9696/borders
Unify preference window borders across the tabs
2017-08-15 18:14:11 +03:00
vit9696
1cb69c9b43 Unify preference window borders across the tabs 2017-08-14 20:10:28 +03:00
sledgehammer999
89d8a2fe72 Merge pull request #7251 from Chocobo1/spacing
Add space between widgets in left side panel. Closes #7224.
2017-08-14 19:11:54 +03:00
vit9696
16d7301046 Fix macOS window restoration after using hide icon 2017-08-14 12:38:42 +03:00
sledgehammer999
8d913d77dd Merge pull request #7266 from Chocobo1/coverity
Fix issues found by coverity scan
2017-08-13 20:10:04 +03:00
Vladimir Golovnev (qlassez)
cff6a64e9f
Use qUtf8Printable() for logging strings
qDebug(), qInfo(), qWarning(), qCritical(), qFatal() expect %s arguments
to be UTF-8 encoded, while qPrintable() converts to local 8-bit encoding.
Therefore qUtf8Printable() should be used for logging strings instead of
qPrintable().
2017-08-13 16:14:57 +03:00
Chocobo1
91b2b14ba5
Initialize variables
Remove unused variable
2017-08-13 15:28:36 +08:00
Brian Kendall
62b956946f Fixed mac specific compiler errors and cleaned up Objective C code
Created new file src/gui/macutilities.mm, moved code from mainwindow.cpp and torrentcontentmodel.cpp that used the Objective C runtime into it and converted it to actual Objective C. Rewrote pixmapForExtension() so that it doesn't call into private Qt functions.
2017-08-11 20:51:16 -04:00
Chocobo1
04552f7921
Add space between widgets in left side panel. Closes #7224. 2017-08-11 21:37:33 +08:00
sledgehammer999
593c24e5bd Merge pull request #7234 from thalieht/indentation
Remove indentation for category/tag filter widgets in all platforms
2017-08-11 11:25:24 +03:00
Chocobo1
78dafc9cbe
Prefill torrent name when creating a new torrent. Closes #7229. 2017-08-09 15:26:05 +08:00
thalieht
2da5800665 Remove indentation for category/tag filter widgets in all platforms 2017-08-08 23:43:23 +03:00
sledgehammer999
6270433237
Fix explicit Torrent Management Mode in Add New Torrent dialog. Closes #5602. 2017-08-07 20:01:30 +03:00
sledgehammer999
db653cbdac Merge pull request #7214 from Chocobo1/fixups
WebUI fixups
2017-08-07 08:11:32 +03:00
sledgehammer999
766f70c81a Merge pull request #7118 from vit9696/master
Fixed file type icons not displaying on macOS
2017-08-07 08:10:58 +03:00
Chocobo1
1bfb8d35cd
Move "Copy hash" menu item above "Copy magnet link"
Fix wrong "Copy hash" icon used in webUI
Fixup of 145641ac41
2017-08-06 17:19:55 +08:00
Tom Piccirello
145641ac41 Add copy options to webui context menu (addresses #6815) (#7036)
* Add copy options to webui context menu
Add Copy Hash to gui (closes #6964)

* Use switch statement

* Use camel case, switch from signal to qaction.

* Rename variable

* Change variable name
2017-08-06 16:35:12 +08:00