Chocobo1
0b1b3c1f84
Use numeric_limits instead of constants from C
...
In C++, using numeric_limits is more idiomatic compared to using constants.
2019-06-23 11:16:58 +08:00
Chocobo1
4880dc812c
Use appropriate type
2019-06-19 18:52:24 +08:00
Vladimir Golovnev (Glassez)
8e65317d61
Rename "fromNativePath" to "toUniformPath"
...
Unlike "toNativePath" which name clearly reflects the function result
"fromNativePath" has no such clear meaning.
Since this function converts path into uniform format "toUniformPath"
is better name.
2019-06-17 15:55:49 +03:00
Chocobo1
89124bdcc8
Add WebAPI session timeout settings
...
Raise default timeout to 1 hour.
2019-06-15 18:57:19 +08:00
silverqx
4f4f435e76
Add zlib version to GUI & stackdump
2019-06-12 08:02:24 +02:00
Chocobo1
5b9ff4a015
Avoid double lookup
2019-06-09 18:56:52 +08:00
thalieht
70f8882f87
Group Qt forward declarations separately from the others
2019-06-04 17:48:55 +03:00
thalieht
9995967fbf
Remove some unused #include
2019-06-04 17:48:55 +03:00
thalieht
4370a7eb12
Forward declare in a few places
2019-06-04 17:48:55 +03:00
Chocobo1
ed6bb0efdc
Replace QList by QVector for tracker related operations
2019-05-22 12:57:22 +08:00
Chocobo1
e92209475e
Use range-based for loops
2019-05-19 18:51:09 +08:00
Chocobo1
e288de7ec1
Forward declare as much as possible
2019-05-19 12:06:18 +08:00
Chocobo1
94aeeed95f
Work around the crash occurred in QTimer
...
See Qt commit:
https://code.qt.io/cgit/qt/qtbase.git/commit/src/corelib/kernel/qtimer.cpp?id=a623fe8d2a60ff333d5779f877e3b20f0e141ff1
Fixes #9985 .
2019-04-07 15:13:33 +08:00
Vladimir Golovnev (Glassez)
ead078a38e
Add preliminary support of libtorrent v1.2
...
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
Chocobo1
adbd34c795
Move helper functions to Utils::Gui namespace
2019-03-05 14:55:22 +08:00
thalieht
ce437817de
Make various minor changes
2019-02-25 17:05:15 +02:00
thalieht
8a19a0d4a0
Remove const in declarations' arguments that are passed by value
2019-02-25 17:05:15 +02:00
thalieht
70f1537d9f
Add const to almost all remaining vars and arguments that qualify
2019-02-25 17:05:15 +02:00
thalieht
92a290895b
Convert vars into refs to avoid copy construction from const refs
2019-02-16 18:54:17 +02:00
thalieht
d8cbc9266a
Use 'auto' to avoid duplicating the type name
2019-02-16 18:54:17 +02:00
Mike Tzou
78ab0e4ba9
Merge pull request #10220 from thalieht/const
...
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
ca3ce87e06
Add const to many vars and arguments
...
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Chocobo1
6d29a3af60
Make use of std algorithms
2019-02-05 13:35:54 +08:00
Mike Tzou
40eb8a1f4a
Merge pull request #10175 from Chocobo1/cert
...
Load WebUI certificate & key from file path
2019-02-01 13:37:13 +08:00
Chocobo1
5cdb3b6a2d
Load WebUI certificate & key from file path
...
This allow users to update certificate & key more easily, i.e. without the need to import them
into qbt.
Closes #6675 , #7547 , #8315 , #8564 .
2019-01-28 16:33:48 +08:00
Thomas Piccirello
d1dc9a39ae
Match WebUI About page to GUI
2019-01-20 18:40:25 -08:00
Vladimir Golovnev (Glassez)
302c99d7d5
Drop support of libtorrent < 1.1.10
2019-01-11 15:13:17 +03:00
Thomas Piccirello
7f349732ee
Send numeric status without translation
2018-12-11 01:37:33 -05:00
Thomas Piccirello
9e1f7a72b7
Simplify map initialization
2018-12-11 01:37:32 -05:00
Thomas Piccirello
33351e3d8d
Add WebUI Trackers context menu
2018-12-11 01:37:32 -05:00
Thomas Piccirello
4947b0a44f
Add DHT, PeX, and LSD to WebUI Tracker list
2018-12-11 01:37:32 -05:00
Thomas Piccirello
b8e4c6b0be
Add additional Tracker columns to WebUI
2018-12-11 00:41:18 -05:00
Thomas Piccirello
dd790d94c9
Use const where appropriate
2018-12-11 00:41:18 -05:00
Mike Tzou
cf9d903ba9
Merge pull request #9541 from Piccirello/webui-file-priority
...
Set priority for multiple files in one WebAPI request
2018-12-11 13:32:53 +08:00
Thomas Piccirello
c5b8f62780
Set priority for multiple files in one WebAPI request
...
Closes #6259 .
2018-12-10 23:21:09 -05:00
Thomas Piccirello
402715004c
Add slow torrent options
2018-12-07 00:55:29 -05:00
Thomas Piccirello
2ebc6a056e
Add "Use alternative Web UI" option
2018-12-07 00:55:29 -05:00
Thomas Piccirello
c237accf82
Add "Apply rate limit to peers on LAN" option
2018-12-07 00:55:29 -05:00
Thomas Piccirello
e499e1ba85
Add email "From" option
2018-12-07 00:55:29 -05:00
Thomas Piccirello
19ccd8c7d3
Add "When adding a torrent" options
2018-12-07 00:55:29 -05:00
Thomas Piccirello
d05cf47169
Add WebUI Auto TMM options
2018-12-07 00:55:29 -05:00
Thomas Piccirello
99ca872011
Reorder WebUI options to match GUI
2018-12-07 00:52:50 -05:00
Mike Tzou
6bb4eb825b
Merge pull request #9942 from Chocobo1/pbkdf2
...
Do password hashing properly
2018-12-06 16:22:22 +08:00
Chocobo1
05d6a29416
Apply PBKDF2 when storing passwords
2018-12-05 13:28:42 +08:00
thalieht
1f36b8b89f
Combine qAsConst() with copyAsConst() to asConst()
2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555
Convert all foreach() to range-based for()
2018-11-28 23:40:12 +02:00
Chocobo1
344e47dcfb
Add option for WebUI Host header validation
...
Closes #9743 .
2018-11-19 11:05:04 +08:00
Chocobo1
d866033a8e
Fix divide-by-zero crash
...
Previously here was using a cheap method to avoid divisor becoming < 0, but from
the crash stacktrace it seems this is not enough, now the divisor is properly
clamped to have 1 as the minimum.
Also it will now display "Unknown" for invalid calculation results.
Closes #9857 .
2018-11-18 13:50:23 +08:00
Chocobo1
3fa5358c3f
Remove speed limit checkbox in Options dialog
...
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Chocobo1
209e6a889a
Fix MSVC warning C4804
...
Full message of the warning:
webui\api\searchcontroller.cpp(54): warning C4804: '>': unsafe use of type 'bool'
in operation
2018-11-02 14:35:35 +08:00
Vladimir Golovnev
4fee16fafb
Merge pull request #8217 from Piccirello/webui-statusbar-freespace
...
Free disk space in WebUI status bar
2018-10-28 10:02:49 +03:00
Vladimir Golovnev
7e36cc746f
Merge pull request #8584 from Piccirello/new-search-api-2
...
WebUI search API. Closes #2495
2018-10-24 13:13:16 +03:00
Thomas Piccirello
f2957c721d
Use QElapsedTimer
2018-10-22 23:17:46 -04:00
Thomas Piccirello
2aea235e34
Add free disk space to WebUI status bar
...
Closes #6829 .
2018-10-22 22:06:14 -04:00
Thomas Piccirello
6d619e9491
Add categories WebAPI
...
Closes #5330 .
2018-10-07 14:52:34 -04:00
Thomas Piccirello
0b6ae68801
Add WebUI search API controller
...
Closes #2495 .
2018-09-30 20:07:27 -04:00
Thomas Piccirello
63c53766b4
Add save path and editing to WebUI new category dialog
2018-08-31 11:27:05 -04:00
Thomas Piccirello
a0e6007fc1
Include category save path in web api sync data
2018-08-18 22:04:21 -04:00
Thomas Piccirello
d89ef22d85
Require torrent category creation to be explicit
2018-08-18 22:04:21 -04:00
Mike Tzou
8dae7f4a87
Merge pull request #9229 from Piccirello/forceReannounce
...
Add WebUI Force Reannounce option
2018-07-31 00:19:34 +08:00
Thomas Piccirello
cdad0dc7d3
Add WebUI Force Reannounce option
2018-07-22 20:33:17 -04:00
Chocobo1
0217d5b4c0
Replace single-character string with character literal
...
Also remove unnecessary dynamic allocation.
2018-07-21 23:26:15 +08:00
Goshik
1daadfc4ec
Create non-existing path in setLocationAction()
...
When using qbittorrent-nox it is not always possible to manually create
the target path for torrent moving. This commit allows automatic path
creation. It also allows to display error messages in the
'Set location' window.
2018-06-19 14:10:11 +03:00
thalieht
4022799881
Fix coding style
2018-06-12 07:17:05 +03:00
Chocobo1
5c72a52ea2
Reset WebUI ban counter on login success
2018-05-31 22:55:54 +08:00
Chocobo1
d782d62b34
Add logging messages in WebUI login action
2018-05-31 22:55:54 +08:00
Chocobo1
9eeef0be97
Add option to control CSRF protection
...
Some users are using WebUI with simple port-forwarding from their router,
providing an option to control the protection will save them from setting up an
non-trival web proxy.
Closes #7274 .
2018-05-22 12:57:03 +08:00
Chocobo1
bad4d94f77
Add option to control WebUI clickjacking protection
...
Some users actually want embedding WebUI into their custom build iframe.
Closes #7370 .
2018-05-22 01:07:25 +08:00
Vladimir Golovnev (Glassez)
98ca274169
Rename RSS properties to follow other names
2018-05-15 16:05:51 +03:00
Vladimir Golovnev (Glassez)
2a0b104e5e
Properly set RSS settings via API
...
Closes #8925 .
2018-05-15 15:59:28 +03:00
Vladimir Golovnev
8906c47798
Merge pull request #8782 from mj-p/filterByHashes
...
Filter torrent info endpoint by hashes
2018-05-13 13:20:00 +03:00
sledgehammer999
375b15727d
Show rechecking progress
...
When having big torrents, the rechecking might take a while to
complete. Users need some sort of feedback that progress is being made.
Also, I changed the float to qreal since that's the return type.
2018-05-13 12:32:17 +03:00
sledgehammer999
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
thalieht
20ca90800d
Fix coding style
2018-05-09 17:06:22 +03:00
Chocobo1
c0df292567
Remove debug messages
2018-05-08 12:18:18 +08:00
Marcel Petersen
fc58e8a0c6
Filter torrent info endpoint by hashes
...
Added hashes parameter to info action.
Allows filtering seralized torrents by passing it into the TorrentFilter.
2018-05-02 10:07:48 +02:00
Chocobo1
8b575484e6
Fix path separator in log messages
2018-04-24 01:02:54 +08:00
Thomas Piccirello
9f36b54b04
WebUI Add Limit Share Ratio context menu option
...
Closes #6815 , #7602 .
2018-04-11 23:45:54 +08:00
Thomas Piccirello
3f0fbc0810
WebUI rename property to match its definition
2018-04-11 23:45:54 +08:00
Vladimir Golovnev (Glassez)
cb505a07fe
Fix setting preferences via WebAPI
...
Closes #7335 .
2018-04-09 18:54:43 +03:00
Vladimir Golovnev
a5294e1e08
Merge pull request #8558 from luis-pereira/containter-anti-pattern
...
Don't create temporary containers just to iterate over them
2018-03-19 13:06:01 +03:00
Luís Pereira
ac42ccb5e4
Don't create temporary containers just to iterate over them
...
Stops temporary containers being created needlessly due to API misuse.
For example, it’s common for developers to assume QHash::values() and
QHash::keys() are free and abuse them, failing to realize their
implementation internally actually iterates the whole container, allocates
memory, and fills a new QList.
Added a removeIf generic algorithm, similar to std ones. We can't use std
algorithms with Qt dictionaries because Qt iterators have different
behavior from the std ones.
Found using clazy.
2018-03-18 16:22:12 +03:00
Chocobo1
141a2d2856
Prevent detach from containers
2018-03-11 22:25:07 +08:00
Chocobo1
fdf3ebbb6c
Remove usage of deprecated functions
...
Also use proper type for storing date/time data
2018-03-09 19:20:58 +08:00
Chocobo1
0457fd260e
Avoid temporary QString allocations
...
This fixes clazy warning: Use multi-arg instead [-Wclazy-qstring-arg]
2018-03-07 20:06:00 +08:00
Thomas Piccirello
a8420a43f9
Format Read cache hits as percentage
2018-02-23 14:46:47 -05: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
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
3035184d25
Merge pull request #8445 from glassez/fix-webapi
...
Fix POST params handling. Closes #8443
2018-02-20 11:11:33 +03:00
Vladimir Golovnev
387f9b1230
Merge pull request #8438 from Piccirello/webui-proxy-only
...
Add "Use proxy only for torrents" option to webui
2018-02-20 09:06:30 +03:00
Vladimir Golovnev (Glassez)
29042e4841
Fix wrong WebAPI param name
2018-02-18 19:54:08 +03:00
Thomas Piccirello
0d55599e02
Add "Use proxy only for torrents" option to webui
2018-02-17 21:25:42 -05: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)
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