Commit Graph

2559 Commits

Author SHA1 Message Date
sledgehammer999
f4a0868426 Make Program Updater choose the same build for download
We're probably stuck offering the duo of RC_1_2 and RC_2_0 for some
time in the future. So hardcode the choices and make the Program Updater
choose the variant the user currently uses.
2024-09-29 20:28:10 +03:00
Prince Gupta
d4ccf3001c Fix highlighted piece color
PR #20971.
2024-09-02 16:17:57 +03:00
Vladimir Golovnev
f4125601de Refresh search results colors once color scheme is changed
* Refresh search results colors once color scheme is changed
* Improve color of visited search result items

PR #21189.
Closes #21187.
2024-08-21 15:12:07 +03:00
Vladimir Golovnev
a67bd271c6 Refresh pieces bar colors once color scheme is changed
PR #21183.
Closes #21155.
2024-08-13 09:37:47 +03:00
Vladimir Golovnev
3ad8fcbdd2 Hide zero status filters when torrents removed
PR #21150.
Closes #21146.
2024-08-08 08:22:51 +03:00
Vladimir Golovnev
4f0cc8aa11 Fix incorrect sorting by "private" column
PR #21041.
2024-07-15 08:52:42 +03:00
ManiMatter
4d490c84e7 Add ability to display torrent "privateness" in UI
PR #20951.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
Co-authored-by: thalieht <thalieht@users.noreply.github.com>
2024-07-15 08:52:23 +03:00
Vladimir Golovnev
418edc7471 Apply bulk changes to correct content widget items
PR #21006.
Closes #21001.
2024-07-08 16:51:33 +03:00
Vladimir Golovnev
b0ac763048 Show scroll bar in Torrent Tags dialog
PR #21026.
Closes #21022.
2024-07-07 16:10:07 +03:00
Vladimir Golovnev
127d2d6f0b Fix handling of tags containing '&' character
PR #21024.
Closes #20773.
2024-07-07 16:10:05 +03:00
Vladimir Golovnev
4149609e78 Allow to move content files to Trash instead of deleting them
PR #20252.
2024-07-07 16:09:48 +03:00
vikas_c
cea20141a9 Show download progress for folders with zero byte size as 100 instead of 0
Fixes the download progress calculation for folders with zero size.
Previously, the progress would be Zero. Now, folders with zero size
show 100% progress.

PR #20567.
2024-06-25 21:13:19 +03:00
Chocobo1
0f5a27ed50 Improve connection handling
1. Previously unhandled connections will stay in pending state. It won't
be closed until timeout happened. This may lead to wasting system
resources. Now the (over-limit) connection is actively rejected.

2. When out-of-memory occurs here, reject the new connection instead of
throwing exception and crash.

3. Also clean up some unused bits.

PR #20961.
2024-06-25 21:13:18 +03:00
Vladimir Golovnev
c2cf898ccd Allow to use regular expression to filter torrent content
PR #20944.
Closes #19934.
2024-06-25 21:13:18 +03:00
Vladimir Golovnev
5f50b701d2 Don't use custom "file icon provider" on Windows
PR #20936.
Closes #20908.
2024-06-25 21:13:17 +03:00
Chocobo1
9f20d9c3aa Revise Protocol column
Add "BT" (BitTorrent) to avoid confusion about which protocol it is referring to.
Also its value doesn't need to be translated.

PR #20897.
2024-06-25 21:13:17 +03:00
Vladimir Golovnev
683492648f Apply filename filter to subfolder names as well
PR #20902.
Closes #14480.
2024-06-25 21:13:17 +03:00
Chocobo1
8bad80bcdd Avoid redundant lookup
PR #20890.
2024-06-25 21:13:15 +03:00
Vladimir Golovnev
b8a774f1fb Improve structure of AddNewTorrentDialog code
Restructures the code to separate the basic logic from the logic that depends on the parameters and properties of the torrent being added.
Also fixes "Never show again" checkbox functionality.

PR #20848.
2024-05-18 10:38:49 +03:00
Vladimir Golovnev
fb796ec595 Don't hide member variables when storing current speeds
PR #20847.
Closes #20843.
2024-05-16 08:17:51 +03:00
Vladimir Golovnev
00ca209ab9 Allow to rearrange search tabs
PR #20842.
Closes #20841.
2024-05-16 08:16:54 +03:00
Vladimir Golovnev
4d8713ce11 WebAPI: Add a way to download .torrent file using search plugin
* Simplify nova2dl script
* Use search engine name instead of site URL (like nova2 does)
* Add a way to download torrent using search plugin

PR #20824.
2024-05-15 08:47:40 +03:00
Vladimir Golovnev
2b728b3bc0 Add an option to set BitTorrent session shutdown timeout
PR #20797.
2024-05-07 13:15:39 +03:00
Vladimir Golovnev
8ef7d3ec9a Add ability to pause/resume entire BitTorrent session
PR #20757.
Closes #18993.
2024-05-03 09:02:50 +03:00
ducalex
42b87963fd Add date column to the built-in search engine
Adds a date column to the built-in search engine to show when a torrent was published/uploaded on the engine site.
When a plugin wants to show a date, it can now add a `pub_date` entry to its result dict. The value format is a unix timestamp (an integer representing seconds since epoch).
Plugins with no date support will keep working.

PR #20703.
2024-04-29 21:10:24 +03:00
Chocobo1
321d7e5b17 Adjust tracker tier when adding additional trackers
Closes #20102.
PR #20729.
2024-04-25 12:18:30 +08:00
Vladimir Golovnev
fc3953dbaa Don't overwrite stored layout of main window with incorrect one
Prevents overwriting of the stored layout in case the main window was hidden at startup and
has not been shown since, because incorrect dimensions can be provided by it in this case.

PR #20725.
Closes #20720.
2024-04-20 11:10:31 +03:00
Vladimir Golovnev
7310eec74e Focus on Download button if torrent link retrieved from the clipboard
PR #20716.
Closes #20682.
2024-04-19 09:21:52 +03:00
Vladimir Golovnev
3e0fd01604 Add extra offset for dialog frame
PR #20715.
Closes #20609.
2024-04-18 09:04:06 +03:00
Vladimir Golovnev
ace5286402 Prevent invalid status filter index from being used
PR #20714.
Closes #20701.
2024-04-18 07:59:24 +03:00
Vladimir Golovnev
f085f8c076 Fix Enter key behavior in Add new torrent dialog
Prevent inappropriate default completer from being used by path edit.

PR #20670.
Closes #20663.
2024-04-08 16:02:26 +03:00
Aliaksei Urbanski
f37d0c486c Add the Popularity metric
PR #20180.
2024-04-01 21:23:08 +03:00
Chocobo1
90383567b2 Revise Tracker related classes
And also rename them.

PR #20489.
2024-04-01 19:17:35 +08:00
Vladimir Golovnev
5e8b9df859 Revamp system tray icon menu handling
Update system tray icon menu without re-create it.

PR #20597.
Closes #20516.
2024-03-26 15:24:43 +03:00
thalieht
5d1c249606 Use Start/Stop instead of Resume/Pause
PR #20532.

---------

Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru>
2024-03-25 19:11:04 +03:00
Vladimir Golovnev
ce013f132f Refresh custom colors once color scheme is changed
PR #20588.
2024-03-23 11:32:07 +03:00
Vladimir Golovnev
25b7972f88 Initialize completer for file system path widget on demand
PR #20586.
2024-03-23 08:18:36 +03:00
Vladimir Golovnev
845f9a821e Use better icons for RSS articles (#20587) 2024-03-22 18:46:25 +03:00
Vladimir Golovnev
b489262f51 Add workaround to refresh styled controls once color scheme is changed
PR #20569.
2024-03-21 11:14:41 +03:00
tehcneko
50caa231f7 Fix invisible tray icon on Plasma 6 in Linux
PR #20529.
Closes #20367.

---------

Co-authored-by: thalieht <thalieht@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2024-03-13 10:24:08 +03:00
Vladimir Golovnev
d5e41bf679 Allow torrents to override default share limit action
PR #20528.
2024-03-12 14:08:59 +03:00
Chocobo1
0967bdc715 Switch to lightweight function for filtering data
We can use this function since the columns doesn't change.

PR #20518.
2024-03-11 12:54:38 +08:00
Thomas Piccirello
c06817f4eb Add button for sending test email
This allows for easily testing whether the provided email configuration is correct.

PR #20488.
2024-03-08 21:51:44 +08:00
Vladimir Golovnev
1702b6c891 Correctly handle share limits in torrent options dialog
PR #20485.
2024-03-04 11:54:10 +03:00
sledgehammer999
8a1bc8e5fd Bump copyright year 2024-03-03 06:02:40 +02:00
Vladimir Golovnev
0114610a40 Provide torrent creation feature via WebAPI
PR #20366.
Closes #5614.

Co-authored-by: Radu Carpa <radu.carpa@cern.ch>
2024-02-27 15:57:16 +03:00
Chocobo1
15697f904d Add a small delay before processing the key input of search boxes
PR #20465.
Closes #20025.
Closes #20235.
2024-02-27 12:57:55 +08:00
Chocobo1
46e8ee50c8 Allow to set custom suffix to window title
This is to allow users to differentiate qbt instances when there are multiple running.
PR #20429.
Closes #17905.
2024-02-27 12:41:12 +08:00
Chocobo1
cffd74b62a Add support for SSL torrents
The 'SSL torrent' feature is not standardized. I.e. there are no BEP (BitTorrent Enhancement Proposals) associated with it, so we do not greatly encourage its usage as it will only work with libtorrent clients and derivatives. It will not work with other torrent clients that do not support the libtorrent specific implementation.
This PR aims to provide minimal support for those who need SSL torrents. Furthermore, it is intended that there will be no UI support (nor indication) of adding/creating SSL torrents.

* Prerequisites:
  I omit the instructions of creating those files as the intended audience (experts & advanced users) should have no problem with it. All files are as follow:
  1. Root (torrent publisher) certificate
  2. Root private key
  3. A .torrent file created with root certificate 
  5. Peer certificate (signed by the root certificate)
  6. Peer private key
  7. Diffie-Hellman parameters file
  
  All files are stored in .pem format.

* Enable SSL torrent protocol in qbt
  There are 2 hidden keys to put in qbt config file, under `[BitTorrent]` section:
  1. `Session\SSL\Enabled`: set it to `true`.
  2. `Session\SSL\Port`: set it to some unused port or omit the key entirely to let qbt pick one for you.
* Add an SSL torrent to qbt
  The only way of adding an SSL torrent is via WebAPI. The `/api/v2/torrents/add` endpoint will support 3 additional parameters. You must provide them for an SSL torrent.
  1. `ssl_certificate`: Contents of the peer certificate file (in PEM format).
  2. `ssl_private_key`: Contents of the peer private key file.
  3. `ssl_dh_params`: Contents of the Diffie-Hellman parameters file.

* Change the SSL parameters to a torrent
  In case you provided wrong SSL parameters when adding a torrent, there is a new endpoint `/api/v2/torrents/setSSLParameters` that you can update the SSL parameters. The parameters (`ssl_*`) are the same as `/api/v2/torrents/add` endpoint.

* Query the SSL parameters of a torrent
  There is a new endpoint `/api/v2/torrents/SSLParameters` that you can query the SSL parameters of a torrent.

References:
* https://www.libtorrent.org/manual-ref.html#ssl-torrents
* https://blog.libtorrent.org/2012/01/bittorrent-over-ssl/

PR #20338.
---------

Co-authored-by: Radu Carpa <radu.carpa@cern.ch>
2024-02-25 19:58:58 +08:00
Vladimir Golovnev
2755190d8e Link PowrProf library to qBittorrent base
PR #20387.
2024-02-10 11:59:14 +03:00