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
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
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
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
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
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
Vladimir Golovnev (Glassez)
32e2791f56
Fix compilation with MinGW
2018-05-12 06:24:05 +03: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
6b4455e13d
Use qt5 connect() syntax
2018-05-09 16:08:22 +03: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
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
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
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
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
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
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
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
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
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
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
341a971cd3
Merge pull request #8711 from sledgehammer999/recheck_paused
...
Avoid data corruption when rechecking paused torrents
2018-04-10 16:18:12 +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
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
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
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
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
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
Chocobo1
423511765a
Fix typo
2018-03-14 23:37:08 +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
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
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
141a2d2856
Prevent detach from containers
2018-03-11 22:25:07 +08:00
Mike Tzou
7233274110
Merge pull request #8562 from Chocobo1/lint
...
Fix warnings from clazy
2018-03-11 12:41:58 +08: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
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
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
Vladimir Golovnev (Glassez)
1aca3b0adc
Parse URL query string at application level
2018-03-04 17:08:48 +03: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
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
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
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
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
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
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 (Glassez)
a0842a1e68
Don't convert POST parameter names to lower-case
2018-02-18 19:57:48 +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 (Glassez)
176b2eb18b
Disable Auto TMM when RSS rule has save path
...
Closes #8411 .
2018-02-16 14:02:01 +03: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
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
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
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
Stephen Dawkins
2845a791d0
Initial implementation of Smart Filter feature
2018-01-27 09:14:36 +00:00
Vladimir Golovnev (Glassez)
0fc1ad664f
Implement Qt wrapper for std::runtime_error
2018-01-23 11:08:41 +03:00
Vladimir Golovnev (Glassez)
bb683bd393
Switch built-in Web UI html to HTML5
2018-01-23 11:08:37 +03: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
Vladimir Golovnev (Glassez)
1c18edac76
Remove legacy and corrupted RSS settings
2018-01-21 20:01:56 +03:00
Chocobo1
fb698896c9
Fix translation context.
...
Partially addresses #8220 .
Also sort include headers
2018-01-07 23:01:22 +08: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
Vladimir Golovnev (Glassez)
22bdf98617
Don't process new/updated RSS rules when disabled
2017-12-27 20:01:40 +03: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
sledgehammer999
b11c33b2d9
Merge pull request #8068 from thalieht/readableFlags
...
Make peer information flags in peerlist more readable
2017-12-23 19:33:19 +02:00
sledgehammer999
cf9bad03aa
Fix application of speed limits on LAN and μTP connections. Closes #7745 .
2017-12-23 19:19:08 +02:00
sledgehammer999
c5127d2eec
Merge pull request #8091 from sledgehammer999/fix_natural_sort
...
Fix natural sorting
2017-12-23 19:16:29 +02:00
sledgehammer999
5437974b85
Fix natural sorting when the common part of 2 strings ends partially in a number which continues in the uncommon part.
...
Closes #8080 #6732 .
2017-12-21 17:00:37 +02:00
thalieht
5b52835377
Make peer information flags in peerlist more readable
2017-12-20 11:22:23 +02: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
Thomas Piccirello
240f5b6718
Remove invalid subnets directly from list
2017-12-06 20:32:50 -05:00
Thomas Piccirello
d184bd8c82
Perform ip string validation inside setWebUiAuthSubnetWhitelist
2017-12-06 02:05:33 -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
Chocobo1
c1a282aa7b
Fix missing qbt logo on login page in webUI. Closes #7953 .
2017-12-02 14:31:48 +08: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
sledgehammer999
a55be5e58f
Stop logging IP filter parsing errors after a while.
...
When a lot of errors happen the resulting log lines introduce
a huge slowdown of the GUI, due to writing each log line to disk.
Closes #7755 .
2017-11-29 15:49:59 +02:00
sledgehammer999
48c46dc79a
Fix crash on some systems when creating address object for 255.255.255.255
...
Closes #7735 .
2017-11-27 19:06:37 +02: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
Vladimir Golovnev
342f5f1a09
Merge pull request #7821 from glassez/fix-rss
...
Fix RSS Parser. Closes #7751 , #7763 , #7768 , #7786
2017-11-23 14:35:42 +03:00
sledgehammer999
d74efd839f
Merge pull request #7826 from Chocobo1/tcp
...
Change MixedModeAlgorithm default to TCP. Closes #7779 .
2017-11-23 01:53:29 +02:00
Vladimir Golovnev (Glassez)
c0e48627ae
Fix RSS Parser
...
Closes #7751
Closes #7763
Closes #7768
Closes #7786
2017-11-22 19:11:37 +03:00
Chocobo1
534ed91d04
Change MixedModeAlgorithm default to TCP. Closes #7779 .
...
MixedModeAlgorithm::Proportional will throttle TCP connections when utp
is in use and users is expecting maximum speed no matter what, so now
disable the throttling.
2017-11-22 22:39:52 +08:00
thoradia
ca5c1e8a15
Fix missing include in rss_feed.cpp
...
Fixes #7805 .
2017-11-22 14:39:07 +01:00
Chocobo1
433b5a46cf
Fix crash when aborting a torrent creation process. Closes #7783 .
...
The wait time wasn't long enough causing the thread to
terminate prematurely.
Also, to avoid crashing qbt entirely when creating a torrent for a very
big file, I decided to wait indefinitely here.
2017-11-21 18:33:47 +08:00
Chocobo1
034d71dce3
Wrap function into anonymous namespace
2017-11-21 18:23:39 +08:00
sledgehammer999
4927d26877
Fix english typo.
2017-11-21 02:14:44 +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
Vladimir Golovnev (Glassez)
a3c9c1c386
Improve RSS events logging
...
Fix RSS log messages was untranslatable.
Add more logging.
2017-11-09 15:40:39 +03:00
Thomas Piccirello
95bf63330e
Add ip subnet whitelist for bypassing webui auth
2017-11-08 22:39:49 -05:00
sledgehammer999
9f8e7917a8
Merge pull request #7657 from Chocobo1/upnp
...
Disable upnp & nat-pmp on startup if disabled in options. Closes #7338 .
2017-10-31 18:24:28 +02:00
Chocobo1
1b652c882e
Refactor
...
Add const
Use Qt5 connect syntax
2017-10-31 19:09:01 +08:00
Chocobo1
601234e492
Explicitly set UPnP state on start-up. Closes #7338 .
...
libtorrent 1.1 enables upnp by default.
2017-10-31 19:08:58 +08:00
sledgehammer999
6c804edadf
Change default settings for tracker/tier announces to mimick ìTorrent behavior.
2017-10-30 23:27:29 +02:00
sledgehammer999
3a5c0d9818
Allow to specify if announcing to all tiers is desired.
2017-10-30 23:27:28 +02:00
Mike Tzou
e8cf351b6a
Merge pull request #7643 from Chocobo1/email
...
Allow SMTP sender to be set. Closes #7575 .
2017-10-27 12:52:35 +08:00
Chocobo1
fc0628d35b
Allow SMTP sender to be set. Closes #7575 .
2017-10-26 17:57:32 +08:00
Mike Tzou
1f7391737e
Merge pull request #7445 from Chocobo1/fixAddTorrent
...
Disable processing socket events in findIncompleteFiles()
2017-10-25 23:00:35 +08:00
sledgehammer999
50471ec8c8
String fixes and optimizations mentioned by translators on Transifex.
2017-10-24 03:32:56 +03:00
Chocobo1
f3603d05e7
Disable processing events when adding torrents. Closes #7436 .
...
webUI connection timeout & deletion might occur while
doing processEvents() and will result in use-after-free segfault.
2017-10-22 13:54:03 +08:00
Matthew Fioravante
8cd243b06b
Add WebUi\Address config option
2017-10-21 09:32:30 -04:00
Mike Tzou
bd07cb91bb
Merge pull request #7571 from Chocobo1/webui_download
...
[WebAPI] Add parameters for /command/download & /command/upload
2017-10-15 20:32:14 +08:00
Chocobo1
66b86888fc
Add uploadLimit, downloadLimit fields to AddTorrentData & AddTorrentParams
2017-10-11 16:23:58 +08: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
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
0717f0d60c
Save ratio limits as int instead of string
2017-10-08 10:22:40 +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
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
Vladimir Golovnev (Glassez)
3ec992474d
Implement TorrentCategoryDialog class
2017-09-27 21:25:22 +03: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
1fe9272a8f
Merge pull request #7480 from Chocobo1/lastAct
...
Fix last activity calculation
2017-09-26 15:17:35 +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
ef63202be2
Follow project coding style. Issue #2192 .
2017-09-24 16:18:39 +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
sledgehammer999
c7e35a1801
Merge pull request #7451 from sledgehammer999/report_delete_fail
...
Better reporting of success/failure of torrent and file deletion.
2017-09-21 23:36:53 +03:00
Mike Tzou
fc5d49bf9a
Merge pull request #7460 from Chocobo1/tribool
...
Use smaller data type for TriStateBool
2017-09-21 20:17:34 +08:00
sledgehammer999
b9e233601d
Merge pull request #7446 from Chocobo1/utpOnly
...
Add uTP only mode option
2017-09-19 01:45:58 +03:00
sledgehammer999
8f16388915
Better reporting of success/failure of torrent and file deletion.
2017-09-17 23:04:12 +03:00
Chocobo1
d143929454
Use smaller data type for TriStateBool
2017-09-18 02:21:47 +08: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
a1d46a278b
Change default value of m_diskCacheSize. New default is 64 MB.
2017-09-14 20:32:04 +08:00
Chocobo1
855772ae5a
Fix dereferencing freed pointer. Closes #7420 .
...
The torrent is removed from session after `deleteTorrent()`
yet we still invoke `torrent->name()`, thus result in crash.
2017-09-11 13:16:34 +08:00
Vladimir Golovnev
4cd3a37b4a
Fix suggest_mode setting
...
Actually suggest_mode is of type int.
2017-08-31 22:02:52 +03: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
Mike Tzou
1afd5f70dd
Merge pull request #3235 from Chocobo1/session_option
...
libtorrent session options
2017-08-24 11:35:15 +08: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
bda5be8e4c
Skip user input events when adding torrent
...
Closes #7327 .
2017-08-23 11:14:34 +03: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
Chocobo1
2da2054ccf
Use enums for settings
2017-08-21 20:30:26 +08:00
Chocobo1
3f5fa0025d
Add sanitize helper clampValue()
2017-08-21 16:50:56 +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
Eugene Shalygin
ef1597e45b
Fix ignoring of incorrect version strings in search plugins. Closes #7101 .
...
Printing of Version with all components set to zero was segfaulting due
to underflow in array index. Also add log message for such plugins.
2017-08-20 22:44:20 +02:00
sledgehammer999
907f222a73
Switch settings to signed int because libtorrent expects them that way.
2017-08-18 20:21:39 +03:00
sledgehammer999
b649d61e8b
Options to better memory control by libtorrent. Closes #7029 .
2017-08-18 20:21:37 +03:00
sledgehammer999
cccb22f0e3
Merge pull request #7282 from glassez/fsutils
...
Improve utils/fs.* and fix coding style
2017-08-15 22:47:39 +03:00
sledgehammer999
19fcd3dad6
Fix broken build.
2017-08-15 22:12:16 +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
7bb9c69c08
Fix connection problems when a specific interface/ip is configured.
...
Closes #7235 .
Bug related to #7099 and Qt.
2017-08-15 19:33:45 +03:00
sledgehammer999
c2a8970109
Fix calculation of 'Average time in queue' stat under libtorrent 1.1.x
2017-08-15 17:38:41 +03:00
Vladimir Golovnev (qlassez)
59c14801cc
Improve utils/fs.* and fix coding style
2017-08-15 16:17:57 +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
Vladimir Golovnev
219a6b3ad1
Merge pull request #7267 from glassez/remove-temp
...
Don't remove shared temp folder
2017-08-13 17:00:40 +04:00
Vladimir Golovnev (qlassez)
3801150a7a
Don't remove shared temp folder
...
Don't remove shared temp folder when torrent finished and moved to
its "complete" folder. Only torrents with stripped root folder
have subfolder in temp folder so they should remove it.
2017-08-13 14:17:12 +03:00
sledgehammer999
1b8cda7924
Follow project coding style.
2017-08-12 16:23:15 +03:00
sledgehammer999
31a4309077
Catch possible exceptions when parsing IPs. Closes #7249 .
2017-08-12 16:23:14 +03: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
Vladimir Golovnev (qlassez)
7380bfa9e4
Remove legacy RSS settings after converting
...
Closes #7226 .
2017-08-09 22:01:30 +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
e1f514042f
Merge pull request #7207 from glassez/move-torrent
...
Don't replace existing files when manually relocating torrent
2017-08-05 20:26:05 +03:00
Vladimir Golovnev (qlassez)
7d78457fe0
Don't replace existing files when relocating torrent
2017-08-05 20:17:44 +03:00
Vladimir Golovnev (qlassez)
f067b8b37c
Don't remove shared temp folder
2017-08-05 19:53:23 +03:00
Vladimir Golovnev (Glassez)
5f47d3b021
Don't create subfolder inside temp folder
2017-07-29 18:04:23 +03:00
Vladimir Golovnev (Glassez)
d22b626a02
Fix temporary subfolder isn't deleted
2017-07-28 15:16:02 +03:00
Chocobo1
24a69a9fe7
Fix crash when exiting qbt with search plugin dialog open
...
Avoid emitting signal in destructor
2017-07-20 13:26:36 +08:00
vit9696
d25467d3e6
Various macOS UI improvements
2017-07-15 20:49:40 +03:00
Eugene Shalygin
22ea0be917
Merge pull request #7099 from evsh/set-inet-outgoing
...
Set interface for outgoing traffic.
2017-07-13 11:13:07 +02:00
Eugene Shalygin
934133772e
Set interface for outgoing traffic.
...
This sets interface for outgoing traffic to the same as for ingoing
(listetning) with libtorrent 1.1.x.
2017-07-12 21:28:00 +02:00
Chocobo1
0532d546d7
Implement HTTP host header filtering
...
This filtering is required to defend against DNS rebinding attack.
2017-07-12 17:26:13 +03:00
Eugene Shalygin
23616d5dd0
Merge pull request #7064 from evsh/cachesettingvalue-enum
...
Implement enum support in CachedSettingValue
2017-07-11 16:03:20 +02:00
sledgehammer999
7a478424cc
Revert "Drop python2 support.". Closes #7005 .
...
This reverts commit 7d030b4cd9
.
2017-07-06 01:07:09 +03:00
Eugene Shalygin
ff710ebd2c
fixup! Implement enum support in CachedSettingValue
2017-07-05 13:41:08 +02:00
Eugene Shalygin
a22d2f0139
Implement enum support in CachedSettingValue
...
Enums are stored as strings, that improves configuration file
readability and maintainability. String values are obtained via
QMetaEnum, and since with Qt 5.5 QMetaEnum::fromType() includes a
static_assert, this has to be a safe method.
2017-07-05 12:41:58 +02:00
Vladimir Golovnev
4d28f8f48d
Fix RSS with normal links do not work ( #7016 )
...
Fix regression of RSS code redesign.
Closes #7003 .
2017-06-30 11:16:40 +03:00
Vladimir Golovnev
3181469d87
Merge pull request #6911 from tgregerson/tags
...
Add a Tags system to the GUI to expand torrent organization / filtering options. Closes #13 .
2017-06-26 15:57:27 +03:00
Tony Gregerson
467e516801
Add a Tags (multi-label) feature to the GUI. Closes #13 .
...
See https://github.com/qbittorrent/qBittorrent/issues/13 for details.
2017-06-25 13:53:07 -05:00
sledgehammer999
70ae05c3de
Pad shorter python versions. Closes #6877 .
2017-06-25 17:20:51 +03:00
sledgehammer999
7d030b4cd9
Drop python2 support.
2017-06-25 17:20:50 +03:00
sledgehammer999
a77e1c9f36
Use qt5 connect style for searchengine, pluginselectdlg and searchwidget.
2017-06-22 18:54:30 +03:00
sledgehammer999
34c29b78f9
Update the backend when a new plugin favicon is downloaded.
2017-06-15 22:32:43 +03:00
sledgehammer999
793ed7148f
Remove code that expects bundled search plugins.
2017-06-15 22:32:40 +03:00
sledgehammer999
4ab117d946
Remove possible double check of the same thing.
2017-06-15 22:32:38 +03:00
sledgehammer999
d88f0f36e0
Merge pull request #6889 from Chocobo1/lowercase
...
Convert all http header name constants to lowercase
2017-06-14 02:38:57 +03:00
Chocobo1
8419ca87f9
Fix KEEP_ALIVE_DURATION value
...
I intended to specify 7 seconds, which should be 7000 milliseconds
2017-06-07 21:45:47 +08:00
Vladimir Golovnev
c503583046
Merge pull request #6864 from glassez/rss
...
Improve RSS Article handling
2017-06-02 19:47:08 +03:00
Chocobo1
45c21f62f9
[WebAPI] Convert all header name constants to lowercase
...
This save us another transition when some day we implements HTTP/2
(which all headers are in lowercase).
2017-06-02 21:55:16 +08:00
sledgehammer999
b5c0d90e9c
Merge pull request #6842 from Chocobo1/countPieces
...
[TorrentCreator] Show total number of pieces. Closes #6774 .
2017-06-02 08:56:10 +03:00
Chocobo1
087856d3d8
[WebUI]: Implement CSRF defense
...
Bump API version
2017-06-01 19:37:57 +03:00
Vladimir Golovnev (Glassez)
4021bf68f7
Use constants for article field names in RSS::Feed
2017-06-01 16:04:11 +03:00
Vladimir Golovnev (Glassez)
02f77a05dc
Improve RSS article parsing
...
Use QLatin1String for string literals.
Use predefined constants for article hash table keys.
2017-06-01 16:04:10 +03:00
Vladimir Golovnev (Glassez)
080dd79875
Store all RSS Article data in auto downloading job
2017-06-01 16:04:04 +03:00
Vladimir Golovnev (Glassez)
475348595c
Improve RSS::Article class
...
Store more RSS article fields.
Don't use legacy article field names in Parser code.
2017-06-01 15:57:14 +03:00
sledgehammer999
d3ccbe4f86
Fix format-truncation warning.
2017-06-01 01:09:25 +03:00
Eugene Shalygin
74cecb1b6c
Replace C-style casts with C++ ones
2017-05-29 17:25:42 +02:00
Noam Gal
bd90614413
Get more RSS article data
2017-05-28 10:17:59 +03:00
Vladimir Golovnev
e3671050d1
Merge pull request #6840 from glassez/statusbar
...
Add show/hide statusbar option (Supersede #4029 )
2017-05-27 22:22:34 +03:00
Mike Tzou
20f6bf817e
Merge pull request #6836 from Chocobo1/api
...
[WebAPI] Get piece information/state
2017-05-27 18:28:22 +08:00
Chocobo1
c618214061
[TorrentCreator] Show number of pieces. Closes #6774 .
2017-05-27 16:37:08 +08:00
Mike Tzou
b6080c19c2
Merge pull request #6834 from Chocobo1/cookie
...
[WebUI] Make cookie parsing robust
2017-05-26 23:56:35 +08:00
Chocobo1
3933790bda
Add new webUI API. Closes #6457 .
...
Now getting piece information for a specific torrent is possible via:
* Returns an array of states (integers) of pieces in order. Defined as:
"0=not downloaded", "1=downloading", "2=downloaded".
GET /query/getPieceStates/<torrent_hash>
* Returns an array of hashes (strings) of pieces in order:
GET /query/getPieceHashes/<torrent_hash>
2017-05-26 14:37:03 +08:00
takiz
0940a8a764
Add show/hide statusbar option
2017-05-25 16:35:21 +03:00
Chocobo1
712e6a0e5c
Refactor out helper function Utils::String::unquote
...
Remove redundant include
2017-05-25 18:44:35 +08:00
Mike Tzou
1f9ccb44a3
Merge pull request #5196 from Chocobo1/creator_pr
...
Revamp Torrent creator
2017-05-24 17:40:10 +08:00
Mike Tzou
92decf83b8
Merge pull request #6330 from Chocobo1/rename
...
Fix renaming files is not case sensitive on Windows platform
2017-05-24 13:12:30 +08:00
Chocobo1
7e87eeb2d4
Use QThread::requestInterruption() instead of m_abort flag
2017-05-24 11:54:42 +08:00
Chocobo1
d277696acc
Add global.h file
2017-05-24 11:54:42 +08:00
Chocobo1
386b93bb0f
Fix the file size sum igonred files starting with a dot: ".name"
...
Make the computation iterative instead of recurisve to avoid stack overflow.
Enlarge read size to enable better performance.
Remove `QFile::close()` calls, QFile automatically close them in dtor.
2017-05-24 11:54:42 +08:00
Chocobo1
8efcc335de
Switch to use SettingsStorage class
2017-05-24 11:54:42 +08:00
Chocobo1
009798f690
Follow header include rule
2017-05-24 11:54:42 +08:00
Chocobo1
d8c0a40b1f
Add explicit error handling when filesCount() returns negative value
...
Fix coverity CID 162538
2017-05-20 14:01:58 +08:00
Chocobo1
562080de69
Initialize variable
...
Fixes coverity CID 161628
2017-05-20 11:38:39 +08:00
Naikel Aparicio
9ba00d7035
Implemented share limit by seeding time
2017-05-17 14:33:17 -04:00
Eugene Shalygin
71ce193f5a
Fix cmake build broken by #6724 .
...
PR #6724 deletes two source files, let's delete them from
CMakeLists.txt.
2017-05-16 18:55:52 +02:00
Eugene Shalygin
4d53d8d1ba
Merge pull request #6785 from KingLucius/freespaceondisk
...
Get disk free space size via QStorageInfo instead of native API. Closes #6780
2017-05-16 18:19:16 +02:00
Vladimir Golovnev
44f8a48d73
Merge pull request #6724 from glassez/libt11
...
Don't use features, deprecated in libtorrent-1.1
2017-05-16 18:54:00 +03:00
KingLucius
aea887a30f
cross-platform free space on disk
2017-05-15 23:05:23 +02:00
Chocobo1
3fb8ff281f
Tweak CachedSettingValue
...
* Add another constructor to save a call to proxyFunc when its not needed
note that this call is a virtual function call
* Pass in proxyFunc by const reference
* Move get methods together
2017-05-15 12:31:26 +08:00
Chocobo1
b9403774e6
Use QBT_EXT in all places
...
Cleanup headers on the way
2017-05-13 16:20:32 +08:00
Eugene Shalygin
92a7479e2d
Merge pull request #4994 from evsh/availability-column
...
Add availability column to torrent contents
2017-05-12 17:47:51 +02:00
Eugene Shalygin
5c10a24923
Add availability column to torrent properties window
2017-05-12 17:15:00 +02:00
Eugene Shalygin
bc18bf1ab4
Add TorrentHandle::availableFileFractions() function
...
The function returns list of availability values for all torrent files.
The availability here is different to that one in the progress bar. Here
it shows what part of the file's pieces is available (i.e. we do not count
availability > 1 for a piece).
2017-05-12 17:14:59 +02:00
Vladimir Golovnev
f3658daf72
Merge pull request #6699 from fbriere/issue/6265-top-dirname-while-adding
...
Use actual top-level dirname to look for incomplete files in new torrent
2017-05-11 15:23:16 +03:00
Vladimir Golovnev
692e4a986a
Merge pull request #6757 from glassez/rss
...
Forward add/remove child RSS Item event as set of add/remove Articles events
2017-05-10 16:58:49 +03:00
Vladimir Golovnev (Glassez)
fbda237cc4
Fix local IP addresses
2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
26f645bd6c
Don't create redundant "buf" variable
2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
a4d2df575e
Don't use deprecated torrent_handle::set_tracker_login
2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
1d3dbcb9d2
Don't use deprecated fields of torrent-related alerts
2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
5dc54aa224
Don't use deprecated torrent_status fields
2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
72a54910e9
Don't use deprecated peer_info fields
2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
a2f82be6c2
Don't use deprecated url_seed_alert fields
2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
13b04f8d2d
Don't use deprecated settings_pack members
2017-05-10 13:54:27 +03:00
Vladimir Golovnev (Glassez)
bdca55f15c
Use new Session Statistics feature
2017-05-10 13:24:51 +03:00
Vladimir Golovnev (Glassez)
8a6d8f3953
Use cached SessionStatus and CacheStatus
2017-05-10 13:24:37 +03:00
Vladimir Golovnev (Glassez)
78d6b14fe8
Don't use deprecated torrent_info fields
2017-05-10 12:43:49 +03:00
Chocobo1
446b3307f9
Make method const
2017-05-09 14:21:55 +08:00
Chocobo1
b4baeaaf23
Pass arguemnts by const reference
2017-05-09 14:15:45 +08:00
Chocobo1
42c17ea5ce
Fix argument name differ in definition & declaration
2017-05-09 14:12:36 +08:00
Chocobo1
3739bcc270
Initialize struct member
2017-05-09 13:51:12 +08:00
sledgehammer999
d61fc7e820
Merge pull request #3858 from Chocobo1/screen_center
...
Fix dialogs didn't position on the correct screen
2017-05-07 22:17:55 +03:00
Vladimir Golovnev (Glassez)
a36848b5c0
Forward add/remove child RSS Item as add/remove Articles
2017-05-07 18:49:21 +03:00
Vladimir Golovnev (Glassez)
f8debdea67
Fix Item::unreadCountChanged() emit in wrong place
2017-05-07 18:40:42 +03:00
Vladimir Golovnev
c1e3e2a745
Revert "Guard the flag used for deferred session configure." ( #6733 )
...
This reverts commit 5cbc7b16c0
.
2017-05-02 14:39:47 +03:00
Chocobo1
7d1ac06ce2
Fix stack overflow in Utils::Gzip::decompress
...
Anyway, use std::vector to allocate memory on the heap (in compress() too)
2017-05-02 12:47:07 +08:00
Chocobo1
2258e4d5ed
Fix automatedrssdownloader position
2017-05-01 15:32:08 +08:00
Chocobo1
933f9f1451
Fix optionsdlg position
2017-05-01 15:31:58 +08:00
Chocobo1
7eaa5987c8
Fix dialogs didn't position on the correct screen which qBittorrent window is on. Closes #1690 , #2474 , #3538 .
2017-05-01 14:33:25 +08:00
sledgehammer999
4ea9a2f07e
Merge pull request #5532 from briankendall/torrent_command_line_arguments
...
Command line arguments for specifying options when adding torrents
2017-04-30 22:25:21 +03:00
Brian Kendall
eba41978b0
Added command line arguments for specifying options when adding torrents
...
Arguments include adding torrents as paused/started, skiping hash check, setting category, downloading in sequential order, downloading first and last pieces first, and skipping the 'add new torrent' dialog. Added TriStateBoolOption class for specifying options that don't have a default value when unused (e.g. add-paused). Also improved command line usage text to include more information, have better organization, and not exceed 80 columns in width. Also also added firstLastPiecePriority field to BitTorrent::AddTorrentData, and modified TorrentHandle so that if first/last piece priority should be on, it will be toggled on after the torrent's metadata has loaded.
2017-04-30 14:22:30 -04:00
sledgehammer999
0a5bb6685f
Merge pull request #6654 from Chocobo1/persistence
...
Webui server fixes
2017-04-30 16:34:23 +03:00
Frédéric Brière
e8f6149a6d
findIncompleteFiles(): Replace dir listing with individual checks. Closes #6265 .
...
Looking for incomplete files in a new torrent by using a pre-generated
directory listing presents several disadvantages:
- It requires us to extract the top-level directory name (in case it
was renamed).
- It requires us to know whether the top-level directory was stripped.
- In the latter case, it may result in recursively traversing the
entire contents of all downloaded torrents.
Calling QFile::exists() individually for each file solves all these
issues.
In so doing, the handling of single-file and multiple-file torrents are
rendered pretty much identical, and can therefore be merged.
2017-04-30 09:26:58 -04:00
Eugene Shalygin
172991e068
Merge pull request #6703 from evsh/cmake
...
cmake: set warning and error compiler options
2017-04-29 14:11:09 +02:00
Eugene Shalygin
c4e16aa820
cmake: set warning and error options
...
The set is far from perfect, but guards against common errors with GCC.
2017-04-29 13:30:28 +02:00
Vladimir Golovnev
93df0ef1d1
Move AddTorrentParams to its own header ( #6712 )
...
* Move AddTorrentParams to its own header
* fixup! Move AddTorrentParams to its own header
2017-04-29 11:49:40 +03:00
Vladimir Golovnev
70f1153413
Merge pull request #6694 from glassez/remove-temp
...
Remove torrent temp folder when it becomes unneeded
2017-04-29 11:44:15 +03:00
Vladimir Golovnev (Glassez)
160b7ff2d3
Remove torrent temp folder when torrent is deleted
2017-04-28 16:52:16 +03:00
Vladimir Golovnev (Glassez)
c56b4a25bc
Remove torrent temp folder if it becomes unneeded
2017-04-28 12:30:48 +03:00
sledgehammer999
74fb070e78
Merge pull request #6693 from glassez/drop-qt4
...
Drop rest of qt4 support code
2017-04-26 15:12:55 +03:00
Vladimir Golovnev (Glassez)
335443e6a0
Drop QThread::msleep wrapper
2017-04-26 10:44:47 +03:00
sledgehammer999
b71ee80ecd
Optimize P2P filter parsing too.
2017-04-26 02:33:57 +03:00
sledgehammer999
fd7e69e1e0
Add helper function for logging messages.
2017-04-26 02:33:56 +03:00
sledgehammer999
51cf6bd2a5
Optimize DAT filter parsing. Parse in memory and in place instead of copying strings around.
2017-04-26 02:33:55 +03:00
sledgehammer999
8f6e04d779
Using new IP parser provided by @evsh. It is faster and uses less memory.
...
Class `DATIPv4Parser` was written by Eugene Shalygin <eugene.shalygin@gmail.com> (evsh on github).
2017-04-25 04:43:30 +03:00
sledgehammer999
f53dab8ad4
Output log messages for ip filter parsing errors.
2017-04-25 04:43:29 +03:00
sledgehammer999
05ab9fc355
Optimize ip filter parsing.
2017-04-25 04:43:22 +03:00
Vladimir Golovnev (Glassez)
3a3125ea2b
Fix remove oldest article
2017-04-24 16:50:28 +03:00
Vladimir Golovnev
e433cbab97
Merge pull request #6677 from glassez/fix-create-subfolder
...
Allow strip root folder using default settings
2017-04-24 12:21:53 +03:00
Vladimir Golovnev (Glassez)
c799923d7d
Allow strip root folder using default settings
2017-04-24 12:03:35 +03:00
Vladimir Golovnev (Glassez)
711be50e9c
Fix AddTorrentData field types
2017-04-24 11:59:16 +03:00
sledgehammer999
032eb12585
Remove whitespace.
2017-04-24 04:25:49 +03:00
sledgehammer999
3cdc6fb978
Fix compiler warnings.
2017-04-24 04:24:32 +03:00
zywo
51104a9fb4
Fix CMake build
2017-04-23 09:29:27 +01:00
Vladimir Golovnev (Glassez)
989a70fe60
Redesign RSS subsystem
2017-04-23 09:03:46 +03:00
Eugene Shalygin
090a2edc1a
Merge pull request #6651 from evsh/fix-config-dir-on-windows
...
Migrate from platform-specific code in Private::DefaultProfile to QStandardPaths
2017-04-22 13:09:17 +02:00
Eugene Shalygin
14e168039c
Use explicit class for search plugin versions
2017-04-21 09:47:08 +02:00
Chocobo1
0b5de9ff54
Temporary revert to the old behavior.
2017-04-20 22:26:35 +08:00
Chocobo1
a35c6426ab
Specify lib requirement: zlib >= 1.2.5.2
2017-04-20 22:26:35 +08:00
Chocobo1
617f19e599
Revise Utils::Gzip::decompress
...
Rename from uncompress to decompress
Change signature
Use proper casting
Use larger buffer for the output of inflate()
Reserve 1 MBytes for output buffer
Change function signature
2017-04-20 22:26:35 +08:00
Chocobo1
302c8ba850
Revise Utils::Gzip::compress code
...
Change signature
Add ZLIB_CONST define to make z_stream.next_in const
Cast to zlib defined type Bytef*
Set memLevel to 9 in deflateInit2() for maximum performance
Revise compression loop
On returning false, free memory correctly by calling deflateEnd()
Reserve space by the estimation of deflateBound()
2017-04-20 22:24:50 +08:00
Chocobo1
94b496354b
Rewrite rules for gzipping http response content
2017-04-20 22:22:17 +08:00
Chocobo1
4600e679d1
Implement robust acceptsGzipEncoding()
...
Adhere more to http/1.1 standard
2017-04-20 22:22:17 +08:00
Chocobo1
129172453b
Fix "Content-Encoding" header is always created.
...
Was side effect of operator[]
2017-04-20 22:22:17 +08:00
Chocobo1
7d36c81949
Cleanup Http::responseGenerator()
...
Add CRLF definition
Rewrite loop using iterator, slightly more efficient
Rename variables
2017-04-20 22:22:17 +08:00
Chocobo1
6cb2f05a6c
Demote to helper function
...
Rename function
2017-04-20 22:22:17 +08:00
Chocobo1
829e1399ca
Convert Qstring to char arrays
...
Cleanup header
Sort constants
2017-04-20 22:22:17 +08:00
Chocobo1
4b2266a8e2
Send Date http header
...
It's not strict required but often expected.
change class to namespace
cleanup header
2017-04-20 22:22:17 +08:00
Chocobo1
9496b2a159
Always send Content-Length header.
...
Because without it, HTTP/1.1 (with persistence connection) clients will
keep waiting for more data.
2017-04-20 22:22:17 +08:00
Chocobo1
0b28fb6c6b
Implement http persistence connection
...
Max simultaneous connection limit set to 500
This also release allocated memory of Connection instances at runtime instead of at program shutdown.
2017-04-20 22:22:14 +08:00
Eugene Shalygin
b06080e2e7
Replace platform-specific code in Private::DefaultProfile with QStandardPaths.
...
This should also fix Profile::location(SpecialFolder::Config) on
Windows.
2017-04-19 12:51:07 +02:00
sledgehammer999
018574e546
Merge pull request #6475 from OpenGG/master
...
[WebUI-API] Add "skip_checking" and "paused" to "/command/download" and "/command/upload"
2017-04-17 17:12:24 +03:00
sledgehammer999
48b0cf8a48
Merge pull request #6621 from Chocobo1/webui
...
Webui: refactor
2017-04-17 17:08:25 +03:00
sledgehammer999
ae0ec716cb
Fix inverted check when applying the IP filter.
2017-04-17 17:07:12 +03:00
sledgehammer999
c27108c97a
Merge pull request #6630 from evsh/fix-6454
...
Start up torrents after UI was created. Fixes #6454 .
2017-04-17 16:44:03 +03:00
Vladimir Golovnev (Glassez)
22178f9997
Fix strip torrent root folder
2017-04-15 17:33:20 +03:00
Vladimir Golovnev (Glassez)
6d7d566cdf
Fix TorrentHandle rootPath() and contentPath() methods
2017-04-15 10:11:53 +03:00
Vladimir Golovnev (Glassez)
d413bc65ef
Improve strip torrent root folder
...
Fix issue when you rename the "root item" in the "Add New Torrent" dialog
and uncheck "Create subfolder", it will create the subfolder with the
renamed name.
Fix PropertiesWidget first folder is expanded after app restart.
Strip root folder if torrent was added via magnet link.
Fix crash when you get name of torrent without metadata.
2017-04-15 10:11:53 +03:00
sledgehammer999
4b2d8a7941
Setting for creating subfolder on multifile torrents. Closes #588 .
2017-04-15 10:11:53 +03:00
Eugene Shalygin
21a72c651f
Start up torrents after UI was created. Fixes #6454 .
...
Commit dd0537d
changed torrents startup code adding alerts processing
into it. Therefore alerts were processed before UI code subscribed to
signals and therefore part of alerts was not reflected in the UI.
Thus here we do not start torrents in Session constructor, but do that
from Application::exec() after UI was constructed and is ready to process
signals.
2017-04-14 00:58:43 +02:00
Eugene Shalygin
a8d95dd8bd
Save relative paths in fastresume files
...
Conditionally change absolute paths to relative in the fastresume data files.
The condition is specified by user via a command line parameter and
paths are relative to the profile dir.
On Windows the convertion to relative path is performed if the path and
the profile are on the same drive only.
2017-04-12 00:51:37 +02:00
Eugene Shalygin
0bf7fa15c1
Replace wrappers in base/utils/fs.h with Profile::SpecialFolders::location()
2017-04-12 00:50:33 +02:00
Eugene Shalygin
0f746ffd5a
Add support for different configurations. Partially closes #465
...
It may be useful to have different configurations either for portable
versions or for debugging purposes. To implement this we add two
options, avaliable via command line switches
1. An option to change configuration name ("--configuration"). The name
supplied via this option is appended to
QCoreApplication::applicationName() to form "qBittorrent_<conf_name>"
name for the configuration files.
2. An option to provide a path do directory where all the settings are
stored (kind of profile directory). There is a shortcut "--portable"
which means "use directory 'profile' near the executable location".
In order to implement that we have to perform initialisation of the
profile directories before the SettingStorage and Preferences singletones
are initialised. Thus, options parsing shall be performed without defaults
read from preferences.
2017-04-12 00:50:28 +02:00
Chocobo1
d1ee54f6ea
Refactor: move methods under the same #if section.
2017-04-11 23:16:16 +08:00
Chocobo1
7f346b49a7
Refactor: move the validation of certificates & key functions under Server class
...
Rename method
Add log messages
2017-04-10 21:18:59 +08:00
opengg
db3158c410
[WebUI] bugfix: RequestParser::splitMultipartData
drop extra trailing newline.
2017-03-11 01:26:22 +08:00
sledgehammer999
9eb01fbe4d
Merge pull request #6489 from evsh/fix-fileguard
...
Fix TorrentFileGuard::setAutoRemove() recursion problem. Closes #6488 .
2017-03-08 12:18:58 +02:00
Eugene Shalygin
3091e03a95
Fix CMake build
2017-03-08 09:12:49 +01:00
Eugene Shalygin
3752d112fb
Fix TorrentFileGuard::setAutoRemove() recursion problem. Closes #6488 .
...
The problem was created during Qt 4 drop, when FileGuard was promoted
from a member to a base class. The function was blindly changed.
2017-03-08 09:05:58 +01:00
sledgehammer999
729fbb2e50
Change named of getter function.
2017-03-08 00:16:25 +02:00
sledgehammer999
aa51907387
Merge pull request #6369 from magao/issue6367
...
Use Perl-compatible regexes for RSS rules. Closes #6367 .
2017-03-08 00:04:17 +02:00
sledgehammer999
be60b3e046
Change the user-agent format in the session.cpp too.
2017-03-07 23:41:29 +02:00
sledgehammer999
147f4d76e2
Merge pull request #6445 from Chocobo1/fix
...
Follow http user-agent format
2017-03-07 23:38:14 +02:00
sledgehammer999
7a6da3d3ce
Merge pull request #6479 from Chocobo1/qt4
...
Remove remainings of Qt4
2017-03-07 23:28:56 +02:00
sledgehammer999
431658bee6
Fix race condition where there was a chance to allow all ips between reparsings of the ip filter.
2017-03-07 23:16:50 +02:00
sledgehammer999
5084c01c2b
Merge pull request #5877 from dzmat/to_pull_request
...
locally banned IP list managment (Closes #1837 )
2017-03-07 23:14:20 +02:00
Vladimir Golovnev (Glassez)
79e8f69fb6
Remove exception-suppress macros
...
Remove SAFE_* macros from TorrentHandle class.
These macros using seems to be unneeded.
2017-03-07 15:04:57 +03:00
Chocobo1
fa2128cbae
Replace Utils::String::fromStdString() by QString::fromStdString()
2017-03-07 19:42:44 +08:00
Chocobo1
87384ca2a2
Replace Utils::String::toHtmlEscaped() by QString::.toHtmlEscaped()
2017-03-07 00:03:53 +08:00
Chocobo1
ffdcfe9686
Replace Utils::String::toStdString() by QString::toStdString()
2017-03-06 23:58:38 +08:00
Chocobo1
7539bee5c5
Remove remaining QBT_USES_QT5 defines.
...
Fixup of e64bb1de8c
.
2017-03-06 23:47:07 +08:00
dzmat
59de1af31b
implemented UI for managment of locally banned IP list ( Closes #1837 )
2017-03-06 19:40:34 +07:00
Chocobo1
2091dfaa69
Follow http user-agent format
...
Add version variable without the starting "v"
2017-03-06 14:42:32 +08:00
Chocobo1
cb1646be32
Prepend QBT_ for preprocessor variables
2017-03-06 13:41:58 +08:00
Eugene Shalygin
008d7dbedc
Raise minimal Qt version to 5.5.1
2017-03-05 22:24:59 +01:00
Eugene Shalygin
e64bb1de8c
Drop Qt 4 support
2017-03-05 22:24:59 +01:00
sledgehammer999
22989a436e
Merge pull request #6461 from Chocobo1/rand_fix
...
Workaround thread_local on osx
2017-03-05 14:43:29 +02:00
Chocobo1
cae2f3059c
Workaround thread_local not supported on OSX
...
Drop back to xcode7.3 on TravisCI
2017-03-04 20:37:48 +08:00
Chocobo1
3b5e7eb0ea
Fix compile error: ‘escape’ is not a member of ‘Qt’
2017-03-04 16:22:00 +08:00
Chocobo1
ea9d65f377
Fix incomplete type compile error with Qt4
2017-03-04 16:20:36 +08:00
Chocobo1
6ca3e4f094
Add Utils::String::toHtmlEscaped
2017-03-03 21:28:30 +02:00
Chocobo1
7756dd80f3
[WebUI]: add X-XSS-Protection, X-Content-Type-Options, CSP header
2017-03-03 21:28:28 +02:00
ngosang
f5ad04766f
[WebUI] Avoid clickjacking attacks
2017-03-03 21:28:27 +02:00
Chocobo1
f9c39e3dac
[WebUI]: exclude insecure ciphers
2017-03-03 21:28:26 +02:00
Chocobo1
84bc011df5
Code formatting
...
Remove extra private keyword
2017-03-03 21:28:25 +02:00
sledgehammer999
b5f81a34cb
Use new create_torrent constructor were available.
2017-02-22 19:25:50 +02:00
sledgehammer999
ad4b691fa5
Merge pull request #6413 from evsh/no-proxy-in-webui-server
...
Disable proxy in WebUI HTTP server. Closes #6349 .
2017-02-21 13:15:22 +02:00
Eugene Shalygin
be8eab4e54
Disable proxy in WebUI HTTP server. Closes #6349 .
...
Due to a bug in Qt 5.8 (QTBUG-58706) QTcpServer tries to use HTTP proxy
when it is set as default app proxy (for instance via "http_proxy"
environment variable) and this breaks the server. So we disable any proxy
in it.
2017-02-21 00:07:09 +01:00
sledgehammer999
4adcd03ec7
Merge pull request #6366 from Chocobo1/rand
...
Replace rand()
2017-02-20 01:49:27 +02:00
Chocobo1
511796f74e
Replace rand() by a true uniform distribution generator
2017-02-16 12:21:26 +08:00
Chocobo1
c7d10dc091
Turn off port forwarding of WebUI by default for GUI users
2017-02-16 12:21:26 +08:00
Tim Delaney
a844ccb06a
Cache rule regular expressions for performance
...
--HG--
branch : magao-dev
2017-02-11 18:43:50 +11:00
Tim Delaney
f9abd254f4
Use Perl-compatible regexes for RSS rules. Closes #6367 .
...
--HG--
branch : magao-dev
2017-02-11 16:33:18 +11:00
sledgehammer999
d045f64ebb
Merge pull request #6288 from Falcosc/fix_add_torrent_queue_overflow
...
fix queue overload for add torrent at session start
2017-02-08 22:46:58 +02:00
falco
ee239ddd1e
fix queue overload for add torrent at session start
2017-02-08 15:13:21 +00:00
sledgehammer999
73f762250c
Merge pull request #6358 from Chocobo1/coverity
...
Fix issues on coverity
2017-02-08 15:34:45 +02:00
Chocobo1
4ad541d066
Fix coverity issues
...
torrentcontentmodel: Use a variable to store filesCount
optionsdlg: add fallthrough comment to suppress warning
speedPlotview: initialize member
misc: fix wrong type used, add spaces
2017-02-08 13:49:47 +08:00
Chocobo1
cab10aa7b4
Use QString::toStdString()
...
Qt5 utilized the desired toUtf8() instead of toAscii().
2017-02-08 13:21:36 +08:00
sledgehammer999
179b686e42
Merge pull request #6176 from magao/issue873
...
Improve UI responsiveness during RSS downloading. Closes #873 , #1089 , #1235 , #5423
2017-02-06 16:17:08 +02:00
sledgehammer999
25c7c297e8
Merge pull request #6317 from dzmat/public_to_private
...
reduce methods accessibility from public to private
2017-02-06 00:11:38 +02:00
sledgehammer999
5046c36458
Immediately update torrent_status after manipulating super seeding mode. Partially fixes #6072 .
2017-02-05 22:02:33 +02:00
Tim Delaney
c0339d4f6a
Fix regex RSS matching. Closes #6337 .
...
--HG--
branch : magao-dev
2017-02-05 08:53:33 +11:00
dzmat
b167b4174e
reduce methods accessibility from public to private
2017-01-29 15:17:55 +07:00
Tim Delaney
5d185f1fcd
Fix compilation error on Qt<5.4. Closes #6170 .
...
--HG--
branch : magao-dev
2017-01-27 14:24:51 +11:00
sledgehammer999
3b3de81cb7
Merge pull request #6181 from magao/issue6170
...
RSS episode filter improvements. Closes #800 , #2749 , #3876 , #6170 .
2017-01-26 01:02:05 +02:00
sledgehammer999
354702140a
Merge pull request #6180 from magao/issue6171
...
Allow | in RSS must contain. Closes #6171 .
2017-01-25 23:27:59 +02:00
sledgehammer999
b9b8352a31
Merge pull request #6184 from magao/issue5539
...
RSS: allow resetting rule to no category. Closes #5539 .
2017-01-25 23:20:19 +02:00
sledgehammer999
077ad6506c
Merge pull request #6175 from magao/issue6167
...
Move old RSS items to separate config file. Closes #6167 .
2017-01-22 04:47:52 +02:00
sledgehammer999
043ae1eb17
Merge pull request #6278 from Falcosc/fix_incompleate_file_crash
...
fix index overflow for torrents with invalid meta data or empty progress
2017-01-22 01:14:16 +02:00
sledgehammer999
9225d9ab2b
Merge pull request #6279 from evsh/cmake
...
cmake: compilation fixes
2017-01-21 18:28:54 +02:00
Eugene Shalygin
13d9dea8ac
cmake: make LibtorrentRasterbar::LibTorrent public dependency of qbt_base
...
If libtorrent include directory not in the compiler search path, we have
to pass it to all qbt targets, because session.h includes
libtorrent/version.hpp
2017-01-21 16:40:44 +01:00
Falco
84759d4f20
fix index overflow for torrents with invalid meta data or empty progress
2017-01-21 14:35:09 +01:00
sledgehammer999
5b35981c85
Merge pull request #5774 from thalieht/unit_precision
...
Increase number of digits after the decimal point. Closes #5053
2017-01-21 14:05:26 +02:00
thalieht
f8213f5d56
friendlyUnit: Properly replace spaces with non-breaking spaces
2017-01-21 12:03:05 +02:00
thalieht
311b060c70
Increased number of digits after the decimal point for Gibibytes and above
2017-01-21 12:02:15 +02:00
sledgehammer999
f4fa000ba3
Polish previous commit.
2017-01-21 02:59:33 +02:00
sledgehammer999
68ecbf4185
Merge pull request #5420 from thalieht/alignment
...
Changes and additions in search, peerlist, transferlist
2017-01-21 02:58:32 +02:00
sledgehammer999
c8ddd68a7a
Merge pull request #6212 from magao/issue2192
...
Follow project coding style. Issue #2192 .
2017-01-20 23:13:06 +02:00
sledgehammer999
1376d8fa7b
Merge pull request #6084 from Chocobo1/set_locale
...
Set default locale
2017-01-20 20:14:20 +02:00
Chocobo1
0517a3eb63
Fix rss icon too large in rss settings dialog
...
Give a name to the rss icon (in .ui file)
Add helper function: Utils::Misc::largeIconSize()
Group functions under the same #ifdef
2017-01-20 13:45:50 +08:00
sledgehammer999
fed325a54d
Merge pull request #6140 from Chocobo1/relocateNoRemove
...
After files relocate, don't remove the old folder even if it is empty
2017-01-19 15:52:09 +02:00
sledgehammer999
dcab1da8ab
Merge pull request #6138 from Chocobo1/stats2
...
Use the numbers from tracker scrape response
2017-01-19 11:49:47 +02:00
Chocobo1
a2bb947dcc
After files relocate, don't remove the old folder even if it is empty.
2017-01-19 14:21:04 +08:00
Chocobo1
fa45ba102c
Refactor
2017-01-19 14:21:04 +08:00
Chocobo1
e37a696e7d
Refactor
...
Move default value to preference class
Rename variable
Reorder headers
Remove extra parentheses
2017-01-19 13:33:34 +08:00
Chocobo1
72a6f7ae24
Use the numbers from tracker scrape response. Closes #5048 , #6117 .
...
Add comments
Thanks to Ian Kent for helping investigate
2017-01-19 13:17:50 +08:00
sledgehammer999
a178268b31
Merge pull request #5959 from dzmat/DRY_fix_minor
...
Little DRY violation fixed
2017-01-19 01:49:21 +02:00
sledgehammer999
ba03fb30f3
Merge pull request #5987 from Chocobo1/temp_dir
...
Put temp files in .qBittorrent directory
2017-01-19 01:33:57 +02:00
sledgehammer999
a092cb9bda
Remove settings to exchange trackers. It wasn't used by non-libtorrent clients. Also it has a privacy risk and you might be DDoSing someone. DHT makes it obsolete anyway.
2017-01-19 01:13:55 +02:00
sledgehammer999
b5bf6df058
Merge pull request #6139 from Chocobo1/warnings
...
Fix compile warning: unused parameter ‘action’
2017-01-18 23:42:58 +02:00
Eugene Shalygin
b6e64c13d8
Fetch torrent status when generating final fastresume data
...
This is done to get correct queue position, which has to be written into
the fastresume file. See discussion in #6154 .
2017-01-18 18:59:03 +01:00
Eugene Shalygin
6cd233dd61
Add queue repair code
...
This is a bit adjusted code created by nxd4, who shared it in issue
disappearing).
2017-01-18 17:27:20 +01:00
Eugene Shalygin
4c13f155ff
Do not remove added files unconditionally. Closes #6248
...
If removing of added torrents is enabled and dialog for adding torrents
is disabled, file guard was assuming that torrent is added successfully.
And that can be not the case if a user trying to add a broken torrent
file (or not a torrent file at all). Then this file gets deleted always.
Fix this by checking result of addTorrent_impl().
2017-01-18 00:04:26 +01:00
sledgehammer999
e230cde6c4
Merge pull request #6108 from evsh/fix-6103
...
Workaround problem with moc from Qt4 and #if. Closes #6103 , #5451
2017-01-12 02:08:59 +02:00
Eugene Shalygin
de403dcd9d
Workaround problem with moc from Qt4 and #if
...
moc from Qt4 ignores Q_ENUMS when it is behind #if QT_VERSION check.
Therefore moc entries for enum in TorrentFileGuard were not generated
and the setting was not saving/loading. This closes #6103 , #5451
2017-01-12 00:42:37 +01:00
sledgehammer999
c384cc8c8c
Move new icons to their own theme folder.
2017-01-11 18:02:26 +02:00
Eugene Shalygin
7b594a635e
Set upper version limit for QTBUG-52633
...
The bug seems to be fixed in version 5.7.1.
2017-01-11 00:14:16 +01:00
Tim Delaney
70ce12372d
Follow project coding style. Issue #2192 .
...
--HG--
branch : magao-dev
2017-01-08 11:46:01 +11:00
Tim Delaney
2244b7cb66
RSS episode filter refactoring and logging (prep for later commits).
...
--HG--
branch : magao-dev
2016-12-31 18:01:22 +11:00
Chocobo1
bc41e2034c
Fix warning: unused parameter ‘action’ [-Wunused-parameter]
2016-12-27 20:19:20 +08:00
sledgehammer999
4f59caf3ca
Fix share ratio limiting. Broken by commit 259b5e51c4
. Closes #6039 #6048 .
2016-12-15 00:04:50 +02:00
sledgehammer999
26e8072c84
Merge pull request #5332 from evsh/fix-qt5-log-flood
...
Add a workaround for QTBUG-52633, qBt issue #5073
2016-12-13 19:37:17 +02:00
Eugene Shalygin
9a123c42c3
Add a workaround for QTBUG-52633, qBt issue #5073
...
The QTBUG-52633 results in food of network interface changed events, libtorrent IP
rebind calls and flood in the qBt log. The work around is the check not only for
interface name, but for IP address on that interface before triggering the libtorrent rebind.
2016-12-13 17:18:58 +01:00
sledgehammer999
283511116e
New translations: Icelandic, Latvian, Malay, Occitan, Uzbek
...
Also re-run lupdate.
2016-12-13 02:09:28 +02:00
sledgehammer999
d88ec48468
Polish previous commit.
2016-12-11 23:24:55 +02:00
sledgehammer999
5a006d5980
Merge pull request #5810 from ghost/macOSpref
...
Change QSettings to IniFormat on macOS. Closes #5770 #5808
2016-12-11 23:23:22 +02:00
sledgehammer999
4e8ca90b23
Merge pull request #5958 from dzmat/auto_ptr_eviction
...
minimizing the number of warnings about deprecated auto_ptr
2016-12-10 21:23:42 +02:00
sledgehammer999
07edb7b74e
Merge pull request #6010 from Chocobo1/warnings
...
Fix memory leak
2016-12-10 21:22:41 +02:00
dzmat
abeff99ba0
minimizing the number of warnings about deprecated auto_ptr
2016-12-08 19:24:52 +07:00
Chocobo1
5cf86d3677
Change Utils::Fs::freeDiskSpaceOnPath() signature
...
refactor the function internals
2016-12-08 15:36:34 +08:00
thalieht
b2144f7928
SearchTab: use saveSettings() and loadSettings() to handle header state
2016-12-07 18:19:54 +02:00
sledgehammer999
ba1e5b8d58
Merge pull request #6013 from Chocobo1/mac_warnings
...
Fix warnings on macOS
2016-12-07 16:48:35 +02:00
sledgehammer999
49ed0765e1
Merge pull request #5928 from Chocobo1/rss-view
...
Change RSS view layout to horizontal
2016-12-07 01:44:56 +02:00
sledgehammer999
0d1b70e248
Decouple dependency between Session and BandwidthScheduler during Session init. Closes #6007 .
2016-12-07 01:33:48 +02:00
Chocobo1
ab187f06da
Fix unused variable warnings
2016-12-07 01:31:39 +08:00
Chocobo1
0b313e0bc3
Remove unused variable
2016-12-05 20:20:01 +08:00
Chocobo1
7f2f78a816
Simplify #if expression
2016-12-05 20:05:08 +08:00
Chocobo1
e1c9e3b9ed
Fix memory leak
...
call unicode version of the function directly
2016-12-05 20:04:21 +08:00
Chocobo1
5608827429
Simplify function call
2016-12-05 20:04:13 +08:00
sledgehammer999
f7194eecb0
Merge pull request #5997 from Chocobo1/msvc_warnings
...
Fix msvc warnings
2016-12-02 19:15:59 +02:00
Chocobo1
5d2d22a218
Fix warning C4090.
...
different '__unaligned' qualifiers.
2016-12-02 15:32:27 +08:00
Chocobo1
11c2ee81c1
Fix warning C4267.
...
conversion from 'size_t' to 'int', possible loss of data.
2016-12-02 15:32:27 +08:00
Chocobo1
cffa729ac5
Put temp files in .qBittorrent directory. Closes #4462 .
2016-12-01 01:39:27 +08:00
Chocobo1
d84461c9b2
Remove unused header
2016-11-29 17:31:14 +08:00
dzmat
4b18bb29a6
DRY violation fixed
2016-11-18 23:05:47 +07:00
zywo
6e7d3b8135
Fix CMake compilation error.
2016-11-17 16:20:36 +01:00
Chocobo1
a415f14fac
Rename splitter names
2016-11-17 11:12:33 +08:00
Chocobo1
6b835f53ce
Use new key for storing RSS splitter_v value.
...
So that old value won't override the RSS layout.
2016-11-11 00:35:40 +08:00
Tim Delaney
b84d9201fd
Allow | in RSS must contain. Closes #6171 .
...
--HG--
branch : magao-dev
2016-11-07 17:46:27 +11:00
sledgehammer999
90bbe3379d
Merge pull request #5882 from onto/pvs-studio
...
Fixes and improvements after check by PVS-Studio
2016-11-07 00:18:46 +02:00
Tim Delaney
390d7a8124
Improve UI responsiveness during RSS downloading. Closes #873 , #1089 , #1235 , #5423 .
...
--HG--
branch : magao-dev
2016-11-07 08:56:06 +11:00
Tim Delaney
32bdb73f70
RSS allow infinite range to extend beyond current season. Closes #800 , #3876 , #6170 .
...
--HG--
branch : magao-dev
2016-11-07 07:18:06 +11:00
thalieht
c7a04e27f4
Log: set embedded Tracker [OFF] msg type as info
2016-11-06 11:55:31 +02:00
Tim Delaney
96c1187f47
RSS parse torrent episodes like 1x01 as well as S01E01. Closes #2749 .
...
--HG--
branch : magao-dev
2016-11-06 15:26:48 +11:00
Tim Delaney
64f9cbbf54
Allow episode zero (special) and leading zeroes in RSS episode filter.
...
--HG--
branch : magao-dev
2016-11-06 22:51:33 +11:00
Tim Delaney
cecff159a0
Move old RSS items to separate config file. Closes #6167 .
...
--HG--
branch : magao-dev
2016-11-06 12:00:09 +11:00
Anton Lashkov
1233c5b67b
Fix name of variable same as class member
2016-11-04 21:44:00 +04:00
sledgehammer999
b358809328
Merge pull request #5760 from borouhin/patch-1
...
Don't request client SSL certificate (closes issue #3883 )
2016-11-02 23:34:00 +02:00
sledgehammer999
259b5e51c4
Don't ever stop seeding forced torrents. Closes #5784 .
2016-11-02 18:25:09 +02:00
sledgehammer999
146d4e049a
Some more compiler warnings fixed.
2016-11-02 17:49:50 +02:00
sledgehammer999
9f8dfbc51c
Fix warning due to stupid typo.
2016-11-01 22:24:55 +02:00
sledgehammer999
e10c2abf3b
Delete old rss favicon before assigning new one.
2016-11-01 18:25:47 +02:00
sledgehammer999
e440fc3d17
Fix setting a speed limit.
2016-11-01 17:51:57 +02:00
sledgehammer999
3081a8bb3f
Add libtorrent's DHT bootstrap node to our bootstrap list.
2016-11-01 03:42:38 +02:00
sledgehammer999
660b8cdb7e
Use the new API to add DHT bootstrap nodes for libtorrent 1.1.x and simplify the code a bit.
2016-11-01 03:42:33 +02:00
sledgehammer999
afe930cbee
Use new libtorrent 1.1.2+ utility function to generate client ID instead.
2016-11-01 03:42:28 +02:00
sledgehammer999
e054f63746
Make sure that paths are loaded/saved using slashes as dir separators.
2016-11-01 03:42:22 +02:00
sledgehammer999
59b570cf62
Display message about libtorrent plugins for the correct case.
2016-11-01 03:42:17 +02:00
sledgehammer999
f391b24b1d
Migrate last setting related to interfaces to the new system.
2016-11-01 03:42:12 +02:00
sledgehammer999
7bf06cd6e6
Fix save/load of interface address setting.
2016-11-01 03:42:07 +02:00
sledgehammer999
f885c6375a
Use better variable names for tracker announce IP setting.
2016-11-01 03:42:01 +02:00
sledgehammer999
6053390bf5
Unify and simplify setting to use proxy for torrents only.
2016-11-01 03:41:51 +02:00
sledgehammer999
5cbc7b16c0
Guard the flag used for deferred session configure.
2016-11-01 03:41:45 +02:00
sledgehammer999
1757973f88
Misc fixes.
2016-11-01 03:41:40 +02:00
sledgehammer999
10cd45dc81
Fix setting limits to unlimited.
2016-11-01 03:41:35 +02:00
sledgehammer999
a5ae86512a
Rename IP filtering functions and settings names.
2016-11-01 03:06:58 +02:00
sledgehammer999
b97cb7422f
Export torrents added only after the setting was enabled.
2016-11-01 03:06:58 +02:00
sledgehammer999
124eddc68c
Merge pull request #5342 from glassez/session
...
Optimize BitTorrent::Session settings applying
2016-11-01 03:02:29 +02:00
Yez Ezey
26052802ca
Change QSettings to IniFormat on macOS. Closes #5770 #5808
...
On macOS 10.12 Sierra, Apple changed the behaviour of CFPreferencesSetValue()
truncating data after a null character. https://bugreports.qt.io/browse/QTBUG-56344
Due to this, we have to move from native plist to IniFormat.
2016-10-08 14:05:30 +09:00
sledgehammer999
b3a7954363
Use a subdomain to redirect to the actual URL for search plugins.
...
Will allow to move around the plugins in the git repo with the 3.4.0 release.
2016-09-23 23:16:24 +03:00
borouhin
501a2d7c45
Don't request client SSL certificate (closes issue #3883 )
2016-09-21 02:42:51 +03:00
sledgehammer999
3ea81be2cc
Merge pull request #5731 from thalieht/webui_port
...
Fix WEBUI port overflow
2016-09-13 23:54:01 +03:00
thalieht
6ec1c61b06
fix webui port overflow
2016-09-11 23:41:14 +03:00
ngosang
83d6a28030
Fix warning in geoipdatabase.cpp
2016-08-29 22:11:05 +02:00
sledgehammer999
d411d8b3a1
Merge pull request #5549 from briankendall/smtp_ssl_bug_fixes
...
Fixes bug where sending email could silently fail
2016-08-25 20:45:11 -05:00
SagePtr
c63da264d7
Update geoipdatabase.cpp
...
Updated MaxMind database limit from 10MB to 64MB. I hope it will be enough
for few years. Fix for issue #5609
2016-08-26 02:23:17 +02:00
Brian Kendall
da412571e4
Better error handling with smtp communication.
...
Adds log messages for a number of situations where sending an email will silently fail, in particular when attempting to create an unencrypted connection to an SMTP server that requires SSL
2016-08-25 17:57:26 -04:00
sledgehammer999
025ee32281
Merge pull request #5576 from Chocobo1/msiexec
...
Call system msiexec.exe directly
2016-08-23 11:29:53 -05:00
Chocobo1
9cb01dedba
Avoid spawning a new explorer.exe process when selecting "Open containing
...
folder". Closes #5564 .
2016-08-04 00:50:11 +08:00
Chocobo1
f448587271
Add function windowsSystemPath()
2016-07-23 13:39:13 +08:00
Chocobo1
bb956b8453
Refactor
2016-07-23 11:25:33 +08:00
Chocobo1
8742d7aa45
Uncrustify misc.cpp
2016-07-23 11:23:16 +08:00
Vladimir Golovnev (Glassez)
c4e9291db4
Do not create save folder in advance
...
Closes #5422 .
2016-06-26 16:48:11 +03:00
Vladimir Golovnev (Glassez)
b5fe749f0b
Use new libtorrent-1.1 settings API
2016-06-20 08:30:02 +03:00
Vladimir Golovnev (Glassez)
b2cb473b63
Don't use Preferences in BitTorrent::Session
2016-06-20 08:30:02 +03:00
sledgehammer999
e3e7636de8
Fix parsing of eMule .DAT filters. Closes #5281 .
2016-06-20 02:24:37 +03:00
sledgehammer999
d060b0d342
Don't use QCollator for sorting on Windows. Closes #5238 and #5240 .
2016-06-08 22:53:59 +03:00
Eugene Shalygin
5f2362dc89
Replace TorrentHandle::fileExtremityPieces() with TorrentInfo::filePieces()
2016-06-02 10:30:35 +02:00
Eugene Shalygin
b3378d4599
Show files in tooltips for pieces progress bars
...
In addition to the current tooltip, which shows color legend, if user
holds the Shift key during hovering we show another tooltip which
contains a table of contents for the piece under the moue cursor. The
table lists file sizes and names. If the cursor points to a part of a
file which spans several pieces, those pieces are highlighted.
2016-06-02 10:30:28 +02:00
sledgehammer999
5878d49f60
Fixup previous commits and allow IPv6 interface addresses too.
2016-05-27 01:37:16 +03:00
sledgehammer999
1397a951fe
Merge pull request #5096 from Harekiet/kietC
...
Bind directly to an IP instead of using a network Interface
2016-05-26 17:36:22 -05:00
sledgehammer999
81ea07abee
Rename ASM to TMM and related stuff.
2016-05-25 20:07:36 +03:00
sledgehammer999
6812b74bbf
Merge pull request #5293 from botmtl/master
...
default RSSRefreshInterval to 30 mins
2016-05-24 06:10:42 -05:00
Chocobo1
f13c604fbe
Use boost:circular_buffer instead of QList.
...
QList has to store an additional pointer for each element which leads to bad space efficiency.
2016-05-24 10:44:42 +08:00
botmtl
0ca31deedb
default RSSRefreshInterval to 30 mins
...
closes issue #5235 (https://github.com/qbittorrent/qBittorrent/issues/5235 )
2016-05-23 21:49:06 -04:00
sledgehammer999
529c208170
Merge pull request #5262 from Chocobo1/text
...
Improve wordings 2
2016-05-17 14:40:47 -05:00
Chocobo1
c907a2f857
Cleanup headers
...
Code formatting
2016-05-18 00:46:43 +08:00
Chocobo1
6ead0ae9ee
Add lookup function to get PathType display names
2016-05-18 00:46:43 +08:00
Vladimir Golovnev (Glassez)
a318040eaa
Use new alert dispathing API
2016-05-17 07:58:38 +03:00
sledgehammer999
4ca1a2d5aa
Merge pull request #5251 from Chocobo1/text
...
Improve wordings
2016-05-16 11:50:44 -05:00
Chocobo1
6ea89bf621
Improve wordings in "Auto download torrent" section
2016-05-16 14:29:59 +08:00
Eugene Shalygin
47a3f1d93d
Fix a typo in TorrentFileGuard
2016-05-13 00:12:33 +02:00
Eugene Shalygin
6e73fa80b8
Add option to automatically remove .torrent files upon adding
...
Some browsers do not download files, intended for immediate opening,
into a temporary directory, and thus a regular download directories
accumulate those unneeded files.
The option allows qBittorrent to clean after itself and delete those
files whether they were succesfully added or not (user-selectable
policy).
2016-05-09 11:52:36 +02:00
sledgehammer999
9c5a5fc83d
Merge pull request #3908 from Chocobo1/rm_nsort
...
Replace `naturalSort()` with `naturalCompare()`.
2016-05-08 11:12:51 -05:00
Chocobo1
5906a4a2de
Add case-sensitive & case-insensitive natural sort helper function
...
Fix helper function not being thread-safe
Use QBT_USES_QT5 define
2016-05-08 23:59:06 +08:00
Chocobo1
a81cf1ea16
Fix "IP Filtering - Apply to trackers" wasn't being applied. Closes #5217 .
2016-05-08 20:46:58 +08:00
Chocobo1
d25430f377
Cleanup headers
...
Move `class NaturalCompare` to .cpp file
2016-05-04 16:35:26 +08:00
sledgehammer999
9f31b0ef4d
Merge pull request #4959 from evsh/small-fix-for-settings-storage
...
refactor SettingsStorage class
2016-05-03 10:37:49 -05:00
sledgehammer999
f6ff680295
Merge pull request #5205 from evsh/cmake
...
cmake: fix powermanagement compilation
2016-05-03 08:28:04 -05:00
Eugene Shalygin
565847ceb3
cmake: add Qt::DBus library dependency for base module
...
This is needed for powermanagement and was mistakenly forgotten
2016-05-01 02:54:53 +02:00
sledgehammer999
0143799623
Don't show added torrent notification during startup.
2016-04-30 01:38:24 +03:00
sledgehammer999
ef6e848756
Display notifications when a torrent is added. Closes #334 and #915 .
2016-04-25 20:07:26 +03:00
Vladimir Golovnev (Glassez)
56287173b1
Fix .!qB extension is added when disabled
2016-04-25 15:30:41 +03:00
Vladimir Golovnev (Glassez)
b8c703b8b0
Use truncated torrent hash in temp path
2016-04-25 08:39:36 +03:00
Vladimir Golovnev (Glassez)
850556fdfa
Use unique temp directories
...
Save torrent in temp_path/<torrent_hash> directory.
Closes #5154 .
2016-04-25 08:39:36 +03:00
sledgehammer999
4ebb12e06b
Merge pull request #5141 from glassez/recheck
...
Fix torrent adding with existing data
2016-04-24 12:41:50 -05:00
Eugene Shalygin
3f53f17411
cmake: raise minimal cmake version to 3.5 and use its features
2016-04-23 02:02:13 +02:00
Vladimir Golovnev (Glassez)
2fb6bb00bf
Fix rechecking after torrent is finished
2016-04-20 15:45:15 +03:00
Vladimir Golovnev (Glassez)
e0d9ae3116
Try to find incomplete files for new torrent
2016-04-20 15:45:03 +03:00
Eugene Shalygin
473e23f992
cmake: add imported target for Libtorrent
2016-04-18 21:23:03 +02:00