Vladimir Golovnev
4527536858
Optimize converting TCP endpoints to strings
...
There may be quite a few endpoint names (one for each available network card), and they usually remain unchanged throughout the session, while previously producing such names was performed every time they were accessed. Now they are retrieved from the cache.
PR #21770 .
2024-11-07 09:39:33 +03:00
Chocobo1
3da9444688
Reduce dependency on Main Window
...
PR #21753 .
2024-11-06 13:45:14 +08:00
Vladimir Golovnev
75d1ac8889
Optimize conversion of time points from libtorrent to Qt clocks
...
Obtain current date time of Qt and libtorrent clocks only once
for processing entire current libtorrent alerts bunch.
PR #21764 .
2024-11-05 16:43:43 +03:00
Chocobo1
051d7137ea
Use proper macro for unreachable switch cases
...
Those are the `default` cases which are not expected to hit (nor reachable) normally.
When the code is compiled with release mode and it reaches `Q_UNREACHABLE()`, it becomes
undefined behavior. So it rely on the developers to catch the errors in debug mode.
The upside of this is that the `switch` statement will be more optimized than not using it.
This also means the statements after `Q_UNREACHABLE()` isn't important. It allow anything to
preserve the intention of the code.
This macro is preferred over C++23 `std::unreachable` because it will automatically insert a
`Q_ASSERT(false)` with it.
PR #21752 .
2024-11-05 11:55:55 +08:00
Vladimir Golovnev
b462a2bf0c
Reset tracker entries when pause the session
...
PR #21738 .
2024-11-04 16:27:21 +03:00
Patrik Elfström
c02f80cec5
WebUI: Hide context menu when clicking on a table row
...
This fixes a bug where the torrents table header menu
could not be closed by clicking on a table row.
This also fixes the same bug for other context menus.
PR #21731 .
2024-11-04 19:09:51 +08:00
Patrik Elfström
3bb1e34233
WebUI: Add tooltip to regex filter button
...
Add a tooltip to indicate the button's function.
And change the cursor to a pointer since label is used as a button.
PR #21695 .
2024-11-03 15:35:28 +08:00
Thomas Piccirello
dc30b9c2ec
WebUI: Improve table overflow handling
...
This PR relies on flexbox to ensure all WebUI tables are the correct height without overflowing. Table headers are now always visible and JS-based dynamic resizing is no longer needed.
PR #21652 .
2024-11-03 15:11:30 +08:00
Vladimir Golovnev
b083029841
Handle Qt style names in a case insensitive way
...
PR #21720 .
Closes #21716 .
2024-11-03 09:54:57 +03:00
Chocobo1
6f642776b6
Simplify tab handling in Search widget
...
PR #21729 .
2024-11-03 14:43:23 +08:00
Jack Moran
1a7ebfc8f0
Create SECURITY.md
...
* Create SECURITY.md
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
PR #21589
2024-11-02 22:03:38 +02:00
sledgehammer999
0771970627
Merge pull request #21613 from sledgehammer999/webui_color_switcher
...
WebUI: Add color scheme switcher
2024-11-02 16:30:01 +02:00
Vladimir Golovnev
0f18e80154
Fix .torrent file could not be deleted when torrent is canceled
...
PR #21735 .
Closes #21723 .
2024-11-02 16:41:05 +03:00
Vladimir Golovnev
08b51fc869
Remove trackers from previous category when moved to new one
...
PR #21717 .
Closes #21637 .
2024-11-02 16:40:27 +03:00
sledgehammer999
13e3192444
Reorder code to match UI
2024-11-02 13:11:05 +02:00
sledgehammer999
3aefc16c57
Webui: Add color scheme switcher
...
Closes #21600
2024-11-02 13:11:05 +02:00
sledgehammer999
7b0b3a1522
Merge pull request #21722 from sledgehammer999/changelog_upkeep
...
Changelog upkeep
2024-11-01 21:48:12 +02:00
Thomas Piccirello
8991d994c2
WebUI: Eliminate unnecessary torrents table updates
...
Only update the torrents table when torrents are added, edited, or removed.
PR #21656 .
2024-11-01 04:34:17 +08:00
Chocobo1
72cbc83569
WebUI: prefer arrow functions whenever applicable
...
Compared to plain function, arrow function is simpler to understand (without bindings to `this`, `arguments`, `super`) and to read.
Now, plain function will only be used when this object is required.
PR #21691 .
2024-11-01 04:17:41 +08:00
Chocobo1
7af6ac18aa
Merge pull request #21658 from Chocobo1/ssl_setup
...
Simplify SSL parameters setup
2024-11-01 04:03:51 +08:00
sledgehammer999
41236d8e58
Consolidate all the Changelog entries into master
2024-10-30 22:50:46 +02:00
sledgehammer999
03dfd983d0
Add new version in Changelog
...
Closes #21718
2024-10-30 22:50:26 +02:00
Vladimir Golovnev
84d895231c
Correctly delete the moved search tab
...
PR #21687 .
Closes #21675 .
2024-10-28 09:41:09 +03:00
Vladimir Golovnev
91b2687032
WebAPI: Prevent producing empty sync data
...
PR #21688 .
2024-10-28 09:40:13 +03:00
Thomas Piccirello
be3eefd8de
WebUI: Fix displaying RSS panel on load
...
The required JS may not yet be loaded, resulting in an error when calling `window.qBittorrent.Rss.init()`.
Signed-off-by: Thomas Piccirello <thomas@piccirello.com>
PR #21689 .
2024-10-28 14:06:52 +08:00
Thomas Piccirello
e0e61ffd02
WebUI: Support auto resizing table columns
...
Auto resize can be triggered by:
1. Double clicking the column's resize handle (its rightmost edge)
2. The table header's context menu
Closes #21627 .
PR #21655 .
2024-10-28 13:59:13 +08:00
Thomas Piccirello
c3c91be578
WebUI: Clear properties panel when torrent no longer selected
...
PR #21654 .
2024-10-28 13:53:24 +08:00
xavier2k6
e0431e3ffb
Update python installer version for Windows
...
PR #21643 .
2024-10-27 15:05:05 +08:00
skomerko
67b6cf5a6f
WebUI: Don't sort rows with static trackers in Trackers table
...
Static trackers come before anything else so in this PR I made sure they are not moved when sorting Trackers table columns.
PR #21609 .
2024-10-27 14:54:33 +08:00
Thomas Piccirello
e8dc6b3f73
WebUI: Show file filter when Content tab selected on load
...
This fixes a bug where the file filter is only shown when the Content tab is switched to. The filter is not being shown if the Content tab is already selected on page load (due to being previously selected).
PR #21657 .
2024-10-26 03:28:01 +08:00
Hanabishi
dfe9daf25d
WebUI: restore arrow keys table navigation
...
Fixup for #21007 and #21147 . Table navigation with arrows (#15186 ) has been broken by that changes.
See https://github.com/qbittorrent/qBittorrent/pull/21007#discussion_r1807326166 and https://github.com/qbittorrent/qBittorrent/pull/21147#discussion_r1807361385 for details.
This PR restores the functionally.
PR #21640 .
2024-10-26 03:14:36 +08:00
Tyler True
ca933c60a1
Update GPLv2 license to reflect latest version
...
The license text and terms do not change, but the document has been
updated, to reflect the FSF's current contact points, and to change
the example name, under the "How to apply..." part, to "Moe Ghoul".
This reflects the FSF's own change, in the www.gnu.org CVS repo, at
https://web.cvs.savannah.gnu.org/viewvc/www/www/licenses/old-licenses/gpl-2.0.txt?annotate=1.5
Related #7749 .
PR #21626 .
2024-10-26 03:04:02 +08:00
DoubleSpicy
c080fc3aa0
Fix filesize sorting in preview dialog
...
PR #21563 .
Closes #21510 .
2024-10-23 09:03:25 +03:00
Chocobo1
5dd41f506e
Fix button state for SSL certificate check
...
A copy paste error was introduced in PR #20338 .
PR #21659 .
2024-10-23 13:04:16 +08:00
sledgehammer999
a3ac692c25
Allow to use Qt's default QStyle
...
Relevant prior PR #21553
PR #21605 .
2024-10-21 19:59:55 +03:00
Chocobo1
e91412ec8b
Use default secure protocol list from Qt
...
In Qt 6.5, `QSsl::SecureProtocols` is the same as `QSsl::TlsV1_2OrLater`. And by using
`QSsl::SecureProtocols` we won't need to worry it being outdated since Qt will regularly adjust
it.
https://github.com/qt/qtbase/blob/v6.5.0/src/plugins/tls/openssl/qsslcontext_openssl.cpp#L425-L429
2024-10-22 00:27:01 +08:00
Chocobo1
337730ddef
Simplify SSL parameters setup
...
Simplify code by utilizing QSslConfiguration object.
Also don't mess with global default value via `QSslConfiguration::setDefaultConfiguration`. It
should not be done at such local class.
2024-10-21 16:22:45 +08:00
Vladimir Golovnev
3ab9fe55e5
Improve color scheme change detection
...
* Fix pieces bars won't correctly detect color scheme change with Qt 6.8.
* Update RSS article content view on color scheme changed.
PR #21625 .
Closes #21327 .
2024-10-21 09:50:53 +03:00
dyseg
ab8d0d1dae
Free resources allocated by web session once it is destructed
...
PR #21618 .
Closes #20873 .
2024-10-21 09:23:08 +03:00
Chocobo1
25dbea1388
WebUI: fix 'rename files' dialog cannot be opened more than once
...
Added an IIFE around the whole script to suppress variable redeclaration errors.
Closes #21614 .
PR #21620 .
2024-10-20 16:01:57 +08:00
Vladimir Golovnev
a47e1cdb48
Allow to choose color scheme on Windows
...
PR #21615 .
2024-10-19 13:37:51 +03:00
Vladimir Golovnev
4805afc1a2
Correctly apply filename filter when !qB extension is enabled
...
PR #21628 .
Closes #21624 .
2024-10-19 13:36:03 +03:00
skomerko
5a0914e333
WebUI: Use modern class syntax in context menu classes
...
Context menu classes are now created using vanilla JS syntax (minimal changes to reduce MooTools bits).
PR #21598 .
2024-10-19 16:32:20 +08:00
skomerko
7031c52d16
WebUI: Improve sort order in Status column
...
This commit adds custom compare function to Status column (same sort order as in the GUI).
Closes #15499 .
PR #21570 .
2024-10-19 16:25:30 +08:00
Vladimir Golovnev
8e941a06f1
Correctly handle "torrent finished after move" event
...
PR #21596 .
Closes #21576 .
2024-10-14 11:51:30 +03:00
Vladimir Golovnev
966387859a
Always notify user about duplicate torrent
...
PR #21480 .
Closes #21475 .
2024-10-14 11:50:20 +03:00
Chocobo1
fb40275507
Don't change combobox index after selection
...
Also keep the list sorted.
PR #21599 .
2024-10-14 14:39:54 +08:00
sledgehammer999
3d9e9715b4
Merge pull request #21364 from sledgehammer999/dont_ignore_ssl_errors
...
Don't ignore SSL errors
2024-10-12 10:37:48 +03:00
Chocobo1
21b0367629
Avoid heavy weight function object
...
Also, by switching to template we can avoid the cost of converting to some specific type and
perfectly forward the parameter to the final function.
PR #21572 .
2024-10-12 15:15:39 +08:00
Chocobo1
ac646f47a2
Avoid shadowing function parameter
...
The function already has a parameter named `result`.
Also remove a duplicate variable since it already has a pref pointer at the start of the function.
PR #21571 .
2024-10-12 15:04:47 +08:00