Mike Tzou
565eb4cdc8
Merge pull request #11430 from Chocobo1/qt
...
Fix integer narrowing on x86
2019-11-01 10:34:56 +08:00
Chocobo1
e262b86c44
Reserve memory for file data buffers
2019-10-31 23:09:28 +08:00
Chocobo1
f31ee6a225
Fix integer narrowing on x86
...
The f_type is an alias to `int` on 32-bit system and the switch cases
uses `unsigned int`.
Closes #11427 .
2019-10-31 13:04:02 +08:00
Chocobo1
6fd678195c
Replace deprecated Qt functions
...
QSet::toList() is replaced by QSet::values()
2019-10-31 12:40:24 +08:00
Chocobo1
0f60121b94
Add option to control qBittorrent process memory priority
...
This is to avoid Windows swapping out other application data from
OS cache and put in torrent data which hinders other program
responsiveness.
The default value "Below normal" is choosen because casual users have
other higher priority apps (such as browser) running and they don't
expect OS to swap out its data. Dedicated seeders most probably will not
have other app running on their system and would expect qbt has
priority over other background services.
The option only has effect on Windows >= 8.
2019-10-31 03:18:43 +08:00
Chocobo1
29fe0029f0
Rename variables in Session class
2019-10-30 11:56:16 +08:00
Chocobo1
89c58921de
Log error properly
2019-10-30 01:46:57 +08:00
Chocobo1
a3fd340187
Revise Session::getPendingAlerts function signature
2019-10-30 01:46:57 +08:00
Chocobo1
e32ef7f5c5
Use implicit sharing when getting categories from Session class
2019-10-30 01:46:57 +08:00
Chocobo1
865394a59c
Clean up Session class variable initialization
2019-10-30 01:46:56 +08:00
Chocobo1
abb3e7ace0
Move libtorrent session initialization to its own function
...
`m_IPFilteringChanged` default value has changed due to code unification.
2019-10-30 01:46:52 +08:00
Chocobo1
4888b22622
Fix screen scaling factor calculation
...
For some users on Windows the physicalDotsPerInch() could return values
that are smaller than the normal 96 DPI which leads to big dialog sizes
taking the entire screen.
So we need to ensure it is at least 96 DPI.
Closes #11405 , #11407 .
2019-10-28 15:01:42 +08:00
sledgehammer999
009ccbef7f
Bump Web API version
...
Closes #11304
2019-10-27 17:20:28 +02:00
Chocobo1
49266cb9e4
Replace boost::int64_t by std::int64_t
2019-10-23 13:43:49 +08:00
Chocobo1
cbe78baff1
Migrate to lt::error_code
2019-10-23 13:43:46 +08:00
Chocobo1
0d3152e4b0
Clean up "network interfaces configuration" code
2019-10-23 13:43:16 +08:00
Chocobo1
5e671a4b0b
Allow to select multiple entries in "banned IP" dialog
2019-10-11 21:58:35 +08:00
Chocobo1
0760398e99
Use screen real physical DPI on Windows
...
Previously was using a hardcoded value which might lead to issues like #11234 .
2019-10-03 18:08:48 +08:00
Chocobo1
7f73a71319
Show torrent name in "preview file" related dialogs
2019-10-02 22:27:27 +08:00
Chocobo1
6a462edb72
Don't close preview dialog if selected file failed to open
...
User may have made a mis-selection and this should not close the dialog
(only when the torrent has multiple previewable files).
2019-10-02 22:24:47 +08:00
Chocobo1
7ed0cd0c35
Fix "preview file" action not working
...
Root cause is the PreviewSelectDialog::readyToPreviewFile signal is
emitted before it is connected to a slot.
Only single-file torrents are affected.
Closes #11315 .
2019-10-02 22:24:29 +08:00
Chocobo1
0607050ecc
Clean up PreviewSelectDialog class
2019-10-02 21:12:35 +08:00
Chocobo1
021908320e
Preserve relative order when moving to top/bottom in queue
...
Closes #11312 .
2019-10-02 16:03:06 +08:00
Chocobo1
e0a23ba93d
Use InfoHash type in queueing operations
...
This avoids redundant type conversions.
2019-10-02 15:21:16 +08:00
Mike Tzou
a9e6ef183b
Merge pull request #11302 from Chocobo1/deletedialog
...
Revise DeletionConfirmationDialog class
2019-10-01 12:50:10 +08:00
Chocobo1
c632a91ee5
Handle "Delete confirmation" dialog result asynchronously
...
This is to avoid creating nested event loops as discussed in
https://github.com/qbittorrent/qBittorrent/pull/10786#issuecomment-502795822
2019-09-30 21:37:17 +08:00
Chocobo1
36056ad5af
Avoid redundant lookups
2019-09-29 15:13:25 +08:00
Chocobo1
19b6f56a0a
Move DeletionConfirmationDialog class to its own .cpp file
2019-09-29 11:29:16 +08:00
Chocobo1
d76adff81d
Change Session::deleteTorrent() first parameter to take InfoHash type
2019-09-29 09:52:51 +08:00
Chocobo1
7f453a80d3
Revise SessionSettingsEnums wrapper
...
This simplify the wrapper to become a namespace.
2019-09-29 09:52:13 +08:00
Chocobo1
7276a79cef
Call Windows API directly
...
We already bumped the OS requirement to Windows 7 and those functions
can be called directly without the need to load them first.
2019-09-29 09:52:13 +08:00
Mike Tzou
975b44d05f
Merge pull request #11241 from thalieht/delfolder
...
Add "Remove torrent and its files" option to share ratio limiting
2019-09-29 09:51:41 +08:00
thalieht
53e7faa47c
Rename share ratio limiting options
2019-09-26 13:34:03 +03:00
thalieht
07eb261991
Add "Remove torrent and its files" option to share ratio limiting
2019-09-26 13:34:03 +03:00
Chocobo1
de7d62c128
Clean up code
2019-09-25 15:54:47 +08:00
Chocobo1
103e2b9398
Use non-recursive mutex
...
The related classes doesn't really need recursive mutex so drop it. And
if it is really required it usually indicates bad design and we should
avoid it anyway.
2019-09-25 15:50:21 +08:00
Mike Tzou
7a3607c729
Merge pull request #11269 from Chocobo1/signals
...
Improve "stats updated" signal handling in MainWindow class
2019-09-25 09:53:39 +08:00
Mike Tzou
7c7963f93f
Merge pull request #11259 from Chocobo1/tristate
...
Revise TriStateBool class
2019-09-25 09:52:41 +08:00
Chocobo1
58fa5e004f
Improve "stats updated" signal handling in MainWindow class
2019-09-24 11:51:29 +08:00
Chocobo1
72faf89e26
Use the same internal data type for conversion function
2019-09-24 10:49:39 +08:00
Mike Tzou
50e0b2ab15
Merge pull request #11251 from Chocobo1/stats
...
Move "torrent status report" functionality out of Session class
2019-09-24 10:48:52 +08:00
Chocobo1
418164bee4
Move "torrent status report" functionality out of Session class
2019-09-23 21:08:59 +08:00
Chocobo1
9968eb53b2
Remove unused signal
2019-09-23 21:08:59 +08:00
Chocobo1
8bbed461a6
Sort signal declarations in Session class
2019-09-23 21:08:59 +08:00
Chocobo1
c7ac96c4f5
Add ability to trigger action via keypad Enter
2019-09-23 19:18:14 +08:00
Chocobo1
4a71b78e2d
Group related code together
...
And also rename local variables.
2019-09-23 19:18:14 +08:00
Chocobo1
2152a81d11
Add ability to open file via keypad Enter
...
Closes #11260 .
2019-09-23 19:18:07 +08:00
Chocobo1
ed62854af7
Add TriStateBool constructor taking a boolean
...
And move the constructor taking an int to private.
2019-09-23 13:05:32 +08:00
xnor
ecc3ff3ca4
WebUI: fix escaping of HTML special characters
...
JS code for torrent general properties, files, peers, trackers inconsistently
escaped HTML special characters, then the dynamicTable inconsistently escaped
again and then the value was set to HTML element text or html properties.
To fix this mess, don't escape any property values in the prop-*.js files.
Instead, make dynamicTable set HTML element text instead of html property by
default. This behavior can be overridden by setting a custom updateTd
function on the respective column, if needed. This is where the HTML escaping
should be done.
Also reordered existing updateTd functions to match column order, changed
custom updateTd functions from setting html to text property wherever possible,
removed custom updateTd functions that turned out to be redundant.
2019-09-21 13:09:42 +00:00
Chocobo1
82276b2a99
Rename variable
2019-09-19 16:50:57 +08:00
Chocobo1
e3b9659fb8
Fix seeding failed after creating a new torrent
...
Closes #11252 .
2019-09-19 16:50:31 +08:00
Mike Tzou
3971bf2d58
Merge pull request #11250 from Chocobo1/warning
...
Improve error messages for url_seed_alert
2019-09-19 11:11:30 +08:00
Chocobo1
4d00435209
Improve error messages for url_seed_alert
...
Closes #10119 .
2019-09-18 15:02:59 +08:00
Vladimir Golovnev
19c70fd659
Merge pull request #11235 from glassez/retry-fetch-rss
...
Allow to retry fetching RSS feeds. Closes #11168
2019-09-16 09:58:44 +03:00
Mike Tzou
209831d3b0
Merge pull request #11103 from Piccirello/webui-explicit-export
...
Move JavaScript code into explicit namespaces
2019-09-16 13:31:29 +08:00
Chocobo1
fccbc5318a
Drop logging level to warning for web seed errors
2019-09-15 14:55:16 +08:00
Chocobo1
bab953298b
Escape HTML in comment field
2019-09-15 14:41:07 +08:00
Chocobo1
f1243871b0
Remove redundant HTML escaping
...
The text widget is already set to plaintext and doing HTML escaping will
not give us more security but only makes it harder to read.
2019-09-15 14:40:34 +08:00
Mike Tzou
12c127b482
Merge pull request #11227 from Chocobo1/alert
...
Handle "alerts dropped" alert from libtorrent
2019-09-15 13:02:34 +08:00
Thomas Piccirello
9804a2e06a
Fix typo
2019-09-14 18:25:46 -07:00
Thomas Piccirello
1439bcc864
Move JavaScript code into explicit namespaces
...
This cleans up the global namespace by explicitly exporting shared values. All html and JavaScript files have been converted to use explicit exports except for client.js and mocha-init.js
2019-09-14 18:24:53 -07:00
Vladimir Golovnev (Glassez)
cf6e721b00
Allow to retry fetching RSS feeds
2019-09-14 11:33:03 +03:00
Vladimir Golovnev (Glassez)
73ef69526d
Allow to cancel download request
2019-09-14 11:31:07 +03:00
Chocobo1
edcc74c1ae
Add option to align file to piece boundary when creating new torrent
...
Alignment is achieved by adding dummy pad files between files which is
handled by libtorrent.
Closes #10460 .
2019-09-14 12:16:50 +08:00
Chocobo1
5e1e983928
Handle "alerts dropped" alert from libtorrent
2019-09-14 12:09:13 +08:00
Chocobo1
0a959bcbe7
Clean up SettingsStorage::save()
...
Also it should return `true` when `m_dirty` is `false`.
2019-09-08 15:03:25 +08:00
Chocobo1
e7e5ee1ea2
Add const to TransactionalSettings class functions
2019-09-08 14:38:14 +08:00
Chocobo1
daf52a2610
Avoid double lookups
2019-09-08 14:28:38 +08:00
Mike Tzou
d2c21ce507
Merge pull request #11195 from Chocobo1/mac
...
Replace deprecated macro
2019-09-07 11:58:23 +08:00
Mike Tzou
ee8b99ffd5
Merge pull request #11201 from Chocobo1/watcher
...
Treat .magnet file extension as case insensitive in filesystem watcher
2019-09-07 11:58:10 +08:00
Mike Tzou
f3b4fb8600
Merge pull request #11154 from ClemPera/patch-1
...
Remove max character limit of location path
2019-09-07 11:55:29 +08:00
Chocobo1
7113174593
Treat .magnet file extension as case insensitive
...
Closes #11200 .
2019-09-06 12:30:50 +08:00
Chocobo1
17e4902519
Don't define variable when not building GUI
2019-09-05 20:40:47 +08:00
Chocobo1
0d5b0b9542
Replace deprecated macro
...
Q_OS_MAC is deprecated and the replacement is Q_OS_MACOS.
2019-09-05 20:16:18 +08:00
Chocobo1
9dc3b18178
Fix filename validation on non-Windows OS
...
Closes #11191 .
2019-09-05 20:05:21 +08:00
Chocobo1
2396ef5bd6
Move error logging of adding peers to the proper place
2019-09-04 16:09:24 +08:00
Chocobo1
3104291734
Add check for null pointer
...
Fix up d657c87243
.
2019-09-03 22:26:41 +08:00
Mike Tzou
18369f6c21
Merge pull request #11171 from Chocobo1/webui
...
Conditionally disable port input field
2019-09-03 12:13:16 +08:00
Mike Tzou
4363082173
Merge pull request #11104 from Chocobo1/resume
...
Fix unable to remove web seeds
2019-09-03 12:12:56 +08:00
Chocobo1
60994df8d0
Conditionally disable port input field
...
Disable port input when "Use different port on each startup" option is selected.
This follows the behavior in GUI.
2019-09-01 22:55:57 +08:00
Chocobo1
2a66bb3127
Construct QHostAddress more efficiently
2019-09-01 22:33:01 +08:00
Clément Pera
f42b10f3b6
Remove max character limit of location path
...
I removed the maxlength attribute because we couldn't modify the location path when it has more than 100 characters.
2019-09-01 08:02:49 +02:00
Chocobo1
4aab44e779
Always save info dict when saving fastresume
...
Otherwise torrents loaded from fastresume won't have it and needs
to redownload it from elsewhere and slowing down the startup process.
This is also required for the future where we will drop loading the
`info` dict from .torrent files.
2019-08-31 22:59:33 +08:00
Chocobo1
d657c87243
Fix unable to remove web seeds
...
As suggested in post [1] we don't need to assign the `ti` field anymore when fastresme
already contains the `info` dict.
[1]: https://github.com/arvidn/libtorrent/issues/3946#issuecomment-523300003
2019-08-31 22:52:22 +08:00
Mike Tzou
2d13f87ba4
Merge pull request #11145 from Chocobo1/qpixmapcache
...
Setup pixmap cache in a proper place
2019-08-31 11:50:09 +08:00
Mike Tzou
ee8a7beb41
Merge pull request #11143 from Chocobo1/updater
...
Move "Check for program updates" checkbox out of Advanced settings
2019-08-30 14:55:55 +08:00
Chocobo1
7e0daf1663
Setup pixmap cache in a proper place
...
There is no need to reset the cache limit to previous value as
QPixmapCache is an application wide cache.
Also raise the cache size to 64MB.
2019-08-30 14:51:27 +08:00
Chocobo1
47b9d8dbc6
Clean up Application class constructor
2019-08-30 14:51:07 +08:00
Mike Tzou
62a3938480
Merge pull request #11085 from Chocobo1/model
...
Better on-demand reloading of torrent data
2019-08-30 12:45:57 +08:00
Chocobo1
eb784b0d2e
Move "Check for program updates" checkbox out of Advanced settings
2019-08-29 06:15:20 +08:00
Chocobo1
b921d96f4b
Use Q_ASSERT() to check invariants
2019-08-29 06:07:44 +08:00
Chocobo1
72d1d5d2dd
Cut down number of signal emits
2019-08-28 18:38:26 +08:00
Chocobo1
60df790b82
Initialize pointers
...
Fixup aeabd2d625
.
2019-08-28 13:08:36 +08:00
Mike Tzou
7ce26435bd
Merge pull request #11126 from Chocobo1/addedTime
...
Fix wrong "added on" date
2019-08-28 12:04:23 +08:00
Chocobo1
09503b58fa
Clean up loadTorrentResumeData()
2019-08-27 15:01:50 +08:00
Chocobo1
f3ce76110b
Simplify code
...
Instead of using dict_find_list() now we use the simpler dict_find()
since we are going to check its validness anyway.
2019-08-27 15:01:50 +08:00
Chocobo1
3a11c23efd
Fix wrong "added on" date
...
This only happens for magnet links when its metadata has yet to be retrieved.
Closes #11124 .
2019-08-27 15:01:50 +08:00
Chocobo1
0891cd4878
Avoid unecessary copying the parameter
...
Using forwarding reference here so that we won't get unnecessary copies
of the parameter passed to `slot`, for example a lambda function.
2019-08-27 14:30:03 +08:00
Chocobo1
aeabd2d625
Clean up PeerListWidget class
2019-08-27 14:30:03 +08:00
Mike Tzou
5c7f9530ee
Merge pull request #11060 from Chocobo1/tracker
...
Improve embedded tracker
2019-08-22 12:18:56 +08:00
Mike Tzou
62a2374f49
Merge pull request #11105 from Chocobo1/activity
...
Handle invalid time activity properly
2019-08-22 12:18:18 +08:00
Mike Tzou
53ec25df28
Merge pull request #11099 from thalieht/rssdotstoicon
...
Use FileSystemPathEdit in automated rss downloader
2019-08-22 12:17:53 +08:00
Chocobo1
8d0d8e4dcb
Improve embedded tracker
...
Now it conforms to BEPs more closely.
2019-08-21 18:05:50 +08:00
Chocobo1
fba72f5fb7
Simplify code
2019-08-21 17:46:11 +08:00
Chocobo1
bbecf87292
Handle invalid time activity properly
...
When there is no activity before m_nativeStatus.last_upload will be 0
and this commit will map it to -1 which retain the expected behavior as
before (libtorrent < 1.2 era).
2019-08-21 17:45:04 +08:00
thalieht
e26573d97f
Use FileSystemPathEdit in automated rss downloader
2019-08-20 15:34:51 +03:00
Thomas Piccirello
7047974132
Extract WebUI localStorage access into class
2019-08-18 23:58:11 -07:00
Chocobo1
863c9f9876
Speed up lookup operation in TransferListModel
...
Previously lookup is O(n), add operation is O(n), remove operation is
O(n).
Now lookup is O(1), add operation is O(1), remove operation is O(n).
n is the number of torrents already recorded.
2019-08-19 11:33:14 +08:00
Chocobo1
9c964cdd97
Fix using out-of-bounds of indexes
2019-08-18 20:00:54 +08:00
Chocobo1
e3483c62ca
Remove explicit conversion to QVariant
2019-08-18 20:00:43 +08:00
Chocobo1
1f3bf75fff
Better on-demand reloading of torrent data
2019-08-17 15:44:16 +08:00
Chocobo1
94f7a095bb
Implement proper equal operators
2019-08-16 01:35:41 +08:00
Chocobo1
f907328bdc
Add const to class function
2019-08-14 20:29:01 +08:00
Chocobo1
230949ee3b
Cache and reuse detected MIME type
2019-08-14 17:51:19 +08:00
Chocobo1
b34d90df0b
Fix translation issues
...
By using disambiguation field instead of comment field to differentiate
translations.
2019-08-13 12:20:23 +08:00
Mike Tzou
8555629128
Merge pull request #11057 from Piccirello/fix-pref-saving
...
Don't save preferences until all options are processed
2019-08-13 11:41:54 +08:00
Mike Tzou
c15e8752ed
Merge pull request #11053 from Piccirello/refactor_misc
...
Simplify WebUI function implementation
2019-08-13 11:41:35 +08:00
Vladimir Golovnev
2cac830749
Merge pull request #11054 from Piccirello/tom_organize_assets
...
Organize WebUI assets
2019-08-12 14:50:36 +03:00
Vladimir Golovnev (Glassez)
e649559650
Allow to refresh RSS item(s) via WebAPI
2019-08-12 07:39:23 +03:00
Tom Piccirello
bed143cafa
Don't save preferences until all options are processed
2019-08-11 13:44:18 -07:00
Thomas Piccirello
085ae05f19
Move WebUI views into separate folder
2019-08-10 22:14:08 -07:00
Thomas Piccirello
f214dd233b
Rename WebUI content files
2019-08-10 22:14:01 -07:00
Thomas Piccirello
b3f9b9e9b2
Rename WebUI toolbar files
2019-08-10 22:13:56 -07:00
Thomas Piccirello
3f8f9a3962
Remove html tags from inline page
...
This page's content is inserted into the existing page, so the presence of an <html> tag is incorrect.
2019-08-10 22:09:58 -07:00
Thomas Piccirello
feb1570c48
Simplify function implementation
2019-08-10 22:08:15 -07:00
Vladimir Golovnev
2d28f50acd
Merge pull request #10928 from Piccirello/webui-search-filter
...
Support exclusions in WebUI table filters
2019-08-10 21:46:11 +03:00
Mike Tzou
767f024585
Merge pull request #7475 from thalieht/ratiosuperseed
...
Add option to enable Super Seeding mode once ratio/time limit is reached. Closes #7160 .
2019-08-10 11:33:09 +08:00
thalieht
1f6f1716ad
Enable Super Seeding mode once ratio/time limit is reached
2019-08-09 13:06:34 +03:00
Chocobo1
6ac36368cd
Update user agent string
2019-08-09 13:12:11 +08:00
Chocobo1
0b6c1694b4
Update python installer URL
2019-08-09 12:47:52 +08:00
Mike Tzou
2427f5d324
Merge pull request #11041 from Chocobo1/splitRef
...
Revise operations in TorrentHandle class
2019-08-09 12:27:44 +08:00
Mike Tzou
2f28365bfa
Merge pull request #11040 from Chocobo1/options
...
Clean up GUI code
2019-08-09 12:27:14 +08:00
Chocobo1
8d6b9b6181
Revise sort model and delegate code
2019-08-08 22:17:18 +08:00
Chocobo1
061219d0a2
Simplify code
2019-08-08 21:25:28 +08:00
Chocobo1
c420ff29af
Revise operations in TorrentHandle class
2019-08-08 18:57:54 +08:00
Chocobo1
b5b678c58f
Replace QString::split() by faster alternatives
2019-08-08 18:57:54 +08:00
Chocobo1
c61116882b
Clean up TransferListModel class
2019-08-08 13:15:47 +08:00
Chocobo1
dcf632b39c
Remove redundant margin properties
...
Those are the same with the default values.
2019-08-08 13:15:47 +08:00
Chocobo1
672b44acba
Let OS assign listening port
...
This applies when "Use different port on startup" option is selected.
2019-08-08 13:14:25 +08:00
Chocobo1
c19f8f6b5e
Use a randomized port number for the first run
2019-08-08 13:14:23 +08:00
Mike Tzou
1eeac90a29
Merge pull request #11027 from airium/sort-name
...
Sort torrent names case-insensitively in webui
2019-08-08 13:02:19 +08:00
Mike Tzou
f31bcc384e
Merge pull request #11030 from qbittorrent/webui-increase-window-height
...
Increase WebUI window heights
2019-08-08 13:01:38 +08:00
Vladimir Golovnev (Glassez)
6bfa4370b7
CMake: Fix Windows build
2019-08-06 21:50:39 +03:00
airium
2ded6dc636
Sort torrent names case-insensitively in webui
2019-08-06 21:13:36 +08:00
Thomas Piccirello
6b1481d328
Increase WebUI window heights
...
Using a max height of 600px to avoid unnecessarily tall windows.
2019-08-06 01:48:31 -07:00
Thomas Piccirello
b829a0c687
Support exclusions in WebUI table filters
...
Closes #10241
2019-08-05 22:55:36 -07:00
Mike Tzou
c65c40a5cb
Merge pull request #11020 from Piccirello/remove_workaround
...
Remove Qt bug workaround
2019-08-06 10:17:52 +08:00
Mike Tzou
7f1bff4eb4
Merge pull request #11017 from Chocobo1/apictrl
...
Improvements to APIController class
2019-08-06 10:17:27 +08:00
Mike Tzou
2b617b0e71
Merge pull request #11010 from Chocobo1/qvector
...
Replace QList by QVector
2019-08-06 10:16:28 +08:00
Mike Tzou
7d598b18ca
Merge pull request #10158 from Piccirello/webui-peers-table
...
Add ability to add and ban a peer from the Web UI
2019-08-06 10:16:09 +08:00