Commit Graph

78 Commits

Author SHA1 Message Date
Vladimir Golovnev
a47e1cdb48 Allow to choose color scheme on Windows
PR #21615.
2024-10-19 13:37:51 +03:00
Vladimir Golovnev
9894f654cf Allow to use regular expression to filter torrent content
PR #20944.
Closes #19934.
2024-06-19 15:25:48 +03:00
Vladimir Golovnev
2755190d8e Link PowrProf library to qBittorrent base
PR #20387.
2024-02-10 11:59:14 +03:00
Vladimir Golovnev
d652a10495 Add seeding limits to RSS and Watched folders options UI
PR #20324.
Closes #19605.
2024-01-27 14:30:27 +03:00
Nick Korotysh
e6ec3d0c2b Display download/upload speed in dock icon
Implementation is based on Transmission sources.

Closes #2761
Closes #3671
Closes #7098
Closes #11350
Closes #18527

PR #19595
2023-10-16 14:45:24 +08:00
Vladimir Golovnev
c051ee9409 Revamp tracker list widget
Internally redesign tracker list widget using Qt Model/View architecture.
Make tracker list sortable by any column.

PR #19633.
Closes #261.
2023-10-03 08:42:05 +03:00
Vladimir Golovnev
dcf3e97291 Implement gateway for adding new torrents
PR #19355.
2023-08-14 18:17:56 +03:00
Vladimir Golovnev
dbe79484d2 Drop support of Qt 5
Also remove usage of some deprecated stuff.

PR #19338.
2023-07-20 11:17:27 +03:00
Vladimir Golovnev (Glassez)
0cc29f1851 Implement "Add torrent params" editing widget 2023-05-07 16:33:20 +03:00
Vladimir Golovnev
0dcb65bb7c Add option to auto hide zero status filters
* Extract transfer list filter classes into separate files
* Add option to auto hide zero status filters

PR #18801.
Closes #13996.
2023-04-03 10:38:08 +03:00
Vladimir Golovnev
d40be79c69 Implement torrent tags editing dialog
PR #18797.
2023-04-03 10:36:28 +03:00
Vladimir Golovnev
77aa85fbd3 Provide UI Theme editor
PR #18655.
2023-03-16 10:03:05 +03:00
Vladimir Golovnev
1be5b3abd8 Revamp torrent content widget
PR #18162.
2023-02-11 15:22:01 +03:00
Vladimir Golovnev
32e4371208 Improve startup window state handling
Replace current "Start qBittorrent minimized" option with "Initial window state" that allows to start qBittorrent as "hidden in system tray" while retaining regular "minimize to panel" functionality.

PR #18252.
Closes #487.
2023-01-16 14:57:56 +03:00
Chocobo1
1c2dc79f51 Introduce color palettes for both dark, light themes
This commit introduce color palettes from Primer and make use of it in various widgets.
Primer system is chosen due to well designed and is highly rated on Github (in terms of
Github stars).
https://primer.style/

PR #17798.
2022-10-20 10:27:03 +08:00
Chocobo1
03da68b1cf Add support for unit testing
* Downgraded macOS CI to Qt 6.2.0 due to a bug in Qt Test module
* Revised cmake build scripts
* For now, only building via cmake is supported

PR #17338.
2022-07-10 13:20:27 +08:00
Vladimir Golovnev
890630944d Extract desktop integration stuff into separate class
PR #17313.
2022-07-09 08:06:22 +03:00
luzpaz
8736c9ec4c Fix various typos
Found via `codespell -q 3 -S *.ts,*.desktop,./src/base/3rdparty,./dist/windows/installer-translations -L ba,doas,ist,ro,ths`

PR #17317.
2022-07-06 13:11:11 +08:00
Vladimir Golovnev
ac8a6887b6 Improve D-Bus notifications handling
Make notifications clickable on Linux by assigning "default" action.
Don't react to unrelated notifications clicked by keeping track of qBittorrent notifications IDs and filter out unrelated ones.
Make D-Bus Notifications interface proxy class to be maintained manually and fix coding style in it.
Closes #9084.
PR #17282.
2022-06-30 08:01:17 +03:00
Vladimir Golovnev
f8a304abdc Implement base classes for application components
PR #17219.
2022-06-25 15:46:55 +03:00
Chocobo1
d69e6bb7aa Move stacktrace dialog to gui folder 2022-05-01 14:24:39 +08:00
Chocobo1
a2b85ba1fd Provide interface for Application class
PR #16864.
2022-04-14 12:04:58 +08:00
Prince Gupta
96965ae347 CMake: Call UIC on the .ui files manually
Fixes unnecessary recompilation when editing GUI files.

PR #16151.
2022-01-26 14:44:44 +03:00
Vladimir Golovnev (Glassez)
86b1ac5d7c CMake: Allow to build with Qt6 2021-10-02 09:23:49 +03:00
Vladimir Golovnev (Glassez)
2993fdb169 Improve "Watched folders" feature
Make "file system watcher" an application core component
and separate it from its presentation model.
2021-05-19 15:42:41 +03:00
Vladimir Golovnev (Glassez)
35032d7eed Don't use "Qt Mac Extras" module
"Qt Mac Extras" module is removed in Qt6.
2021-04-14 15:41:46 +03:00
Chocobo1
a78929dadf Simplify progress bar painting 2021-03-17 11:19:08 +08:00
thalieht
8db4bde15d Group several torrent options into one dialog
Speed limits, share limits and the new options to disable DHT, PeX, LSD per torrent
2020-12-25 20:37:43 +02:00
jagannatharjun
816bc45707 Implement ProgressBarDelegate 2020-10-27 11:58:17 +05:30
FranciscoPombal
46123b9989 CMake: overhaul and improve scripts
- Bump minimum required version and
make use of more modern language features
- Rely more on target_...() commands to establish dependency
relationships between targets rather than directory property commands
- Improve libtorrent package discovery
- Enable and handle application features more explicitly
- Improve user-facing output
- Fix various compilation issues on Windows (MSVC and MinGW) and macOS
- Improve handling of translations
- Add explanatory comments where relevant
- Make CMake scripts fully independent of qmake files/details
- Remove old functions/macros
2020-09-17 13:13:26 +01:00
Mike Tzou
dcef3a68f8 Merge pull request #13156 from jagannatharjun/search-style
Use default delegate for SearchModel
2020-07-26 20:20:40 +08:00
jagannatharjun
00413b0dd1 Use default delegate for SearchModel
Introduce and use data role - SearchFilterModel::UnderlyingDataRole as a filter role in SearchFilterModel

Removes the usage of QItemDelegate
2020-07-26 13:05:54 +05:30
jagannatharjun
13aab6e04d Use default delegate for PeerListWidget
Removes the usage of QItemDelegate
2020-07-26 12:57:57 +05:30
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
Vladimir Golovnev (Glassez)
c40da7a5dd CMake: Fix header inclusion in autogenerated files 2020-05-03 10:27:24 +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)
642bf7b8a6 CMake: Don't split GUI code into several libraries 2020-05-01 17:03:00 +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
Chocobo1
19b6f56a0a Move DeletionConfirmationDialog class to its own .cpp file 2019-09-29 11:29:16 +08:00
Chocobo1
ee0d2d2220 Move fspathedit_p to private folder 2019-07-26 22:32:18 +08:00
Chocobo1
07263d2d70 Move implementation to its own file 2019-07-18 00:30:44 +08:00
Prince Gupta
8267a4fef9 Incorporate GuiIconProvider inside UIThemeManager 2019-07-16 09:31:33 +05:30
Chocobo1
032883e278 Move LineEdit files out of subfolder 2019-07-13 19:46:53 +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
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
Vladimir Golovnev (Glassez)
c7f3693ad1 Implement "Application instances manager" 2019-06-30 20:02:46 +03:00
Vladimir Golovnev (Glassez)
302c99d7d5 Drop support of libtorrent < 1.1.10 2019-01-11 15:13:17 +03:00
thalieht
d34ddb2e3c Change file names and classes names to match them 2018-06-15 20:12:59 +03:00