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
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
9612a75faa
Put temporary files in qbt own temp folder
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
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
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
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
Chocobo1
0217d5b4c0
Replace single-character string with character literal
...
Also remove unnecessary dynamic allocation.
2018-07-21 23:26:15 +08:00
Mike Tzou
aed971883d
Merge pull request #9192 from Chocobo1/msg
...
Revise dialog messages
2018-07-18 00:08:00 +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
11cd828e8a
Merge pull request #9186 from glassez/fix-dm
...
Apply proxy settings on DownloadManager creation
2018-07-14 12:01:28 +03:00
Vladimir Golovnev (Glassez)
f7c252886f
Apply proxy settings on DownloadManager creation
2018-07-13 13:18:57 +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
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
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
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
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
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
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
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
thalieht
4022799881
Fix coding style
2018-06-12 07:17:05 +03: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
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
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
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
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
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
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
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
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
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
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 (Glassez)
a54f57611c
Rename torrent if content was initially renamed
...
Closes #8910 .
2018-05-19 20:21:21 +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
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)
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
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
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
Chocobo1
0a49f76c0a
Detect endianness at compile time
2018-05-15 21:02:00 +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
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
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