Commit graph

8302 commits

Author SHA1 Message Date
Vladimir Golovnev (Glassez)
9dadb919ef
Improve force recheck of paused torrent 2018-11-02 19:25:38 +03:00
Vladimir Golovnev (Glassez)
a8c00456e4
Restore torrent in two steps
Add/restore all torrents in "paused" state and then resume those
that need to be really "resumed" (added/restored in "resumed" state).
Keep torrents with missing files paused.
Force recheck torrent with missing files when it's resumed by the user.
2018-11-02 19:25:26 +03:00
Chocobo1
209e6a889a
Fix MSVC warning C4804
Full message of the warning:
webui\api\searchcontroller.cpp(54): warning C4804: '>': unsafe use of type 'bool'
in operation
2018-11-02 14:35:35 +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
69bf848f32
Merge pull request #9777 from glassez/fix-altwebui
Fix Alternative Web UI to be available. Closes #9720
2018-10-29 09:20:14 +03:00
Vladimir Golovnev (Glassez)
f309a5279e
Fix Alternative Web UI to be available 2018-10-29 08:32:57 +03:00
Vladimir Golovnev
2a67f640f0
Merge pull request #9774 from glassez/fix-locale
Consider empty locale  setting as not set. Closes #9735
2018-10-28 17:43:07 +03:00
Vladimir Golovnev
4fee16fafb
Merge pull request #8217 from Piccirello/webui-statusbar-freespace
Free disk space in WebUI status bar
2018-10-28 10:02:49 +03:00
Vladimir Golovnev (Glassez)
5712c05e68
Consider empty locale setting as not set 2018-10-27 20:59:08 +03:00
Vladimir Golovnev (Glassez)
f0f329b402
Fix indentation in tstool.py 2018-10-26 20:46:02 +03:00
Vladimir Golovnev
30dadfceea
Merge pull request #9718 from qbittorrent/webapi-version-bump
Bump WebAPI version
2018-10-25 08:41:53 +03:00
Mike Tzou
2fd4d50f3a
Merge pull request #9754 from silverqx/previewable-ts-ext
Recognize TS files as previewable
2018-10-25 12:56:02 +08:00
silver
0b20750cd5
Recognize *.ts files as previewable 2018-10-24 16:18:35 +02: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
Thomas Piccirello
f2957c721d Use QElapsedTimer 2018-10-22 23:17:46 -04:00
Thomas Piccirello
2aea235e34 Add free disk space to WebUI status bar
Closes #6829.
2018-10-22 22:06:14 -04: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
Tom Piccirello
41462a39c7
Bump WebAPI version 2018-10-17 10:54:40 -04:00
Thomas Piccirello
bab18036aa Fix WebUI Auto TMM context menu bug
When multiple torrents are selected with different Auto TMM values, the Auto TMM context menu option is hidden. This option is never unhidden, requiring a refresh of the page.
2018-10-15 21:08:42 -04:00
Thomas Piccirello
ae374f6903 Catch invalid values 2018-10-15 04:31:29 -04:00
Eugene Shalygin
5ccd4b3611
Merge pull request #9691 from zeule/cmake
cmake: restore out-of-source build
2018-10-14 11:28:51 +02:00
Eugene Shalygin
e590fff2fe cmake: restore out-of-source build
Qt translations have to be compiled in a shared library or executable,
and since we use static libraries for the components, webui translation
files have to be compiled into the main executable.
2018-10-14 11:06:20 +02:00
Mike Tzou
18a64f109d
Merge pull request #9683 from Chocobo1/win_fs
Add isNetworkFileSystem() detection on Windows
2018-10-14 01:29:22 +08: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
ff72be9c2d
Merge pull request #9481 from mj-p/master
Don't recheck just checked torrent. Closes #8743, #9370
2018-10-13 09:34:27 +03:00
Vladimir Golovnev
5d2e35d14d
Merge pull request #9026 from glassez/www-translate
Use independent translation for WebUI
2018-10-12 13:39:18 +03:00
Vladimir Golovnev
3e8f3d61fb
Merge pull request #9586 from Piccirello/webui-categories
Add categories WebAPI
2018-10-12 10:27:13 +03: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
Chocobo1
acdf5363b2
Simplify #if conditions 2018-10-12 00:04:08 +08:00
Chocobo1
cff5af2e76
Add isNetworkFileSystem() detection on Windows
This allows network mounts to be monitored correctly by polling timer.
2018-10-12 00:03:12 +08:00
Mike Tzou
fb8fad3fa1
Merge pull request #9673 from Chocobo1/fs_watch
Add SMB2 magic number
2018-10-11 23:11:06 +08: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
Chocobo1
9b552c463f
Add FileSystemWatcher log messages 2018-10-11 11:01:22 +08:00
Chocobo1
25a0147f61
Add SMB2 magic number
Closes #9671.
2018-10-10 10:36:26 +08:00
Vladimir Golovnev (Glassez)
c1a4ef1377
Use independent translation for WebUI 2018-10-09 11:10:08 +03:00
Vladimir Golovnev (Glassez)
becb002d87
Create WebUI translation update tool 2018-10-09 11:10:07 +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
Thomas Piccirello
6d619e9491 Add categories WebAPI
Closes #5330.
2018-10-07 14:52:34 -04:00
silverqx
ea404445f6
Clear LineEdit on ESC 2018-10-04 20:01:12 +02:00
sledgehammer999
b09e32ebc0
Merge pull request #9635 from sledgehammer999/tune_alert_mask
Use a more detailed alert mask where possible
2018-10-02 19:36:27 +03:00
Mike Tzou
5aaa51881e
Merge pull request #9614 from Piccirello/js-defects
Fix minor JavaScript defects
2018-10-02 10:19:47 +08:00
sledgehammer999
2f1a0ffe5c
Use a more detailed alert mask where possible
Closes #9547
2018-10-02 02:42:06 +03:00
Vladimir Golovnev
1de7c385d5
Merge pull request #9585 from Piccirello/webui-translate-status
Translate WebUI torrents Status column
2018-10-01 18:23:51 +03:00
Thomas Piccirello
0b6ae68801 Add WebUI search API controller
Closes #2495.
2018-09-30 20:07:27 -04:00
Administrator account
f6ed605414
Don't recheck just checked torrent
Closes #8743.
Closes #9370.
2018-09-29 17:13:44 +03:00
Thomas Piccirello
1e6942e967 Fix minor JavaScript defects 2018-09-26 23:10:51 -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
b8d87f641f
Avoid variable shadowing 2018-09-26 23:53:17 +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
Chocobo1
60ecc4fe8f
Move python related functions
Also the functions are slightly changed to return full path of the found
python executable.
2018-09-25 11:46:39 +08:00
Thomas Piccirello
65934a4c69 Add locale to js file path
This reduces the likelihood of a cached file being used after the locale is changed.
2018-09-23 16:27:47 -04:00
Thomas Piccirello
7b85473d2b Translate WebUI torrents Status column
Closes #9554.
2018-09-22 18:13:47 -04:00
sledgehammer999
6c0af1b078
Merge pull request #9553 from sledgehammer999/misc_fixes
Misc fixes
2018-09-22 20:09:54 +03:00
sledgehammer999
06c8142826
Make strings actually translatable 2018-09-22 14:05:41 +03:00
sledgehammer999
e8213b2c6a
Remove unused variable 2018-09-22 14:05:40 +03:00
dzmat
fc93f2eb78 Replace magic number with system define 2018-09-21 22:33:43 +07:00
Mike Tzou
5a638e4d28
Merge pull request #9525 from Chocobo1/pep8
Reformat python code to be compliant with PEP8
2018-09-19 17:41:47 +08:00
sledgehammer999
de951d6637
Sync translations from Transifex and run lupdate 2018-09-18 22:31:50 +03:00
Chocobo1
bbe76231cf
Reformat python code to be compliant with PEP8
The following command is used:
`pycodestyle --ignore=E265,E722 --max-line-length=100 <py files>`
2018-09-18 12:33:09 +08:00
Eugene Shalygin
141af072b9 cmake: use C++14 when available
Libtorrent does the same and we have to follow since
its ABI depends on the C++ standard version.

Partially closes #9485.
2018-09-16 18:29:15 +02:00
sledgehammer999
bdc788c824
Bump Web API version 2018-09-16 09:37:32 +03:00
Vladimir Golovnev
fe9fb03e38
Merge pull request #9482 from proninyaroslav/patch-1
Fix typo in variable name
2018-09-13 19:45:14 +03:00
Vladimir Golovnev
28a6ac3197
Merge pull request #9228 from Piccirello/addCategory
Add save path and category editing to WebUI
2018-09-13 19:43:28 +03:00
sledgehammer999
c520e657ce
Save state change from queued to paused 2018-09-11 21:00:04 +03:00
Yaroslav Pronin
4e28033c9c
Fix typo in variable name 2018-09-11 17:56:55 +00: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
sledgehammer999
01feae60ee
Merge pull request #9449 from sledgehammer999/favicon_key
Save option about tracker favicons under correct key
2018-09-09 01:30:00 +03:00
sledgehammer999
118545d0f4
Merge pull request #9383 from sledgehammer999/huge_alert_queue
Decrease probability of missing important alerts
2018-09-09 01:29:28 +03:00
Mike Tzou
5cb41c3c2d
Merge pull request #9387 from Piccirello/webui-pref-tweaks
Minor WebUI visual changes
2018-09-08 14:51:26 +08: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
sledgehammer999
9ce619eac8
Decrease probability of missing important alerts
During startup we can get above 1000 alerts at each pop even with only
30 torrents in the queue. This is because libtorrent will post
piece_finished_alert and file_completed_alert for each torrent. These
alerts push out of the way the ones we care about.
The alert queue will be grown to max only if needed. So we don't use
more memory. It will greatly depend on how many torrents a user has in
their session.

When getting fastresume_rejected_alert we need to act as fast as
possible in pausing it, otherwise there's a chance it will begin
downloading and writing to disk before we pause it.
2018-09-06 02:06:44 +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
fef1ad6083 Allow WebUI sidebar filters to be hidden 2018-09-05 02:40:33 -04:00
Chocobo1
79dae55a61
Fix GUI scaling issue on Linux
It seems `QT_AUTO_SCREEN_SCALE_FACTOR` doesn't work as expected.
Closes #6935.
2018-09-05 12:17:30 +08:00
Thomas Piccirello
c10d237f7a Don't disable DHT when using force proxy
Closes #9292
2018-09-02 19:48:03 -04:00
Thomas Piccirello
adad883eb6 Increase WebUI Options initial height 2018-08-31 11:38:17 -04:00
Thomas Piccirello
b05a443cad Adjust WebUI Options form alignment 2018-08-31 11:38:10 -04:00
Thomas Piccirello
63c53766b4 Add save path and editing to WebUI new category dialog 2018-08-31 11:27:05 -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
Mike Tzou
846d8993a9
Merge pull request #9410 from Chocobo1/clazy
Minor fixes
2018-08-30 12:07:34 +08:00
Elias M. Mariani
33af699191 Support the OpenBSD filesystem 2018-08-28 13:58:09 -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
Chocobo1
254782def6
Avoid copy-construct QString in for loop 2018-08-28 14:13:59 +08:00
thalieht
ec9120adf0 Save torrents priorities on torrent finished
Save fastresumes for all torrents that shifted in the queue when a torrent finished.
2018-08-25 22:02:14 +03:00
thalieht
95b02bbb2e Save fastresumes when changing torrent priorities 2018-08-25 22:02:14 +03:00
Vladimir Golovnev (Glassez)
386d0565fe Always save actual queue position 2018-08-25 22:02:14 +03: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
Mike Tzou
5f175e113a
Merge pull request #9365 from Chocobo1/qchar
Fix WebUI unreachable issue
2018-08-21 11:52:39 +08:00
Chocobo1
903a747dba
Add config file for SVGO 2018-08-20 17:58:19 +08:00
Chocobo1
e9a8ac0544
Fix icon height/width ratio
It was causing misalignment in TransferListFiltersWidget text label.
2018-08-20 17:43:47 +08:00
Thomas Piccirello
a0e6007fc1 Include category save path in web api sync data 2018-08-18 22:04:21 -04:00
Thomas Piccirello
d89ef22d85 Require torrent category creation to be explicit 2018-08-18 22:04:21 -04:00
Chocobo1
262c3a75bd
Fix WebUI unreachable issue
QVariant doesn't have constructor for plain char, by default it converts
a plain char into an integer, hence the WebUI issue.
Closes #9333.
2018-08-19 03:33:08 +08: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
sledgehammer999
2d94c4cb6e
Merge pull request #9336 from sledgehammer999/fix_mingw_warnings
Fix mingw warning about unrecognized escape sequence
2018-08-15 16:01:52 +03:00
sledgehammer999
14e5fc8e33
Fix mingw warning about unrecognized escape sequence
Warning introduced by commit 6203f23f06
2018-08-14 22:45:21 +03: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
ac1839fa6b
Bump Web API version 2018-08-12 21:08:42 +03:00
sledgehammer999
239f98e450
Sync translations from Transifex and run lupdate 2018-08-12 21:07:08 +03:00
Chocobo1
6f2b1823ad
Fix lupdate errors
I suspect lupdate isn't smart enough to figure out what tr() is suppose
to do, so just make it a static function in class.
The error was: tr() cannot be called without context
2018-08-13 01:24:34 +08:00
Chocobo1
d9461f348f
Generate i18n .ts files in the correct directory
Fixup 5b7c089dd2.
Closes #9313.
2018-08-13 00:11:28 +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
Mike Tzou
f44ff63361
Merge pull request #9278 from Couchy/torrent_file_error_handling
Improve error handling when loading torrent files
2018-08-12 00:21:56 +08:00
sledgehammer999
9dd1049f24
Merge pull request #9274 from sledgehammer999/tray_close_notification
Notify users on 1st time close/minimize to tray
2018-08-11 00:13:41 +03:00
Couchy
3808b5df16
Avoid allocating large memory when loading a .torrent file
`QIODevice::read(qint64 maxSize)` will allocate full `maxSize` of memory no matter
what the real file size was, this caused users to experience out-of-memory
exception on 32-bit qbt.
Also handle the OOM execption if it still fails.

Closes #9064, #9075, #9130, #9239, #9246, #9279.
2018-08-11 00:48:35 +08:00
Mike Tzou
5f61ffa184
Merge pull request #9303 from Chocobo1/fix
Fix I/O error after fetching magnet metadata
2018-08-11 00:14:06 +08:00
thalieht
2485525896 Add option for regexps in the transferlist search filter's context menu 2018-08-10 12:44:10 +03:00
Chocobo1
63991cb58e
Fix I/O error after fetching magnet metadata
It is caused by an extra path seperator, so removing it fixes it.
Fixup 9612a75faa.
2018-08-10 12:48:04 +08:00
sledgehammer999
fd30bf7423
Notify users on 1st time close/minimize to tray 2018-08-09 16:48:34 +03:00
sledgehammer999
2befd2927a
Revert "Set "close to tray" to false as default"
This reverts commit dc9ec0e408.
2018-08-09 16:37:23 +03:00
Vladimir Golovnev
260b03de92
Merge pull request #9265 from glassez/dont-save-paused
Never save resume data for already paused torrents
2018-08-08 08:45:15 +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
Mike Tzou
89081d5365
Merge pull request #9268 from Chocobo1/clean
Put temporary files in qbt own temp folder and cleanups
2018-08-04 01:18:56 +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
Vladimir Golovnev
d106d908ef
Merge pull request #9273 from thalieht/closetotray
Set "close to tray" to false as default
2018-08-03 11:16:50 +03:00
thalieht
dc9ec0e408 Set "close to tray" to false as default 2018-08-02 17:11:41 +03:00
Chocobo1
1c7abfdf46
Avoid regenerating .qm files unnecessarily
Translations included at top level is to avoid regenerating the .qm files every
time when src.pro is processed.
Partially revert 5b7c089dd2.
2018-08-02 17:44:06 +08: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
Vladimir Golovnev (Glassez)
2a6e38aa28
Never save resume data for already paused torrents 2018-08-01 21:29:32 +03:00
Vladimir Golovnev (Glassez)
7716a27d0d
Reorder resume data saving conditionals
Having conditionals which can break saving of torrent resume data
in order from more likely to less likely is more effective.
2018-08-01 21:29:01 +03:00
Chocobo1
9df67b52b8
Add const to function signature 2018-08-01 01:40:50 +08:00
Mike Tzou
fea7a96e68
Merge pull request #9257 from Chocobo1/prio
Avoid potentially setting the wrong piece priorities
2018-08-01 00:07:22 +08:00
Mike Tzou
8dae7f4a87
Merge pull request #9229 from Piccirello/forceReannounce
Add WebUI Force Reannounce option
2018-07-31 00:19:34 +08:00
Chocobo1
73b5efbb23
Avoid potentially setting the wrong piece priorities
Updating file priorities is an async operation in libtorrent, when we
just updated it and immediately query it, we might get the
old/wrong values, so we rely on `updatedFilePrio` in this case.
2018-07-30 13:22:05 +08:00
Chocobo1
a68cdc5225
Refactor code
Make the code slightly easier to read.
2018-07-30 02:43:23 +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
9bd8587c68
Add const to function parameters 2018-07-30 02:23:51 +08:00
Chocobo1
650f585bf3
Remove static keyword overuse 2018-07-23 13:40:25 +08: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
517fc39950
Remove unnecessary dynamic allocation
Also remove unneeded `if ()` conditional.
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
Thomas Piccirello
13075e5099 Send all rechecks in one request 2018-07-22 20:33:39 -04:00
Thomas Piccirello
cdad0dc7d3 Add WebUI Force Reannounce option 2018-07-22 20:33:17 -04: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
Mike Tzou
aed971883d
Merge pull request #9192 from Chocobo1/msg
Revise dialog messages
2018-07-18 00:08:00 +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
Mike Tzou
59d70c8a96
Merge pull request #9193 from Chocobo1/fix
Simplify code
2018-07-17 00:01:31 +08:00
Mike Tzou
837308deb6
Merge pull request #9185 from Chocobo1/cache
Cache more preference values in WebApplication
2018-07-16 23:53:58 +08:00
Chocobo1
42eac2ee3c
Simplify code
This avoids "deferencing null pointer" warning from static analyzers.
2018-07-15 13:30:11 +08:00
Chocobo1
ec7dfee887
Fix typo 2018-07-15 10:19:24 +08:00
Vladimir Golovnev
c7f1f1494e
Merge pull request #9187 from glassez/tracker-favicon
Download favicon using appropriate protocol
2018-07-14 12:01:58 +03:00
Vladimir Golovnev
11cd828e8a
Merge pull request #9186 from glassez/fix-dm
Apply proxy settings on DownloadManager creation
2018-07-14 12:01:28 +03:00
Chocobo1
e04aae686f
Cache more preference values
These values from Preference class are frequently used.
Also group related variables together.
2018-07-14 15:48:18 +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)
f7c252886f
Apply proxy settings on DownloadManager creation 2018-07-13 13:18:57 +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
Vladimir Golovnev (Glassez)
cd44ab2fc6
Improve torrent initialization
Don't post "torrent resumed" event when torrent starts in "resumed"
state.
Fix confusing names. Now "resumed torrent" means "unpaused torrent"
only. When we load previously added torrent it is called "restored
torrent".
2018-07-12 21:03:36 +03:00
Thomas Piccirello
b2ffd6e03b Instantiate SearchPluginManager with other application components 2018-07-11 20:11:33 -04:00
Vladimir Golovnev (Glassez)
7ebd63a60f
Save resume data on torrent change events
Closes #9174.
2018-07-10 17:45:09 +03: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
6a16fc1ca2
Prolong resume data save interval 2018-07-05 13:22:13 +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
ca68b86550
Merge pull request #9141 from Chocobo1/delay
Omit removing python cache artifacts on qbt start
2018-07-03 13:07:31 +08: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
Chocobo1
2528c6e39a
Fix python version detection
Closes #9146.
2018-07-02 00:57:08 +08:00
Chocobo1
8c32302377
Clear python cache conditionally
Clear the cache artifacts on plugin install and plugin uninstall events.
2018-07-01 20:57:39 +08:00
Vladimir Golovnev (Glassez)
d78414307e
Make TorrentInfo loading behavior uniform 2018-06-29 15:48:36 +03:00
Vladimir Golovnev (Glassez)
112a9bcfa2
Use new DownloadManager interface 2018-06-29 15:48:17 +03:00
Vladimir Golovnev (Glassez)
8d438e159c
Implement "Sequential downloading" feature
Closes #6835.
2018-06-29 15:48:02 +03:00
Vladimir Golovnev (Glassez)
a9a6b74416
Implement DownloadRequest helper 2018-06-29 12:18:56 +03:00
Chocobo1
77b71e392e
Refactor function
In SearchPluginManager::updateNova(), omit removing __pycache__ folder and pyc
files, those files will be recreated anyway.
Add const to variables
2018-06-28 17:21:13 +08:00
Chocobo1
f951bf678d
Rename function 2018-06-28 16:13:52 +08:00
Chocobo1
5c50c5b24d
Cache SearchPluginManager::engineLocation() result
Also the folder is only created on first usage.
2018-06-28 16:06:16 +08:00
Chocobo1
361afb401b
Replace less-efficient QProcess::setEnvironment
Also small refactor
2018-06-28 15:56:39 +08:00
Chocobo1
ad5c88be3d
Simplify function 2018-06-28 15:50:50 +08: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
Goshik
1daadfc4ec Create non-existing path in setLocationAction()
When using qbittorrent-nox it is not always possible to manually create
the target path for torrent moving. This commit allows automatic path
creation. It also allows to display error messages in the
'Set location' window.
2018-06-19 14:10:11 +03:00
Mike Tzou
8f6e066332
Merge pull request #9092 from hannsen/patch-1
PEP 8 compliant version comments in search plugins
2018-06-18 00:56:28 +08:00
Mike Tzou
40f4223d02
Merge pull request #9083 from Chocobo1/qrc
Move files to where it belongs
2018-06-18 00:51:19 +08:00
Vladimir Golovnev
7d9cc04c88
Merge pull request #9090 from thalieht/renamefiles
Rename files and classes to match them
2018-06-16 13:08:38 +03:00
Mike Tzou
dc20fff6e4
Merge pull request #9059 from Piccirello/meta-key
Add WebUI support for Mac ⌘ (Command) key
2018-06-16 12:21:20 +08:00
thalieht
d34ddb2e3c Change file names and classes names to match them 2018-06-15 20:12:59 +03:00
hannsen
a162550d7f
Properly normalize version string before parsing it
This allows python scripts to be formatted in PEP 8 style.
2018-06-14 13:00:31 +08: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
fd2fc65ba9
Merge pull request #9018 from Chocobo1/boostDef
Revise usage of BOOST_NO_CXX11_RVALUE_REFERENCES
2018-06-13 14:20:01 +08:00
Chocobo1
8be949fec3
Revise usage of BOOST_NO_CXX11_RVALUE_REFERENCES
Now the flag will be present when building with boost version <= 1.59.
Closes #8990.
2018-06-13 13:51:58 +08:00
Thomas Piccirello
232f0f4b0b Add WebUI support for Mac ⌘ (Command) key
The Command key will now be recognized for WebUI Table multi-selection, as Ctrl is.
2018-06-12 20:32:24 -04:00
Thomas Piccirello
091ad6103e Implement key functions in Class and refactor 2018-06-12 20:32:07 -04:00
Mike Tzou
c66738dc05
Merge pull request #9066 from AltruisticCompany/setlocation
Show current save path in 'Set location' window
2018-06-13 02:46:56 +08: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
Chocobo1
5b7c089dd2
Move qm_gen.pri 2018-06-11 21:02:45 +08:00
Chocobo1
5d94db9c79
Move .desktop file 2018-06-11 20:01:33 +08:00
Chocobo1
6203f23f06
Move .ico files into icons dir 2018-06-11 20:01:33 +08:00
Chocobo1
26a4703398
Move .qrc files into its own directory 2018-06-11 20:01:33 +08: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
Goshik
682ef9e2a8 Show current save path in 'Set location' window
The feature is useful when the user needs to move their torrent to a
sub or parent folder. If more than one torrent is chosen, the path
of the first selected torrent is used. The window was made wider to
allow more convenient editing of long paths.
2018-06-08 18:34:14 +03: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
40330c4606
Merge pull request #9027 from Chocobo1/cache
Send Cache-Control header in WebUI responses
2018-06-05 01:04:42 +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
Chocobo1
eaa276b284
Fix WebUI cache behavior for css files
The style.css in public & private folders share the same URI, this
confuses the browser cache, so rename one of them.
2018-06-04 20:50:09 +08:00
Chocobo1
050b78f378
Send Cache-Control header in WebUI responses
Tune the caching time to be shorter, in case there is a program
update.
Change the cacheability to private, as WebUI resources are not intended
to be cached at proxy.
For uncacheable responses, send out "no-store" explicitly to halt
browser caching.
2018-06-04 20:50:08 +08:00
Mike Tzou
5f8feec1c1
Merge pull request #9013 from Piccirello/strengthen-csp
More restrictive Content Security Policy
2018-06-03 21:43:39 +08:00
Vladimir Golovnev
e61c882fee
Merge pull request #9015 from thalieht/style
Fix coding style
2018-06-03 14:48:04 +03:00
Mike Tzou
c4e4e7432d
Merge pull request #9009 from Chocobo1/login
Add logging messages in WebUI login action
2018-06-03 19:47:05 +08: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
5c72a52ea2
Reset WebUI ban counter on login success 2018-05-31 22:55:54 +08:00
Chocobo1
d782d62b34
Add logging messages in WebUI login action 2018-05-31 22:55:54 +08:00
Thomas Piccirello
9b874b8941 Rename variables for clarity 2018-05-31 00:54:57 -04:00
Thomas Piccirello
43656aaa1e Add form-action to CSP
This option restricts all form submissions to the WebUI's origin.
qBittorrent only ever submits forms to the origin, so this is intended as a security measure.
2018-05-31 00:54:57 -04:00
Thomas Piccirello
8f98f87d12 Add upgrade-insecure-requests to CSP when HTTPS is enabled
This option automatically upgrades all http connections to https.
It ensures http urls cannot be accessed when in https mode, and is intended as a security measure.
2018-05-31 00:54:57 -04:00
Mike Tzou
6e96bbb2e9
Merge pull request #9001 from Chocobo1/csp
Improve WebUI security measures
2018-05-31 00:34:21 +08:00
Mike Tzou
93d4f2d595
Merge pull request #8984 from Chocobo1/magnetDialog
Refactor DownloadFromURLDialog
2018-05-30 13:55:42 +08:00
Chocobo1
68c6ddf05d
Add changelog link in program updater
Closes #8997.
2018-05-30 13:54:15 +08:00
Vladimir Golovnev
15153a4446
Merge pull request #8976 from glassez/feed-uid
Don't use RSS feed URLs as base for file names. Closes #8399
2018-05-29 14:30:23 +03:00
Chocobo1
e8d378e167
Improve WebUI security measures
CSP was erroneously disabled in bad4d94f77
when clickjacking protection is off, now it is back.
Also added CSP 'frame-ancestors' directive when clickjacking
protection is enabled.
2018-05-29 13:40:52 +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
1d25d95740
Merge pull request #8953 from Chocobo1/constexpr
Add constexpr to various classes
2018-05-29 00:21:52 +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
2ef7adec89
Sync translations from Transifex and run lupdate 2018-05-27 21:01:16 +03:00
sledgehammer999
6ad8d730cc
Bump Web API version 2018-05-27 19:23:25 +03:00
sledgehammer999
a1a6a7ef56
Merge pull request #8868 from Chocobo1/macos
Fix GUI scaling factor on macOS
2018-05-27 17:39:00 +03:00
Vladimir Golovnev (Glassez)
200f4d0f07
Don't use RSS feed URLs as base for file names
RSS feed URLs can be too long and exceed max path limit.
Add RSS feed UIDs and use UIDs as base for file names instead of URLs.
Closes #8399.
2018-05-26 10:37:32 +03:00
sledgehammer999
8a976d40be
Merge pull request #8979 from sledgehammer999/comp_dbus
Fix compilation without D-Bus support
2018-05-25 18:23:45 +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
sledgehammer999
80e93e23f9
Fix compilation without D-Bus support
Closes #8977
2018-05-24 17:40:23 +03:00
sledgehammer999
7c6a5afbff
Merge pull request #8962 from sledgehammer999/suppress_errors
Suppress multiple I/O errors for the same torrent
2018-05-24 16:35:03 +03:00
Vladimir Golovnev
935bb5bd1c
Merge pull request #8966 from glassez/rss-date
Use RSS feed update time as a fallback. Closes #8959
2018-05-23 17:20:46 +03:00
Chocobo1
e099f6ad33
Add constexpr to IndexInterval class
Add const to IndexRange private members.
Remove redundant inline specifier.
Add missing parentheses.
2018-05-23 14:30:56 +08:00
Chocobo1
9631a9c2ad
Add constexpr to TriStateBool class 2018-05-23 14:30:56 +08:00
Chocobo1
b38925413d
Improve Utils::Version class
Add operator>=() and operator<=().
More methods are suitable to be constexpr.
Remove redundant boundary checking.
2018-05-23 13:47:41 +08:00
Mike Tzou
cd21071c69
Merge pull request #8954 from Chocobo1/firstlast
Relax behavior of "Download first and last piece first"
2018-05-23 13:26:02 +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
1bcbe65819
Merge pull request #8908 from adem4ik/master
Update Windows icons
2018-05-22 22:42:41 +03:00
sledgehammer999
b9546ccd4c
Suppress multiple I/O errors for the same torrent
When a file error happens libtorrent spews a ton of `file_error_alert`
which result in log floods and notification balloon floods. The later
might render the program inaccessible because the constant
notifications prevent the user from interacting with the tray icon.

Closes #8934
2018-05-22 21:29:50 +03: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
Vladimir Golovnev (Glassez)
4f8ed09183
Add missing 'return' statement 2018-05-21 21:24:02 +03: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
Chocobo1
e8a69dd60c
Update Options dialog layout in WebUI 2018-05-21 23:57:11 +08:00
Vladimir Golovnev (Glassez)
9b80c4f7eb
Use RSS feed update time as a fallback
Some sites omit publication date in its RSS feed articles
that prevents "Ignore Subsequent Matches" to work properly.
Closes #8959.
2018-05-21 15:47:14 +03:00
Vladimir Golovnev
1b14706b08
Merge pull request #8955 from glassez/initial-rename
Rename torrent if content was initially renamed. Closes #8910
2018-05-21 08:04:43 +03: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
Vladimir Golovnev
12e40ca865
Merge pull request #8948 from glassez/save-path
Add last used save path to the front of history. Fixes #8922
2018-05-21 08:03:29 +03:00
sledgehammer999
b4c1a949cc
Fix Stats dialog size
Partially reverts e31ec20ec4.
Closes #8870.
2018-05-20 23:35:20 +03:00
Vladimir Golovnev (Glassez)
a54f57611c
Rename torrent if content was initially renamed
Closes #8910.
2018-05-19 20:21:21 +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
95b19ec303
Relax behavior of "Download first and last piece first"
Now it applies the setting to all files in torrent, no matter whether
the file is previewable or not.

Torrent client shouldn't be smart by deciding which file this
option will be applied to, i.e. it should just follow the user's decision.
2018-05-19 21:48:13 +08:00
Chocobo1
da75a010c7
Refactor code
Add const to variables.
Add Logger message.
Simplify code logic.
2018-05-19 21:48:13 +08: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
c29e5c76dc
Merge pull request #8936 from surfernsk/master
Fix open destination folder with Nautilus > 3.28. Closes #8923
2018-05-19 15:06:03 +03: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
Evgeny Lensky
c7601d7a43 Fix open destination folder with Nautilus > 3.28
Closes #8923.
2018-05-19 18:45:26 +07:00
Mike Tzou
07c15127ba
Merge pull request #8915 from Chocobo1/runext4
Improve "Run External Program" behavior
2018-05-19 14:58:45 +08:00
Vladimir Golovnev (Glassez)
256f6954c5
Improve code of RSS auto-downloading rule
Closes #8933.
2018-05-18 13:26:04 +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
e157ca2430
Merge pull request #8932 from glassez/rss-settings
Properly set RSS settings via API. Closes #8925
2018-05-17 06:07:25 +03:00
Chocobo1
fcbcf4039b
Use smaller type 2018-05-17 10:57:12 +08:00
Vladimir Golovnev (Glassez)
90f09e7570
Properly fill UploadedFile::filename field
Closes #8928.
2018-05-16 20:13:55 +03:00
Mike Tzou
7bfe08d466
Merge pull request #8926 from Chocobo1/lint
Detect endianness at compile time
2018-05-16 20:07:03 +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)
98ca274169
Rename RSS properties to follow other names 2018-05-15 16:05:51 +03:00
Chocobo1
0a49f76c0a
Detect endianness at compile time 2018-05-15 21:02:00 +08:00
Vladimir Golovnev (Glassez)
2a0b104e5e
Properly set RSS settings via API
Closes #8925.
2018-05-15 15:59:28 +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
3b1fa19ea8
Merge pull request #8895 from Chocobo1/locale
Apply locale changes immediately in WebUI
2018-05-15 00:29:45 +08:00
Mike Tzou
a0f200be0d
Merge pull request #8894 from Chocobo1/tr
Make strings translatable
2018-05-14 12:53:40 +08:00
sledgehammer999
e3ce9b2645
Merge pull request #8903 from sledgehammer999/fix_upgrade_artifacts
Delete non-commited fastresume files
2018-05-13 17:24:47 +03:00
Vladimir Golovnev
7afbc346d5
Merge pull request #8906 from glassez/fix-webui
Fix WebUI bugs
2018-05-13 17:02:24 +03:00
sledgehammer999
35eee0b590
Don't migrate torrents that have newer fastresumes 2018-05-13 15:50:10 +03:00
sledgehammer999
7626ebe7a6
Delete non-commited fastresume files
Old v3.3.x format had a number at the end indicating the queue position.
The naming scheme was '<infohash>.fastresume.<queueposition>'.
However, QSaveFile, which uses QTemporaryFile internally, might leave
non-commited files behind eg after a crash. These files have the
naming scheme '<infohash>.fastresume.XXXXXX' where each X is a random
character. We try to detect the latter and remove it without "migrating"
the fastresume to the new saving system.
2018-05-13 15:50:10 +03:00
sledgehammer999
bde736c18a
Merge pull request #8900 from sledgehammer999/fix_delete_logs
Fix deletion of old logs
2018-05-13 15:00:39 +03:00
Chocobo1
61e61a1fd5
Rename variables
Variable name should not start with underscore as C++ standard stated it
is reserved.
2018-05-13 19:24:59 +08:00
Vladimir Golovnev
8906c47798
Merge pull request #8782 from mj-p/filterByHashes
Filter torrent info endpoint by hashes
2018-05-13 13:20:00 +03:00
sledgehammer999
8a99e29122
Merge pull request #8716 from sledgehammer999/move_progress
Move and recheck progress
2018-05-13 13:02:03 +03:00
sledgehammer999
375b15727d
Show rechecking progress
When having big torrents, the rechecking might take a while to
complete. Users need some sort of feedback that progress is being made.
Also, I changed the float to qreal since that's the return type.
2018-05-13 12:32:17 +03:00
sledgehammer999
7484889836
Fix deletion of old logs 2018-05-13 12:11:19 +03:00
Chocobo1
263524e856
Improve "Run External Program" behavior
This follows utorrent behavior: they don't append backslash character at
the end of path variables.
Closes #8836.
2018-05-13 15:21:27 +08:00
Chocobo1
5ae926a376
Refactor code
Add const to variables.
No functionality change.
2018-05-13 15:05:30 +08:00
Chocobo1
92a4e73a22
Apply locale changes immediately in WebUI 2018-05-13 15:05:29 +08:00
Mike Tzou
2230d96705
Merge pull request #8808 from Chocobo1/save
Improve SettingsStorage behavior
2018-05-13 14:24:14 +08:00
sledgehammer999
e5c73cee4a
Log successful torrent move 2018-05-12 20:49:33 +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
adem
b3f98fc975 Update Windows icons 2018-05-12 11:34:53 +04:00
Vladimir Golovnev (Glassez)
88f2a66aac
Fix params handling for some legacy API methods
Closes #8880.
2018-05-12 07:35:35 +03:00
Vladimir Golovnev (Glassez)
0fda49c060
Improve legacy API params handling 2018-05-12 07:35:31 +03:00
Vladimir Golovnev (Glassez)
afcf232bd8
Fix invalid API calls in WebUI
Closes #8899.
2018-05-12 07:35:27 +03:00
Vladimir Golovnev (Glassez)
32e2791f56
Fix compilation with MinGW 2018-05-12 06:24:05 +03:00
Chocobo1
b1304057ec
Fix i18n in WebUI
Closes #8844.
2018-05-11 20:20:51 +08: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
Chocobo1
0b63f35a54
Use 32px icons for favicon
One less resource to manage and 16px size can be downsampled from 32px
on-the-fly anyway.
2018-05-09 15:53:34 +08:00
Mike Tzou
7af83ab704
Merge pull request #8807 from Chocobo1/tracker_msg
Fix displayed tracker message
2018-05-09 14:38:17 +08:00
Mike Tzou
99a1343b9d
Merge pull request #8862 from Chocobo1/cleanup
Code cleanups
2018-05-09 14:33:49 +08:00
Vladimir Golovnev
eab5dad32d
Merge pull request #8860 from Kolcha/mac_warning
Add missing "override"
2018-05-08 17:14:21 +03: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
Nick Korotysh
0b8c620fd3
Add missing "override" 2018-05-08 08:33:07 +03:00
Chocobo1
c0df292567
Remove debug messages 2018-05-08 12:18:18 +08:00
Chocobo1
defba23d61
Refactor code
Remove forward declarations of Qt types.
Fix header include order.
2018-05-08 12:18:18 +08:00
Vladimir Golovnev
48bdd5fa86
Merge pull request #8855 from glassez/fix-prio-api
Fix wrong API method names. Closes #8828
2018-05-08 07:07:31 +03:00
Vladimir Golovnev (Glassez)
85dd446198
Fix wrong API method names
Closes #8828.
2018-05-07 17:46:01 +03:00
Chocobo1
6d923f703a
Fix displayed tracker messages
Before this change, we were displaying debug messages constructed by
libtorrent, now we show messages returned by trackers.

Closes #8739.
2018-05-07 21:49:31 +08:00
Chocobo1
90f42e6737
Refactor functions
Add const to variables
Remove debug messages
2018-05-07 21:49:31 +08:00
Chocobo1
58861c35b0
Fix compile warnings on gcc 8
The warning was:
warning: catching polymorphic type ‘class std::exception’ by value
[-Wcatch-value=]
2018-05-07 21:39:54 +08:00
Chocobo1
203bafc4c3
Revert commit
Apparently the translations were working in previous state, but affected by
lupdate issue:
https://github.com/qbittorrent/qBittorrent/issues/8220#issuecomment-385712673

The reverts commit fb698896c9.
Closes #8831.
2018-05-05 21:46:36 +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
Chocobo1
d20f40184f
Fix translation strings not found
The translation context doesn't exist, so the translations were not found, fixed
now.
Closes #8829.
2018-05-05 21:08: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
ea8c57be23
Sync translations from Transifex and run lupdate 2018-05-05 00:39:47 +03:00
sledgehammer999
90bb67c654
Add RSS/Log widgets to the QTabWidget on macOS
Fixes commit a468c84b30
2018-05-04 19:56:42 +03:00
Marcel Petersen
fc58e8a0c6 Filter torrent info endpoint by hashes
Added hashes parameter to info action.
Allows filtering seralized torrents by passing it into the TorrentFilter.
2018-05-02 10:07:48 +02:00
sledgehammer999
8f7fda492c
Sync translations from Transifex and run lupdate
Closes #8220 #8169
2018-05-01 18:50:24 +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
sledgehammer999
f92d85c536
Merge pull request #8813 from Chocobo1/tr
Fix untranslated string
2018-05-01 17:59:49 +03:00
Chocobo1
9fabe59b80
Fix usage of Q_DECLARE_TR_FUNCTIONS()
The context parameter shouldn't be enclosed in double quotes.
2018-05-01 22:42:55 +08:00
sledgehammer999
6e94b03c13
Fix compilation against libtorrent 1.0.x
Closes #8798
2018-05-01 10:39:53 +03:00
Chocobo1
c61f641613
Fix untranslated string
Closes #8809.
2018-05-01 11:49:10 +08:00
Chocobo1
f6d74e3996
Retry saving settings when operation failed 2018-04-30 13:01:10 +08:00
Chocobo1
099314d17f
Make settings file recovery more robust
We should not blindly remove the leftover settings file, as the following write()
operation could fail and the user would lost all settings.
We should try renaming it instead.
2018-04-30 13:01:10 +08:00
Chocobo1
708b5a6904
Refactor SettingsStorage class
Make use of (i.e. returning) QFile::rename operation status
Make log message more verbose
Add const
Remove empty lines
Inline typedef
2018-04-30 13:01:10 +08:00
sledgehammer999
fb346e15e8
Sync translations from Transifex and run lupdate 2018-04-27 02:04:37 +03:00
Chocobo1
8b575484e6
Fix path separator in log messages 2018-04-24 01:02:54 +08:00
sledgehammer999
b78899cb9a
Merge pull request #8724 from Chocobo1/rand
Use RNG provided by OS
2018-04-22 22:33:16 +03: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
Chocobo1
81a4f3ced0
Use RNG provided by OS
The general consensus is to use random facility provided by OS instead
of using other software random generators.
2018-04-20 23:34:46 +08:00
Chocobo1
970ad7cf28 Sort filenames when creating torrent
First all dir paths are retrieved, then filenames in each path
are retrieved and sorted, then concatenate the sorted filenames together.
2018-04-20 14:35:48 +03:00
toster
c4625f50a8 Pass isAlignmentOptimized flag to piece size calculation 2018-04-20 14:31:20 +03:00
Vladimir Golovnev (Glassez)
001bd38557
Fix pauseAll/resumeAll legacy API methods
Closes #8766.
2018-04-20 14:30:25 +03:00
Chocobo1
68c2d81072
Fix memory leak 2018-04-17 20:34:01 +08:00
Chocobo1
4dea03fc74
Remove unused constants 2018-04-17 20:29:43 +08:00
thalieht
3e4099fe5b Replace the zeroing of pointers with nullptr 2018-04-15 13:06:31 +03:00
Mike Tzou
a70942ed53
Merge pull request #8598 from Piccirello/limit-share-ratio
WebUI Add Limit Share Ratio context menu option
2018-04-15 00:39:27 +08: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
Mike Tzou
1055cc0f45
Merge pull request #8691 from Chocobo1/js
Partially revert "Remove unused JavaScript library"
2018-04-12 00:07:37 +08:00
Thomas Piccirello
9f36b54b04
WebUI Add Limit Share Ratio context menu option
Closes #6815, #7602.
2018-04-11 23:45:54 +08:00
Thomas Piccirello
1f42ab8c4f
Remove unused/superfluous variables 2018-04-11 23:45:54 +08:00
Thomas Piccirello
3f0fbc0810
WebUI rename property to match its definition 2018-04-11 23:45:54 +08:00
sledgehammer999
7e4b62c68d
Merge pull request #8701 from Kolcha/musl-support
Allow to disable Stacktrace support
2018-04-11 17:10:01 +03:00
sledgehammer999
ddba79ef3d
Fix wrong QString::arg() usage that leads to crash
We need to be careful when using the multi-arg version of
QString::arg() and passing as 2nd, 3rd etc parameter an int.
It doesn't do the same as passing multiple QStrings.
2018-04-11 17:01:43 +03:00
Nick Korotysh
7712d0ada0
Allow to disable Stacktrace support
Enable backtrace stuff only if GNU C library used, because current
backtrace implementation based  on  <execinfo.h> , which is not a
part of standard C library, it is a GNU extension.

This will be usefull when building  with  custom POSIX-compilant C
library (like musl) and no <execinfo.h> available.

Note: configure script will detect presence of  <execinfo.h>  and
enable/disable feature depending on it.

Feature is enabled by default.
2018-04-10 20:51:11 +03:00
Mike Tzou
38837db8de
Merge pull request #8699 from Chocobo1/linking
Add helper for loading Windows system functions
2018-04-11 00:13:55 +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
sledgehammer999
341a971cd3
Merge pull request #8711 from sledgehammer999/recheck_paused
Avoid data corruption when rechecking paused torrents
2018-04-10 16:18:12 +03:00
Mike Tzou
fa380c8b2c
Merge pull request #8622 from Chocobo1/formatter
Unify coding style for WebUI files
2018-04-10 14:51:32 +08: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
sledgehammer999
747c70a58e
Avoid data corruption when rechecking paused torrents
Libtorrent can recheck only unpaused torrents. We get around this by
unpausing the torrent, issuing the recheck and pausing again after we
get alerted by libtorrent that the recheck has finished. This alert is
asyncronous. There is a small time frame where the program might start
downloading and writing data to the file before we pause it. This can
lead to data corruption if the file on disk is totally different that
the one expected by the torrent AND the file on disk is a valid file on
its own. OR in case the user points the new torrent to the wrong
directory by mistake.
To get around this the torrent is placed in upload_mode and out of
automanagement.
2018-04-09 23:25:52 +03:00
Vladimir Golovnev (Glassez)
cb505a07fe
Fix setting preferences via WebAPI
Closes #7335.
2018-04-09 18:54:43 +03:00
Chocobo1
5819b6dd39
Use Unicode version of InitiateSystemShutdown 2018-04-09 21:18:07 +08:00
Chocobo1
644e7d0450
Use dynamic linking for SetSuspendState function 2018-04-09 21:18:07 +08:00
Chocobo1
b0e3d77975
Add helper for loading Windows system functions 2018-04-09 21:18:04 +08:00
Chocobo1
643a209812
Sort include headers
Also add anonymous namespace.
2018-04-09 21:16:00 +08:00
Mike Tzou
c3311e83a0
Merge pull request #8687 from Chocobo1/folder
Stop creating Download folder on start
2018-04-09 13:20:48 +08:00
Chocobo1
cf2c0bd47e
Apply formatting to Web UI files 2018-04-07 21:45:56 +08:00
Chocobo1
59e6757242
Avoid showing an empty row in AdvancedSettings
Fixup 543cbc6d1c.
2018-04-05 21:34:07 +08:00
Chocobo1
6bbcf9b3d6
Stop creating Download folder on start
The existence of this folder isn't required to run qbt and it can be
created when adding torrent.
Closes #8290.
2018-04-05 14:12:47 +08:00
Chocobo1
208d21ff73
Add js-beautify config
Try to standardize coding style for HTML & JavaScript via this tool
2018-04-05 12:19:54 +08:00
Chocobo1
2df71dbde5
Partially revert "Remove unused JavaScript library"
This reverts commit 470e993c2d.
2018-04-05 03:22:34 +08:00
Mike Tzou
9e4f246c89
Merge pull request #8672 from Chocobo1/js
Move JavaScript libraries to its own folder
2018-04-04 19:23:10 +08:00
Mike Tzou
e4fc8e4156
Merge pull request #8669 from Chocobo1/runext
Split args manually in runExternalProgram()
2018-04-03 22:19:29 +08:00
Chocobo1
470e993c2d
Remove unused JavaScript library 2018-04-02 01:34:49 +08:00
Chocobo1
cbf10ebb7f
Update clipboard.js to v2.0.0 2018-04-02 01:34:49 +08:00
Chocobo1
89f06274bb
Move JavaScript libraries to its own folder 2018-04-02 01:34:43 +08:00
Chocobo1
c07cd440cd
Split args manually in runExternalProgram()
Need to split arguments manually because QProcess::startDetached(QString)
will strip off empty parameters.
E.g. `python.exe "1" "" "3"` will become `python.exe "1" "3"`.
Closes #8454.
2018-04-01 18:42:42 +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
Chocobo1
65921eaf7b
Remove QPointer wrapper 2018-03-25 15:53:31 +08:00
Chocobo1
bfbd978d3f
Move helper function to Utils::Fs 2018-03-25 13:26:03 +08:00
Chocobo1
1876dbd523
Fix typo 2018-03-25 13:26:02 +08:00
Chocobo1
ea7eb7c0ec
Add delay before processing FS changes
This prevents file renaming errors in monitored folder on linux, for
example: ABC.torrent.part -> ABC.torrent
2018-03-25 13:26:02 +08:00
Chocobo1
19c733ce95
Use specific name for rejected files 2018-03-25 13:26:02 +08:00
Chocobo1
2ba5dd1344
Reduce debug messages 2018-03-25 13:26:02 +08:00
Chocobo1
61eddfce90
Refactor functions in FileSystemWatcher
Use c++11 range-loop
Add const
Better ifdef placement
Inline functions
2018-03-25 13:26:02 +08:00
Chocobo1
0840556f77
Do cleanups in FileSystemWatcher
Use Qt5 connect syntax
Sort headers
Add license
Add anonymous namespace
Replace macro defines with const variables
2018-03-25 13:25:28 +08:00
Chocobo1
ed03456999
Update WebUI to be more compliant with HTML5 standard
Use modern and shorter "charset" attribute.
Remove "type", "charset" attributes in script/style tags, these are redundant in HTML5.
2018-03-23 00:04:43 +08:00
Thomas Piccirello
a15cfae03a Fix spacing 2018-03-21 00:04:21 -04:00
Thomas Piccirello
c2a195360a Resolve JavaScript errors 2018-03-21 00:04:21 -04:00
Thomas Piccirello
a4f99995bb Consolidate CSS into style.css 2018-03-21 00:04:18 -04:00
Thomas Piccirello
16616f4e0e Remove unused CSS from WebUI login page 2018-03-20 15:25:04 -04: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
Vladimir Golovnev
a8dbff06a3
Merge pull request #8607 from glassez/rss
Process loaded RSS articles in case of parsing error
2018-03-19 09:35:30 +03:00
Vladimir Golovnev (Glassez)
d9cd5d4680
Resolve (X)HTML entities in RSS content
Many sites include various HTML entities in the content of RSS feeds.
The most of these entities are not declared in the underlying XML,
so the documents are considered by parser to be malformed.
This patch allows you to successfully parse such soft-malformed
RSS feeds.
Closes #8527.
Closes #8569.
2018-03-18 18:59:55 +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
Vladimir Golovnev (Glassez)
8d285c66aa
Process loaded RSS articles in case of error
For some reason, the RSS feed may contain malformed XML data and it may not be
successfully parsed by the XML parser. We are still trying to load as many articles
as possible until we encounter corrupted data. So we can have some articles even in
case of parsing error.
Closes #8527.
Closes #8569.
2018-03-16 18:29:38 +03: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
Mike Tzou
6ec179e0f7
Merge pull request #8594 from Chocobo1/ui
Properly align text label
2018-03-15 13:41:23 +08:00
Chocobo1
423511765a
Fix typo 2018-03-14 23:37:08 +08:00
Thomas Piccirello
4863078744 Use correct API method URL in WebUI
Fix up 27d8dbf.
Closes #8596.
2018-03-14 03:08:46 -04: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
Vladimir Golovnev
931af6c97e
Merge pull request #8313 from Piccirello/search-categories
Calculate search categories based on selected plugin
2018-03-12 14:29:51 +03:00
Vladimir Golovnev
cea2948593
Merge pull request #8556 from Piccirello/compiler-warnings
Fix missing initializer warning during build
2018-03-12 14:28:38 +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
Thomas Piccirello
7b3e692f68 Fix missing initializer warning
This issue occurs when using gcc versions < 5.
2018-03-12 01:21:21 -04:00
Chocobo1
fdb0d97b28
Remove unused function 2018-03-11 23:27:04 +08: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
Chocobo1
141a2d2856
Prevent detach from containers 2018-03-11 22:25:07 +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
Mike Tzou
7233274110
Merge pull request #8562 from Chocobo1/lint
Fix warnings from clazy
2018-03-11 12:41:58 +08: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
Vladimir Golovnev
4f206f987a
Merge pull request #8561 from glassez/tracker
Properly reply to announce request
2018-03-10 17:08:29 +03:00
Vladimir Golovnev (Glassez)
dfddda57b9
Properly reply to announce request 2018-03-09 17:41:06 +03:00
Mike Tzou
0cacd71503
Merge pull request #8403 from Piccirello/webui-download-height
Make WebUI iframe windows scrollable on iOS. Closes #8401, #7932.
2018-03-09 19:46:29 +08: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
b4f23d8154
Use faster code path
From Qt doc: Using this function is faster than using QFileInfo(file).exists() for
file system access.
2018-03-09 01:34:35 +08:00
Chocobo1
ed310c2dac
Avoid temporary QString allocations
Fix up 0457fd260e
2018-03-09 01:34:35 +08:00
Chocobo1
50167d40d7
Allow ADL lookup for helper function 2018-03-09 01:34:19 +08:00
Mike Tzou
5261d4375f
Merge pull request #8551 from Chocobo1/override
Fix warnings from linters
2018-03-09 00:36:52 +08:00
Thomas Piccirello
0b56cd5fa0 Make WebUI iframe windows scrollable on iOS
Closes #8401, #7932.
2018-03-08 01:30:13 -05:00
Vladimir Golovnev
e22946ef61
Merge pull request #8525 from glassez/url-query
Parse URL query string at application level
2018-03-07 17:16:21 +03: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
307736e263
Fix broken WebUI
Fix up c47e4efade.
Closes #8545.
2018-03-06 14:03:01 +08:00
Mike Tzou
7aa5bc4bc1
Merge pull request #8484 from Piccirello/improve-webui-stats
Improve WebUI stats dialog (addendum to #8349)
2018-03-06 00:49:49 +08:00
Thomas Piccirello
c47e4efade Save WebUI Statistics window size 2018-03-05 01:40:21 -05:00
Vladimir Golovnev (Glassez)
1aca3b0adc
Parse URL query string at application level 2018-03-04 17:08:48 +03: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
Vladimir Golovnev (Glassez)
34295a78f2
Move ByteArray utils into Utils::ByteArray namespace 2018-03-02 17:23:21 +03:00
Mike Tzou
57163612ff
Merge pull request #8427 from Chocobo1/server2
Rewrite RequestParser
2018-03-02 16:07:12 +08:00
Tom Piccirello
1a9b009951 Enable Statistics window to be scrolled and resized
Text may go offscreen due to translations.
2018-03-02 02:18:42 -05:00
Vladimir Golovnev
9406b4b226
Merge pull request #8515 from glassez/webapi
Fix Legacy Web API to be fully available
2018-03-01 09:44:06 +03: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
Mike Tzou
55c3db339b
Merge pull request #8455 from Chocobo1/large_torrent
Fix loading very large torrents. Closes #8449
2018-03-01 13:22:43 +08:00
Vladimir Golovnev (Glassez)
34456a7459
Fix Legacy Web API to be fully available 2018-02-28 18:25:48 +03:00
Vladimir Golovnev
b26eb3d146
Merge pull request #8373 from glassez/search
Improve Search handling
2018-02-28 10:46:33 +03:00
Vladimir Golovnev
7cb6100c9c
Merge pull request #8471 from luis-pereira/use-qstring-ref
Don't create temporary substrings
2018-02-28 10:44:59 +03:00
sledgehammer999
1c2d9c1fe4
Merge pull request #8510 from adem4ik/patch-2
Fix typo in filelogger.cpp message
2018-02-27 17:38:52 +02:00
Mike Tzou
6f7f7d87c6
Merge pull request #8218 from Piccirello/webui-selection-bug
Reselect webui torrents after full_update. Temporary fix for #8209.
2018-02-27 13:33:39 +08:00
Andrei Stepanov
817aadd52d
Fix typo in filelogger.cpp message 2018-02-27 02:00:43 +04:00
Luís Pereira
0e421ae415 Don't create temporary substrings
Avoid temporary string allocations. They are only used to convert to
something else.
QString::xxxRef() returns a QStringRef. QStringRef avoids the memory
allocation and reference counting overhead of a standard QString by simply
referencing a part of the original string.
2018-02-26 11:39:36 +00:00
Thomas Piccirello
2227c3afc1 Reselect torrents in WebUI after full update
Temp fix for #8209.
2018-02-25 01:09:06 -05: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
a65a70ab48
Merge pull request #8479 from thalieht/ratioLimitsCrash
Fix possible crash when using both share limits
2018-02-24 14:11:09 +03:00
Thomas Piccirello
4110bb874f Right align stat values 2018-02-23 14:54:31 -05:00
Thomas Piccirello
5c74f374af Re-order and rename stats 2018-02-23 14:54:24 -05:00
Thomas Piccirello
a8420a43f9 Format Read cache hits as percentage 2018-02-23 14:46:47 -05: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
thalieht
0e30659c26 Fix possible crash when using both share limits
Avoid possible crash in "torrent->name()" when processing seeding time of the torrent that already reached the ratio limit.
2018-02-23 17:13:56 +02:00
Chocobo1
f34dfca5e6
Enable Http/1.1 persistence connection
This enables reusing existing TCP connection instead of opening a new connection
for every request
2018-02-23 14:46:22 +08:00
Chocobo1
cec68c3fd7
Rewrite RequestParser
* Add more checks and also more strict checks for invalid conditions
* Add http version field
* Raise max request size to 64 MB
* Add author in license
* Use Qt5 new connect syntax
2018-02-23 14:46:17 +08: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
f5fc2d52b8
Fix loading very large torrents. Closes #8449.
`torrent_info` constructor has default limits that can't be changed via
parameters, so we handle the loading process manually and explicitly
specifiy the limits to `bdecode()`.
The token_limit is also changed to 10000000.
2018-02-22 18:52:10 +08:00
Mike Tzou
edef85fa3e
Merge pull request #8456 from vit9696/patch-1
Fix compilation with Qt 5.11 on macOS
2018-02-21 23:00:55 +08:00
Mike Tzou
6244ad5fa8
Merge pull request #8458 from luis-pereira/qgetenv
Use qEnvironmentVariableIsEmpty
2018-02-21 23:00:30 +08: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
Vladimir Golovnev
078982ada6
Merge pull request #8424 from glassez/fix-rss
Disable Auto TMM when RSS rule has save path. Closes #8411
2018-02-20 11:13:15 +03:00
Vladimir Golovnev
3035184d25
Merge pull request #8445 from glassez/fix-webapi
Fix POST params handling. Closes #8443
2018-02-20 11:11:33 +03:00
Thomas Piccirello
fccdc7ebdc Remove extra space 2018-02-20 02:22:40 -05:00
Thomas Piccirello
e0c74c2d39 Remove conditionals 2018-02-20 02:22:40 -05:00
Thomas Piccirello
288f372914 Rename onClick property to onclick 2018-02-20 02:16:16 -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
Vladimir Golovnev
387f9b1230
Merge pull request #8438 from Piccirello/webui-proxy-only
Add "Use proxy only for torrents" option to webui
2018-02-20 09:06:30 +03:00