Commit graph

1901 commits

Author SHA1 Message Date
jagannatharjun
8267898655 Fix large strings not visible in log widget 2020-05-31 15:37:33 +05:30
Mike Tzou
788d2729db
Merge pull request #12877 from an0n666/private-torrents
Address some issues regarding private torrents
2020-05-30 19:29:02 +08:00
jagannatharjun
bcf11cf1e8 Cache flag icons 2020-05-29 17:55:12 +05:30
Vladimir Golovnev
c003a12f1f
Merge pull request #12884 from glassez/custom-storage
Find complete files when checking torrent
2020-05-26 19:00:37 +03:00
an0n666
6d85ae8f62 Address some issues regarding private torrents 2020-05-26 14:18:15 +06:00
Vladimir Golovnev (Glassez)
f4efa530dc
Create header for common BitTorrent declarations 2020-05-25 20:32:35 +03:00
Chocobo1
ba2db3f139
Avoid overuse of QStringLiteral
This code path doesn't look like frequently used.
2020-05-24 13:13:55 +08:00
Chocobo1
99a1802dbb
Make class variable const 2020-05-24 13:13:55 +08:00
Chocobo1
00eb61543d
Make the icon cache a class variable 2020-05-24 13:13:32 +08:00
jagannatharjun
3c733ddf0c Allow changing GUI icons from theme bundles 2020-05-22 11:06:22 +05:30
jagannatharjun
43319f2213 Always use UIThemeManager for obtaining icons in GUI 2020-05-22 11:06:10 +05:30
jagannatharjun
971a21f306 Add missing header stdexcept in fspathedit
Fixes compilation error with MSVC 16.6
2020-05-20 23:25:19 +05:30
Vladimir Golovnev
dde7421f59
Merge pull request #12848 from jagannatharjun/move-icons
Move all icon resources in icons folder root
2020-05-19 07:39:55 +03:00
jagannatharjun
ab91d546e5 Move all icon resources to icon folder root 2020-05-18 20:30:51 +05:30
Chocobo1
328eb5b5cc
Provide a proper default return statement for the function 2020-05-16 21:48:10 +08:00
Chocobo1
21e1c33d15
Don't use deprecated QPainter option
Warning from compiler:
speedplotview.cpp:342:63: warning: ‘QPainter::HighQualityAntialiasing’ is deprecated: Use Antialiasing instead [-Wdeprecated-declarations]
2020-05-16 21:23:45 +08:00
thalieht
e2a8fe0dce Disable checkbox if torrent doesn't have root folder 2020-05-13 13:35:13 +03:00
FranciscoPombal
2192de5233 Fix include 2020-05-09 17:36:37 +01:00
Vladimir Golovnev (Glassez)
a8c333ff25
Drop "private" subfolders
"private" subfolders violate the structure of the project,
since the existence of all other subfolders is based on a
different principle.
In addition, there is no clear line between "private" and
"non private".
2020-05-08 14:59:18 +03:00
Mike Tzou
1917064bde
Merge pull request #12755 from jagannatharjun/transferlist-colors
Read Transfer list's custom colors from config.json
2020-05-07 12:34:28 +08:00
jagannatharjun
77658be9a7 Read Transfer list's custom colors from config.json 2020-05-06 16:37:37 +05:30
jagannatharjun
cce8f178e4 Allow changing log colors from config.json 2020-05-05 18:53:31 +05:30
Mike Tzou
2c100feb35
Merge pull request #11618 from jagannatharjun/align
Align Properties Tabbar in center
2020-05-05 13:10:53 +08:00
Mike Tzou
5b36706a71
Merge pull request #12719 from jagannatharjun/json-colors
Allow setting application palette from config.json
2020-05-05 12:37:09 +08:00
jagannatharjun
afbe55d004 Allow setting application palette from config.json 2020-05-04 18:37:58 +05:30
jagannatharjun
6f38a86d9a Align Properties Tabbar in center 2020-05-04 11:25:37 +05:30
Vladimir Golovnev
2d1d1ba26a
Merge pull request #12734 from glassez/project-cleanup
Cleanup project configuration
2020-05-03 16:37:36 +03:00
Vladimir Golovnev (Glassez)
c40da7a5dd
CMake: Fix header inclusion in autogenerated files 2020-05-03 10:27:24 +03:00
Nick Korotysh
c97e4f105f
Clean up header inclusion 2020-05-02 19:54:36 +03:00
Vladimir Golovnev (Glassez)
eeae308c29
CMake: Don't use subprojects in GUI subfolders 2020-05-02 17:21:03 +03:00
Vladimir Golovnev (Glassez)
ace8a093d2
QMake: Include all GUI sources in "gui.pri" 2020-05-02 17:20:43 +03:00
Vladimir Golovnev
4e7ff88cf4
Merge pull request #12718 from glassez/improve-cmake
Improve CMake project
2020-05-02 08:54:25 +03:00
Mike Tzou
02c6afd769
Merge pull request #12711 from Kolcha/tooltip
Show tooltip for torrent name in transfer list
2020-05-02 11:51:16 +08:00
Vladimir Golovnev (Glassez)
642bf7b8a6
CMake: Don't split GUI code into several libraries 2020-05-01 17:03:00 +03:00
Vladimir Golovnev (Glassez)
4a2d25b03b
Clean up header inclusion 2020-05-01 17:02:49 +03:00
Nick Korotysh
1fd4ff5c2c
Show tooltip for some properties in transfer list
Tooltip is added for next columns:
- name
- status
- category
- tags
- tracker
- save path

closes #12696
2020-05-01 13:08:09 +03:00
Mike Tzou
2aa80fe9ba
Merge pull request #12689 from thalieht/subfolder
Rename "Create subfolder" option to "Keep subfolder"
2020-05-01 14:09:17 +08:00
Vladimir Golovnev
7ca0592694
Merge pull request #12684 from an0n666/requires-restart
Remove "requires restart" from network interface settings
2020-05-01 07:38:36 +03:00
Chocobo1
f6eb341b32
Clean up code 2020-04-30 13:18:24 +08:00
Mike Tzou
4f820163ff
Merge pull request #12691 from Chocobo1/iterator
Support range-based iteration in IndexRange class
2020-04-30 13:10:13 +08:00
Mike Tzou
7061242681
Merge pull request #12176 from NotTsunami/ssl
Add HTTPS tracker certificate validation option
2020-04-30 13:09:31 +08:00
Chocobo1
ddb9dfe185
Disable copy construction of QObject subclasses 2020-04-29 21:40:50 +08:00
an0n666
1d3bb705c8 Remove "requires restart" from network interface settings
Network interface changes are applied on the fly. A restart is not required.
2020-04-29 12:42:49 +06:00
thalieht
1bdffe1729 Rename "Create subfolder" to "Keep top-level folder"
Closes #12673
2020-04-29 03:09:38 +03:00
Mike Tzou
6dcb0665ca
Merge pull request #12655 from Chocobo1/delete
Improve behavior of deleting torrents in transfer list
2020-04-28 11:14:49 +08:00
Chocobo1
7ce83599b4
Improve behavior of deleting torrents in transfer list
Avoids accessing invalid pointers.
Closes #12584.
2020-04-27 02:03:19 +08:00
Andrei Stepanov
159f93e051
Fix typo in optionsdialog.cpp
qBittorent -> qBittorrent
2020-04-26 20:59:42 +04:00
Chocobo1
bb80b378c1
Add ability to send custom HTTP headers 2020-04-23 12:13:01 +08:00
NotTsunami
cc1ebbf379 Add HTTPS tracker certificate validation option
This commit adds a new libtorrent setting to validate HTTPS tracker
certificates. When enabled, libtorrent will validate the certificate
of HTTPS trackers against the system's certificate store. This option
is only enabled on libtorrent versions >= 1.2.6 and on non-Windows
systems, as OpenSSL does not use the system's certificate store on
Windows.
2020-04-22 15:50:17 -04:00
Chocobo1
f915241bcb
Reduce ambiguity for selecting icons
Related: #12554.
2020-04-21 12:35:08 +08:00
Mike Tzou
8ed63d69de
Merge pull request #12528 from thalieht/proxycheckbox
Don't uncheck Authentication checkbox when changing proxy type
2020-04-21 01:28:21 +08:00
thalieht
5d16379941 Don't uncheck Authentication checkbox when changing proxy type
Closes #12525
2020-04-19 21:28:21 +03:00
Chocobo1
16a76eee9f
Add final specifier to GUI classes
Follow up d3d3f7dbb3.
2020-04-19 10:59:59 +08:00
thalieht
f0549b4cb2 Make a few cosmetic changes in code 2020-04-17 19:51:26 +03:00
Vladimir Golovnev
2681093d27
Merge pull request #12513 from glassez/torrent-impl
Split TorrentHandle interface and implementation
2020-04-17 07:40:28 +03:00
Mike Tzou
a5fe96f793
Merge pull request #12458 from jagannatharjun/log
Convert the Log widget to use custom View/Model
2020-04-17 11:27:35 +08:00
Vladimir Golovnev (Glassez)
1132b84548
Split TorrentHandle interface and implementation 2020-04-16 20:22:26 +03:00
jagannatharjun
fd89717330 Convert the Log widget to use custom View/Model
Co-authored-by: sledgehammer999 <hammered999@gmail.com>
2020-04-15 22:18:00 +05:30
Mike Tzou
c25b3e623c
Merge pull request #12423 from an0n666/remove-strict-superseeding
Remove deprecated strict super seeding mode from advanced settings
2020-04-12 00:41:28 +08:00
Chocobo1
31648a4433
Fix date format for "Last seen complete"
Closes #12462.
2020-04-10 13:06:56 +08:00
Chocobo1
f76d56e224
Suppress unused variable warning on macOS 2020-04-07 16:02:10 +08:00
an0n666
026aad2c04 Remove deprecated strict super seeding mode from advanced settings 2020-04-07 09:54:32 +06:00
Chocobo1
5eaedb13e5
Sort locale language list 2020-04-05 19:21:37 +08:00
Chocobo1
09545d4036
Fix wrong logic that disables "prevent sleeping" timer
Also update power management state early so we don't need to wait for
the timer timeout to have the effect.
2020-04-04 12:15:56 +08:00
Chocobo1
3752453522
Clean up coding style 2020-04-04 12:15:54 +08:00
Vladimir Golovnev (Glassez)
b759a71c5d
Fix sub-sorting of Transfer list
Closes #12330.
2020-04-03 19:09:41 +03:00
Mike Tzou
8a8607bf93
Merge pull request #12175 from NotTsunami/upnp
Add UPnP lease duration advanced option
2020-03-29 12:29:10 +08:00
NotTsunami
6b4925d222 Add UPnP lease duration advanced option
This is a new setting added that is pending addition to
libtorrent 1.2.6. This setting is important because some routers do
not support expiration times on port-maps and do not return an error
either, silently failing. The previous default of permanent leases is
retained.
2020-03-28 00:32:32 -04:00
Chocobo1
7de8a4d6e0
Construct QString more efficiently 2020-03-25 12:00:11 +08:00
Kacper Michajłow
e2c9ca5ee5 Add missing QPainterPath header include 2020-03-22 14:58:44 +01:00
Mike Tzou
4884f08e04
Merge pull request #12187 from NotTsunami/keypress
Allow other keypresses in LogListWidget
2020-03-19 13:36:41 +08:00
Mike Tzou
a9111b1357
Merge pull request #12180 from FranciscoPombal/fix_stats
Fix total connected peers count calculation
2020-03-19 12:07:20 +08:00
FranciscoPombal
a81789f4af Fix total connected peers count calculation
Also fix small typo in function name.
2020-03-17 18:01:57 +00:00
NotTsunami
c5aab39836 Allow other keypresses in LogListWidget
By not emitting the native signal, all other keypresses other than
the copy and select keysequences are ignored. This should reallow
keyboard navigation within LogListWidget objects.

Closes #12172.
2020-03-17 01:30:01 -04:00
Chocobo1
b7e7d8019c
Use helper function to construct QString
This is shorter and avoids the need of 2 constructors.
2020-03-16 21:27:42 +08:00
Vladimir Golovnev
5127156ba4
Merge pull request #12035 from glassez/move-storage
Move torrent storages one by one
2020-03-13 15:59:05 +03:00
Mike Tzou
92cc2a4f31
Merge pull request #12124 from Chocobo1/rename
Fix crash when renaming torrent contents
2020-03-08 00:16:02 +08:00
Mike Tzou
dc4e9e3779
Merge pull request #11813 from Chocobo1/python
Drop python2 support
2020-03-07 10:18:45 +08:00
Chocobo1
62b0d25140
Capture pointer by value 2020-03-07 10:06:35 +08:00
Mike Tzou
095ef67e30
Merge pull request #12102 from Kolcha/hidpi
Delegate GUI scaling work to Qt
2020-03-07 10:05:21 +08:00
Nick Korotysh
d49d7c1d82
Delegate GUI scaling work to Qt
Set Qt::AA_EnableHighDpiScaling application attribute when Qt 5.14.x or
newer is used. This fixes a lot of scaling issues on HiDPI displays.

Unfortunately, this flag must be set only before QApllication object
creation, so the only one place where it can be done is main().
2020-03-06 12:04:57 +03:00
Chocobo1
48e7191ef7
Initialize boolean variables 2020-03-06 15:50:55 +08:00
Chocobo1
9c6bc6c89a
Fix crash when renaming torrent contents
Closes #10328.
2020-03-06 15:50:37 +08:00
Chocobo1
2157e500ef
Use helper functions to construct smart pointers 2020-03-05 19:32:28 +08:00
Mike Tzou
1ca303cb0a
Merge pull request #12027 from NotTsunami/pr2
Improve the options tooltips
2020-03-03 17:47:23 +08:00
NotTsunami
f1788c76a9 Improve the options tooltips
* Fix wrong fields for translation comments
* Improve torrent management tooltip to cover both modes
* Add new tooltips for potentially confusing settings

Decent progress towards #6346, closes #9994, closes #11528
2020-03-02 23:55:08 -05:00
Vladimir Golovnev
4d2943a782
Merge pull request #12033 from glassez/save-torrent
Allow to save downloaded metadata as torrent file
2020-02-27 08:49:40 +03:00
Vladimir Golovnev (Glassez)
e4ff206e3c
Move torrent storages one by one 2020-02-26 10:20:04 +03:00
Vladimir Golovnev (Glassez)
dd0cee44c1
Allow to save downloaded metadata as torrent file 2020-02-26 08:10:11 +03:00
Chocobo1
071ffd13de
Fix wrong field for translation comment
The `comment` field is used for disambiguation between identical
strings. Our case here should use the `extracomment` field which
meant as comment for translators.
2020-02-26 13:04:18 +08:00
Chocobo1
f4febb96b4
Remove misleading translation comment
Also it was using the wrong field for translation comment.
2020-02-26 12:55:19 +08:00
djt3
e6887fc950 Change placeholder text in torrent list's filter 2020-02-23 14:40:45 +00:00
sledgehammer999
ea1481beef
Use IP geolocation database by DB-IP instead of MaxMind
Closes #11792
2020-02-18 16:11:28 +02:00
sledgehammer999
322ae3e0bc
Merge pull request #11825 from FranciscoPombal/stalled_filter
Add stalled filters to GUI and Web API/UI
2020-02-16 18:32:37 +02:00
Chocobo1
6eb190c373
Expose WebUI ban duration to users 2020-02-14 16:23:30 +08:00
Chocobo1
f88d6b2e55
Expose WebUI ban counter to users 2020-02-14 12:31:12 +08:00
Chocobo1
baa13c044a
Drop python2 support
Closes #11811.
2020-02-08 12:36:45 +08:00
NotTsunami
6748e8d787 Remove redundant null checks
Attempting to delete a null pointer is a noop in C++.

Closes #2864.

[1] https://isocpp.org/wiki/faq/freestore-mgmt#delete-handles-null
2020-02-03 16:38:51 -05:00
Chocobo1
b2ab6c1858
Let ReverseResolution always return/emit a result 2020-01-30 19:24:18 +08:00
Chocobo1
ff31bb86bc
Speed up lookup time
By adding another variable we can get O(1) lookup time instead of O(n).
Fix up 5f415c292d.
2020-01-30 19:23:54 +08:00
Chocobo1
86e3d0d816
Improve ReverseResolution class
* Use QHostAddress type for IP
* Avoid double lookup
* Use larger cache size
2020-01-30 14:11:03 +08:00
Mike Tzou
11bea8d393
Merge pull request #11918 from thalieht/peerssameip
Show any multiple connections from the same IP in peer list
2020-01-30 12:59:17 +08:00
thalieht
5f415c292d Show any multiple connections from the same IP in peer list
The uniqueness of peers is now determined by their
IP, port and connection type (uTP etc.) instead of just their IP
2020-01-29 20:40:10 +02:00
Vladimir Golovnev (Glassez)
666e733a4a
Track settings changed event in TransferListModel 2020-01-24 07:42:39 +03:00
Vladimir Golovnev (Glassez)
099943ea3c
Fix hide zero values 2020-01-24 07:41:04 +03:00
Sakib-Abrar
1768570bf9 Show "∞" instead of " -1" in Preferences 2020-01-22 00:06:19 +06:00
Vladimir Golovnev
75ebd54ea3
Merge pull request #11088 from jagannatharjun/organize-style
Reorganize UI theme selection
2020-01-20 06:56:54 +03:00
Prince Gupta
c9e162cf8a Reorganize UI theme selection 2020-01-18 23:12:33 +05:30
Mike Tzou
146e8213a5
Merge pull request #11781 from FranciscoPombal/piece_extent_affinity
Add piece_extent_affinity to AdvancedSettings
2020-01-14 12:53:39 +08:00
FranciscoPombal
f4742a98c5 Add stalled filters to GUI and Web API/UI
`/api/v2/torrents/info` can now take the following new values for the`filter` parameter: `stalled`, `stalled_uploading` and `stalled_downloading`.

Requires Web API version bump.

Closes #11787
2020-01-13 11:41:37 +00:00
FranciscoPombal
ed96a07a75 Add piece_extent_affinity to AdvancedSettings
Expose option in WebUI settings and WebAPI.

Requires WebAPI version bump.

Closes #11436.
2020-01-13 00:11:29 +00:00
Vladimir Golovnev
101ab3cf6c
Merge pull request #11864 from glassez/fix-sorting
Fix Transfer list sorting
2020-01-12 11:05:20 +03:00
Vladimir Golovnev (Glassez)
118debd6bf
Fix Transfer list sorting 2020-01-11 18:19:48 +03:00
Chocobo1
396660b031
Fix missing string 2020-01-11 18:48:49 +08:00
Chocobo1
2e4584578b
Bump python version for new installation 2020-01-11 18:48:01 +08:00
Chocobo1
029795bc19
Bump copyright year 2020-01-11 18:47:33 +08:00
An0n
bf32e90c40 Change placement of stop tracker timeout 2020-01-09 19:01:05 +00:00
Mike Tzou
057860584c
Merge pull request #11834 from an0n666/an0n666-expose-stop-tracker-timeout
Expose stop tracker timeout in Advanced Settings (GUI + WebUI)
2020-01-08 17:30:21 +08:00
an0n666
3f223c3a45 Expose stop_tracker_timeout in advanced settings 2020-01-08 08:21:55 +00:00
thalieht
c5177eae9f Allow double-click in preview dialog 2020-01-05 11:28:04 +02:00
Vladimir Golovnev
37d7323ac0
Merge pull request #11708 from glassez/transfer-list
Improve Transfer list architecture
2019-12-27 16:25:26 +03:00
Vladimir Golovnev (Glassez)
15f2a3b564
Use QStyledItemDelegate instead of QItemDelegate 2019-12-26 22:10:28 +03:00
Vladimir Golovnev (Glassez)
766cfb67df
Fix transfer list architecture
Model returns string for DisplayRole.
Text alignment is set by Model (using TextAlignmentRole).
Delegate performs custom painting only where necessary
(i.e. for Progress bar).
2019-12-26 22:09:56 +03:00
Mike Tzou
5c3c1e07df
Merge pull request #11739 from Chocobo1/qt5_14
Migrate away from deprecated API in Qt 5.14
2019-12-26 12:43:04 +08:00
Chocobo1
f5f3dc2ba1
Remove unused variable 2019-12-25 19:23:37 +08:00
Chocobo1
2422d81de1
Migrate away from deprecated API in Qt 5.14 2019-12-25 19:23:37 +08:00
Mike Tzou
fea39fbcf2
Merge pull request #11726 from FranciscoPombal/fix_#11724
WebUI: Implement "Secure" flag for session cookie. Closes #11724
2019-12-25 13:06:40 +08:00
sledgehammer999
f672df1cf1
Merge pull request #11278 from Piccirello/country_region
Rename Country column to "Country / Region"
2019-12-23 21:54:30 +02:00
FranciscoPombal
691d5e5d89 WebUI: Implement "Secure" flag for session cookie
Closes #11724.

Option is enabled by default for users using qBittorrent's built-in HTTPS capabilities. This flag will never be set if qBittorrent is using plain HTTP.

Users using HTTPS reverse proxies, like "qbt <-> (http) <-> proxy <-> (https) <-> user" should override the flag in the proxy in order to set it, if they wish to do so.
2019-12-23 17:58:08 +00:00
sledgehammer999
3a70dd4438
Merge pull request #11672 from sledgehammer999/show_console
Option to show console when external program is run
2019-12-23 16:16:24 +02:00
sledgehammer999
8fa6e372a2
Option to show console when external program is run
Windows only.
Closes #9592
2019-12-19 19:13:01 +02:00
sledgehammer999
18de63f743
Merge pull request #11433 from jagannatharjun/colors
Allow transfer list text color changes through QSS
2019-12-19 18:20:49 +02:00
sledgehammer999
52273ca18c
Merge pull request #11696 from Medvedishce/Update-free-disk-space
Update free disk space label on Category change in Auto Mode
2019-12-19 18:16:08 +02:00
Prince Gupta
d3aa45526a Allow transfer list text color changes through QSS 2019-12-19 12:45:26 +05:30
Medvedishce
48fff37143
Update free disk space label on Category change in Auto Mode
Closes #8772.
This will fix issue that "Free space on disk:" label in 
Add New Torrent dialog not updated on Category change
when Torrent Management Mode is on Auto mode.
2019-12-18 13:49:43 +03:00
Chocobo1
723668ba46
Replace hard-coded numbers in TrackerFiltersList class 2019-12-18 16:33:37 +08:00
Chocobo1
bf264b983a
Simplify null pointer check 2019-12-18 15:13:02 +08:00
Chocobo1
bb73fa5dbe
Replace a series of if() by switch() 2019-12-18 15:05:42 +08:00
Mike Tzou
5b7df3a6e7
Merge pull request #11675 from jagannatharjun/resize-align
Align Properties tab bar correctly on window resize
2019-12-17 10:44:13 +08:00
Prince Gupta
6258c1e65b Align Properties tab bar correctly on window resize 2019-12-16 15:42:50 +05:30
sledgehammer999
8200ef6bd5
Rework the listening IP/interface selection code
Closes #11561
2019-12-11 09:56:45 +02:00
Thomas Piccirello
33a3624652 Rename Country column to "Country / Region"
Not all flags displayed strictly belong to countries.
2019-12-03 23:05:38 -08:00
Chocobo1
a92826d316
Fix inconsistent icon for deleting torrent
Closes #11565.
2019-12-04 12:59:29 +08:00
Mike Tzou
2e8b17e498
Merge pull request #11521 from Chocobo1/errorStatus
Fix stuck in wrong torrent state
2019-12-03 19:22:39 +08:00
Vladimir Golovnev
452b1d8ea2
Merge pull request #11543 from j1warren/content_tab_feature
Expand single-item folders in torrent content
2019-12-03 13:04:53 +03:00
warren
b37795d344 Expand single-item folders in torrent content 2019-12-02 21:56:44 +05:00
Chocobo1
b6050463f4
Show torrent error message in transfer list 2019-11-26 03:15:48 +08:00
Chocobo1
0f2c61a207
Remove redundant type casting 2019-11-14 12:18:41 +08:00
Mike Tzou
9cb07db84b
Merge pull request #11473 from j1warren/dblclick_preview_file
Add "Preview file" double-click action
2019-11-14 12:02:57 +08:00
Mike Tzou
cdb1874263
Merge pull request #11466 from Xegor/master
Add "create subfolder" option to RSS auto-download rules
2019-11-14 12:02:06 +08:00
warren
74009f13d9 Add "Preview file" double-click action 2019-11-11 23:12:55 +05:00
Chocobo1
ff4aae11f8
Add required header
The header was missing and our cmake CI builds failed as a result.
2019-11-11 20:12:53 +08:00
Xegor
325f36fa4f Add create subfolder option to RSS auto-download rules 2019-11-11 12:46:51 +01:00
Mike Tzou
2fb1182700
Merge pull request #11317 from Chocobo1/preview
Fix "preview file" action not working
2019-11-04 11:32:14 +08:00
Mike Tzou
475fbfb712
Merge pull request #11356 from Chocobo1/banIP
Allow to select multiple entries in "banned IP" dialog
2019-11-04 11:29:22 +08:00
Mike Tzou
565eb4cdc8
Merge pull request #11430 from Chocobo1/qt
Fix integer narrowing on x86
2019-11-01 10:34:56 +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
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
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
e0a23ba93d
Use InfoHash type in queueing operations
This avoids redundant type conversions.
2019-10-02 15:21:16 +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
19b6f56a0a
Move DeletionConfirmationDialog class to its own .cpp file 2019-09-29 11:29:16 +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
58fa5e004f
Improve "stats updated" signal handling in MainWindow class 2019-09-24 11:51:29 +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
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
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
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
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
Mike Tzou
d2c21ce507
Merge pull request #11195 from Chocobo1/mac
Replace deprecated macro
2019-09-07 11:58:23 +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
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
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
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
Chocobo1
8d0d8e4dcb
Improve embedded tracker
Now it conforms to BEPs more closely.
2019-08-21 18:05:50 +08:00
thalieht
e26573d97f Use FileSystemPathEdit in automated rss downloader 2019-08-20 15:34:51 +03: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
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
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
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
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
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
Mike Tzou
c65c40a5cb
Merge pull request #11020 from Piccirello/remove_workaround
Remove Qt bug workaround
2019-08-06 10:17:52 +08:00
Chocobo1
e90a2c00a5
Replace QList by QVector 2019-08-05 20:56:15 +08:00
Thomas Piccirello
378504de2b Remove Qt bug workaround
The Qt bug is fixed in 5.7.1, while we require Qt >= 5.9.0.
2019-08-05 01:27:47 -07:00
Mike Tzou
c0fc4e6d90
Merge pull request #10993 from Piccirello/adjust-verbiage
Adjust wording to sound more natural
2019-07-31 14:24:58 +08:00
Chocobo1
3ab2fe907f
Remove Windows XP remnants 2019-07-31 02:10:22 +08:00
Chocobo1
cdb0db02f9
Replace obsoleted QSysInfo functions 2019-07-31 02:10:22 +08:00
Tom Piccirello
eaa700791b
Adjust wording to sound more natural 2019-07-29 00:31:09 -07:00
Chocobo1
7ab3479a34
Replace static_cast by qOverload 2019-07-26 22:32:18 +08:00
Chocobo1
ee0d2d2220
Move fspathedit_p to private folder 2019-07-26 22:32:18 +08:00
Chocobo1
60faba60ea
Add availability column
Closes #1632.
2019-07-25 13:17:14 +08:00
Chocobo1
9d88dd2604
Rename class variables 2019-07-24 22:22:02 +08:00
Mike Tzou
ce81103398
Merge pull request #10839 from Piccirello/gui-files-table-file-size
Update remaining size of ignored files to 0
2019-07-23 22:57:32 +08:00
Vladimir Golovnev
cf2e7d77d6
Merge pull request #10950 from glassez/drop-deprecated
Don't use deprecated libtorrent features
2019-07-23 09:19:15 +03:00
Vladimir Golovnev (Glassez)
ad6a40d5f4
Extract PeerAddress class into separate file 2019-07-23 06:27:35 +03:00
Thomas Piccirello
1b23a27acb Update remaining size of ignored files to 0
Also fixes a bug where ignoring the last item within a folder wouldn't recalculate the folder's size
2019-07-21 12:51:35 -07:00
Vladimir Golovnev (Glassez)
60ffa3030e
Don't use deprecated libtorrent features 2019-07-21 19:28:28 +03:00
Chocobo1
4a90716843
Add override keyword to functions 2019-07-19 11:58:56 +08:00
Chocobo1
07263d2d70
Move implementation to its own file 2019-07-18 00:30:44 +08:00
Mike Tzou
1e70c52e7a
Merge pull request #10934 from Chocobo1/delete
Rely on Qt ownership to delete class members
2019-07-17 12:02:30 +08:00
Chocobo1
e74b984a0a
Rely on Qt ownership to delete class members 2019-07-16 18:42:26 +08:00
Prince Gupta
8267a4fef9 Incorporate GuiIconProvider inside UIThemeManager 2019-07-16 09:31:33 +05:30
Mike Tzou
94e2c44840
Merge pull request #10918 from Chocobo1/trackers
Various code clean up
2019-07-15 09:59:45 +08:00
Chocobo1
7b568b07e6
Clean up CMakeLists.txt 2019-07-13 19:55:13 +08:00
Chocobo1
032883e278
Move LineEdit files out of subfolder 2019-07-13 19:46:53 +08:00
Chocobo1
23ebb3134b
Move QLabels out of class 2019-07-13 19:38:37 +08:00
Chocobo1
cc663746eb
Forward declare some classes 2019-07-13 19:38:37 +08:00
thalieht
7b31868e3c Rename priority to queue in the context of torrents 2019-07-13 14:04:16 +03:00
Chocobo1
599bfc0735
Use Qt object ownership to handle QShortcut deletions 2019-07-13 13:24:27 +08:00
Chocobo1
662e1e6134
Clean up code in TrackerListWidget class 2019-07-13 12:53:26 +08:00
Chocobo1
b55c6a360a
Implement tri-state checkbox action in menu
The new TriStateAction class is an improvement of the old one in the
sense that:
1. Have public method to set states.
2. Can connect to the usual Qt slots.
3. Draws checkbox at the correct offset (where QAction draws) in menu
   and better handling of mouse clicking and keyboard navigating.
2019-07-12 19:57:31 +08:00
Mike Tzou
24932f6cb6
Merge pull request #10895 from Chocobo1/tracker
Add dialog to mass edit torrent's tracker
2019-07-12 10:59:50 +08:00
Chocobo1
8eabaf5eb2
Replace QList by QVector 2019-07-11 12:10:19 +08:00
Chocobo1
9e7f50517e
Add "Tracker entries" dialog 2019-07-11 12:10:19 +08:00
Prince Gupta
a24925c858 Allow styling with QSS stylesheets 2019-07-09 19:56:55 +05:30
Chocobo1
ed2199b91c
Add "File pool size" option 2019-07-03 18:06:07 +08:00
Chocobo1
6286bc716c
Add "Socket backlog size" option
The default value in libtorrent is 5 which is too small nowadays.
The new default value 30 is chosen to be in line with
QTcpServer::maxPendingConnections().
2019-07-03 17:36:56 +08:00
Mike Tzou
4b25f87859
Merge pull request #10874 from Chocobo1/qt
Replace obsoleted Qt functions
2019-07-02 10:57:06 +08:00
Chocobo1
4eff268095
Replace obsoleted QFontMetrics::width()
Qt 5.13 marked QFontMetrics::width() obsolete.
2019-07-01 14:48:53 +08:00