1
mirror of https://github.com/qbittorrent/qBittorrent synced 2025-11-14 03:17:38 +01:00

Compare commits

...

9826 Commits

Author SHA1 Message Date
sledgehammer999
6ede4e49ff Bump to 5.1.3 2025-11-11 00:28:54 +02:00
sledgehammer999
7d7bfd818d Update Changelog 2025-11-11 00:26:14 +02:00
sledgehammer999
6038d6261a Sync translations from Transifex and run lupdate 2025-11-11 00:25:43 +02:00
Halbast
172089cf4f NSIS: Update Kurdish translation
PR #22801.
2025-11-10 23:41:39 +02:00
Ramon López i Cros
1ab24a22d0 NSIS: Add Catalan translation
All strings have been translated by a native Catalan speaker.

PR #23346.
2025-11-10 23:41:04 +02:00
sledgehammer999
f2c1ce585a Sync translations from Transifex and run lupdate 2025-11-08 00:23:15 +02:00
Vladimir Golovnev
f76b17155e Backport changes to v5.1.x branch
PR #22988.
2025-11-04 16:25:31 +03:00
Chocobo1
7bbe8eff51 WebUI: prefer using arrow functions
For addressing WebUI CI failures on v5_1_x branch.
2025-11-03 13:33:51 +08:00
Vladimir Golovnev
2979b1e0e4 WebAPI: Use native separators for path autofill suggestions
PR #23439.
Closes #23432.
2025-11-02 16:39:40 +03:00
Andrew Johnson
4ffb5af6aa Improve tab key focus in hidable tab bar widget
PR #23379.
2025-10-19 10:11:01 +03:00
Andrew Johnson
ba7c7e283e Fix screen reader accessibility in torrent list
PR #23359.
Closes #20393.
2025-10-15 11:12:28 +03:00
Vladimir Golovnev
571094cc9c Don't change the processing order of alerts of different types
PR #23373.
Closes #23319.
2025-10-14 13:09:49 +03:00
Vladimir Golovnev
8f1fc451ae Fix "Save as .torrent file" button is visible before metadata retrieved
PR #23375.
2025-10-14 13:03:16 +03:00
xavier2k6
0f7a27ea03 GHA CI: Install NSIS via third party action on Windows
* Install `NSIS` via https://github.com/repolevedavaj/install-nsis
* `NSIS` is no longer installed on GitHub provided Runner Image as of `windows-2025`
* `NSIS: 3.10` was only available on `windows-2019 / windows-2022`
* We can use newer release now eg. `NSIS: 3.11`.

PR #23249.
2025-10-14 12:59:38 +03:00
Mark Yu
015950ea61 Allow equals character in the command line value
The CLI options should allow the `=` (equals) char as value so doing `--save-path="/home/test/mydir = somedir"` should parse properly with the `value` method returning `"/home/test/mydir = somedir"`.

Closes #23248.
PR #23251.

---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2025-10-14 12:58:18 +03:00
Vladimir Golovnev
772ba5f6bc Don't fail because of existing files when exporting torrent files
PR #23315.
Closes #23017.
2025-10-13 16:19:56 +03:00
Chocobo1
298bd20299 Fix typo
This typo is causing the header `X-Forwarded-Proto` to be ineffective
(when using reverse proxy).

PR #23120.
2025-08-24 19:22:28 +03:00
rekayno
e6f50147d9 Fix invalid Transifex links
PR #23057.
2025-08-09 17:41:51 +03:00
Chocobo1
18fb9936f0 Add alternative URL for program update checking
The alternative URL is hosted on GitHub and users are able to access it:
https://github.com/qbittorrent/qBittorrent/issues/23000#issuecomment-3092538814
https://github.com/qbittorrent/qBittorrent/issues/23009#issuecomment-3093201180

Also, disguise the user agent as a normal browser to avoid standing out from the crowd and
avoid whatever issues from CDN. This only applies to non-fosshub URLs.

Closes #23000.
Closes #23009.
PR #23014.
2025-08-09 17:41:51 +03:00
Chocobo1
3fa812ced6 Use source URL for search plugins
This saves a few URL redirections. And avoids potential issues related to Cloudflare
protections/blockages on qbt domain.

Closes #22990.
PR #23048.
2025-08-09 17:41:51 +03:00
Chocobo1
a76f12f3db Fix random function detection with static PIE builds
Certain build options didn't like the detection with an no-op. So make it really fetch a random value.

Closes #22981.
PR #22987.
2025-08-09 17:41:51 +03:00
Ryu481
d76712256c Don't leave an empty folder when deleting or moving torrents
Currently when you delete or move a torrent sometimes an empty folder will stay. This is because hidden files will stay which didn't got deleted.
The reason that it is not working is that QDir::Files is used which doesn't lists hidden files. Adding QDir::Hidden will make the code work as expected. At least on Windows and macOS QDir::Files doesn't lists hidden files. I can't test on linux.

PR #22983.
2025-08-09 17:41:41 +03:00
Ryu481
f3e47facef Fix system language autodetection on MacOS
PR #22957.
2025-07-13 21:58:51 +03:00
sledgehammer999
202ff8a099 Bump to 5.1.2 2025-07-02 09:13:03 +03:00
sledgehammer999
c0585441fb Update Changelog 2025-07-02 09:10:05 +03:00
sledgehammer999
a8b6cbceb0 Sync translations from Transifex and run lupdate 2025-07-02 09:09:21 +03:00
Vladimir Golovnev (Glassez)
6ad073e0bc Show warning message box on opening inappropriate URL 2025-07-02 08:48:27 +03:00
Vladimir Golovnev (Glassez)
ad68813fe8 Prevent opening local files if web page is expected 2025-07-02 08:48:27 +03:00
Vladimir Golovnev
22df0b45c5 Backport changes to v5.1.x branch
PR #22905.
2025-07-01 17:18:53 +03:00
sledgehammer999
bb34444ddc Store version numbers in the appropriate type 2025-07-01 13:07:55 +03:00
sledgehammer999
dd5c934103 Add fallback to update mechanism
This brings a fallback version check to the update mechanism,
which should be as stable as it can be.
It will allow migrating to another primary mechanism without
having to have updated the older primary mechanism too.
2025-07-01 13:07:24 +03:00
Ryu481
3fca180e98 Make qBittorrent quit on MacOS with main window closed
Fixes the reported bug that you couldn't quit qBittorrent when the main window was closed on MacOS.

Closes #22849.
PR #22931.
2025-06-29 21:37:30 +03:00
Chocobo1
9b29d37d21 WebAPI: Trim leading whitespaces on Run External Program fields
Hacked qbt instances may contain malicious script placed in Run External Program and the script
will attempt to hide itself by adding a lot whitespaces at the start of the command string.
Users may mistake the field of being empty but is actually not.
So trim the leading whitespaces to easily expose the malicious script.

Note that GUI already trim the fields and only WebAPI doesn't trim them. This patch will unify
the behavior.
Related: https://github.com/qbittorrent/docker-qbittorrent-nox/issues/71#issuecomment-2993567440

PR #22939.
2025-06-29 21:37:09 +03:00
Vladimir Golovnev
206d5abf84 Don't expose palette colors in UI theme editor
PR #22923.
Fixes regression introduced by #22330.
2025-06-27 15:54:51 +03:00
Vladimir Golovnev
101f35dcf2 WebUI: Fix incorrectly backported changes
PR #22910.
2025-06-26 08:48:40 +03:00
Vladimir Golovnev
13282d94ef Don't ignore QFile::open() result
PR #22889.
Closes #22888.
2025-06-23 12:15:34 +03:00
Vladimir Golovnev
1daa42e4fe Find CorePrivate package with Qt >= 6.10
PR #22890.
Closes #22887.
2025-06-23 12:15:12 +03:00
sledgehammer999
ea9f3800ce Bump to 5.1.1 2025-06-23 00:40:55 +03:00
sledgehammer999
af14584772 Update Changelog 2025-06-23 00:37:53 +03:00
sledgehammer999
7d51524251 Sync translations from Transifex and run lupdate 2025-06-22 23:25:18 +03:00
Vladimir Golovnev
7a9aac79f9 Backport changes to v5.1.x branch
PR #22591.
2025-06-20 19:16:30 +03:00
Vladimir Golovnev
085ae0d1c4 Don't limit the size of read "resume data"
PR #22825.
2025-06-08 18:39:58 +03:00
tehcneko
f748a682ca WebUI: Fix path autofill in set location and new category
Attach `PathAutofill` after `DOMContentLoaded`.
Also removed pathAutofill.js in newfolder.html since it's meant for new RSS folder name.

PR #22773.
2025-05-29 21:37:07 +03:00
Chocobo1
df987cc954 NSIS: revise license page
The GPL doesn't need to be agreed with and therefore remove 'I accept agreement' checkbox and
adjust related UI elements.

Closes #22660.
PR #22775.
2025-05-27 11:22:40 +03:00
bolshoytoster
535fc42747 WebUI: Fix memory leak
See #22734, there is a memory leak in the MooTools .destroy(), this replaces all uses of that with the browser native .remove().

This also overrides the MooTools Document.id function, which is used by $(id). The original function always allocates an ID to elements it selects, the override doesn't, and is also a little more efficient.

Closes #22734.
PR  #22754.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2025-05-26 15:56:37 +03:00
Vladimir Golovnev
1da31bc2e1 RSS: Mark matched article as "read" if refers to duplicate torrent
PR #22477.
2025-05-26 15:47:09 +03:00
Vladimir Golovnev
9515ca59f2 Improve add torrent error handling
PR #22468.
2025-05-26 15:46:17 +03:00
Chocobo1
eaf9017aa4 WebUI: fix wrong replacement sequence
Only IPv6 addresses may have a 'zone index' and therefore it should be replaced last for the
result to be correct.

PR #22724.
2025-05-18 12:41:19 +03:00
Chocobo1
f51ad39ad9 Add fallback for random number generator
`getrandom()` is available since Linux 3.17 (2014/10/05) yet there are older devices that don't
meet this requirement.

Closes #22691.
PR #22723.
2025-05-18 12:40:49 +03:00
Atk
9133b16431 WebUI: Make multi-rename search & replace fields use a monospace font
Before the release of 5.1.0 I believe these two fields both used monospace fonts and also had an increased font size, maybe 14px (I couldn't find in blame where/how this regressed). Ideally, I'd like to bring this back, as it makes elaborate regexes easier to grok. This PR currently just tells the browser to use its monospace font, but I could also add a similar in-line style for font size. I just don't know if this is the best way to solve this problem; if there's a better place for this sort of styling to happen let me know

PR #22719.
2025-05-18 12:40:24 +03:00
KanishkaHalder1771
909a3eb44e Update help message for Windows systems
For windows environment the `--help` output will show :
```
set QBT_NO_SPLASH=1
C:\Program Files\qBittorrent\qbittorrent.exe
```
instead of
```
QBT_NO_SPLASH=1 C:\Program Files\qBittorrent\qbittorrent.exe
```

Fixes #22662.
PR #22695.
2025-05-18 12:39:53 +03:00
Chocobo1
778aa64c54 WebUI: add versioning to local preferences
And provide migration path for changing preferences.

Fixes #22639.
PR #22677.
2025-05-14 10:41:17 +03:00
Vladimir Golovnev
7049f80a01 Fix compilation with Qt 6.6.0
PR #22678.
2025-05-12 12:23:21 +03:00
dezza
87b90b7fd7 WebUI: Remove unselectable from General tab
Making General-tab text `unselectable` is not an improvement.

It begs to add a new `Copy -> Save path` feature, because using `Set location` to copy save path (*which requires a request*) is not faster than simply copying it from the `General` tab by double-left clicking and pressing `CTRL+C`.

I don't see a reason why its necessary to software-restrict people from copying details from the `General`-tab - there are several reasons why you would - incl. the above mentioned usecase for quickly copying save-path, but other than that its counterproductive to limit people from copying the details displayed.

PR #22663.
2025-05-10 11:58:58 +03:00
Vladimir Golovnev
b3690494ab Fix ratio handling
PR #22638.
2025-05-01 21:17:07 +03:00
Vladimir Golovnev
f4e6b515c2 Remove dubious seeding time max value
PR #22624.
2025-05-01 21:16:17 +03:00
Isak05
a721540e6c Fix preview not opening on Wayland
Deferring the opening of the preview slightly gives the preview select
dialog time to close and for focus to shift back to the main window.

PR #22608.
Closes #22607.

---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2025-05-01 21:09:45 +03:00
Vladimir Golovnev
3fd05d001f Fix appearance of search history length spinbox
PR #22605.
2025-05-01 21:09:44 +03:00
Vladimir Golovnev
f04b114b64 Don't interpret wildcard pattern as filepath globbing
PR #22590.
Closes #22583.
2025-05-01 21:09:44 +03:00
sledgehammer999
da87be2b12 Bump to 5.1.0 2025-04-27 11:53:39 +03:00
sledgehammer999
891265b390 Update Changelog 2025-04-27 11:53:25 +03:00
sledgehammer999
f46e44d3ed Sync translations from Transifex and run lupdate 2025-04-27 11:52:43 +03:00
sledgehammer999
a4094a440d Bump copyright year 2025-04-20 23:26:52 +03:00
sledgehammer999
46c3da21e1 Sync translations from Transifex and run lupdate 2025-04-20 23:23:23 +03:00
Vladimir Golovnev
2f06ea2587 Backport changes to v5.1.x branch
PR #22490.
2025-04-17 20:54:03 +03:00
Vladimir Golovnev
cfbf6b73ff Prevent crash due to corrupted resume data
PR #22569.
Closes #22540.
2025-04-17 11:17:19 +03:00
Vladimir Golovnev
c687a7d0d3 Fix the torrent relocates files when switching to "manual" mode
PR #22564.
Closes #22283.
Closes #22546.
2025-04-16 10:24:34 +03:00
Vladimir Golovnev
009cc71f9b Explicitly reject opened Add torrent dialogs when exiting app
PR #22535.
Closes #19933.
Supercedes #22533.
2025-04-14 09:53:07 +03:00
Chocobo1
de1cf208ce WebUI: avoid saving invalid size
Don't save the wrong size when the tab is collapsed.
Reported in: https://github.com/qbittorrent/qBittorrent/pull/21215/files#r1966052959

PR #22537.
2025-04-12 15:13:47 +03:00
skomerko
5f49472fa4 WebUI: Set status filter to 'All' if selected filter is no longer visible
Fixup for #21145

To reproduce:
1. Select status filter with 0 torrents
2. Enable 'Auto hide zero status filters' and save settings. Hidden filter is still selected:

PR #22487.
2025-04-12 07:12:23 +03:00
skomerko
2076302170 WebUI: Show 'Edit tracker URL...' only when one tracker is selected
We can only edit one URL through the dialog, so there's no point in showing this context option when more than one tracker is selected in trackers table.

PR #22311.
2025-04-12 07:11:41 +03:00
skomerko
2a33e187eb WebUI: Update sort icon after changing column order
This PR fixes a bug where the sort icon did not update correctly after reordering columns.

Steps to reproduce:
1. Sort a column
2. Move it to a different position
3. The sort icon remains in its original location

PR #22299.
2025-04-12 07:10:59 +03:00
FredBill1
00149e03c0 Migrate socks.py from SocksiPy to PySocks 1.7.1
Migrate `socks.py` from SocksiPy 1.01 to [PySocks 1.7.1](c2fa43cbe1/socks.py), allowing python 3+ compatibility, [details](https://github.com/qbittorrent/qBittorrent/issues/16447#issuecomment-2776894026).

The content of the `socks.py` is entirely copied from the [PySocks repository](c2fa43cbe1/socks.py), the only modification is the license header at the top of the file and trimming trail whitespaces.

Closes #16447.
PR #22507.
2025-04-09 12:57:05 +03:00
Chocobo1
57d529c17a WebUI: fix preferences not applied in magnet handler
Thanks for the diagnosis in this [post](https://github.com/qbittorrent/qBittorrent/issues/22495#issue-2958553624).

Closes #21486.
Closes #22495.
PR #22504.
2025-04-05 08:58:38 +03:00
Vladimir Golovnev
d492fcf29a Add option to enable previous Add new torrent dialog behavior
Some people are still unhappy with "standalone window mode" of "Add new torrent dialog" so just provide them with an option to use old "modal dialog mode" in all the current qBittorrent branches.

PR #22492 (based on original PR #19874).
2025-03-31 09:19:03 +03:00
Chocobo1
d0caa35b39 WebUI: fix Tag counter counting wrong
Related: 73e9116d21 (r2014898781)

PR #22480.
2025-03-29 16:02:47 +03:00
Vladimir Golovnev
ec7a00af92 Restore ability to use server-side translation by custom WebUI
PR #20968.
2025-03-28 09:08:56 +03:00
Vladimir Golovnev
76a3aba7e0 Backport changes to v5.1.x branch
PR #22268.
2025-03-16 10:39:31 +03:00
Chocobo1
7003ac3f4d WebUI v5.1 fixes
PR #22282.
2025-03-15 14:52:48 +03:00
skomerko
964be0fa1c WebUI: Maintain row highlight after rearranging table columns
This PR fixes a bug where row highlight effect would be lost after reordering columns.

PR #22339.
2025-03-15 12:47:11 +03:00
skomerko
c1defceccf WebUI: Fix bug where the 'Tracker editing' dialog displays incorrect data
In Trackers table, moving the 'URL' column from its default (2) position caused the 'Tracker editing' dialog to display incorrect data.
Steps to reproduce:
1. Move 'URL' column in Trackers table to any position from default
2. Choose tracker URL and click 'Edit tracker URL'

PR #22338.
2025-03-15 12:46:17 +03:00
Vladimir Golovnev
260394623d Add missing includes
PR #22362.
2025-03-05 09:07:47 +03:00
Vladimir Golovnev
478c2d5b12 Don't miss to declare some of the color IDs
PR #22330.
Closes #22326.
2025-02-25 18:57:22 +03:00
Vladimir Golovnev
49cfbd9a49 Improve command line parameters serialization
PR #22319.
Closes #22306.
2025-02-25 09:12:26 +03:00
Luke Memet
d028f46fab Fix shift-click selection on macOS
PR #22284.
Closes #16818.
2025-02-19 13:53:49 +03:00
Daniel Nylander
57b24a200e NSIS: Update Swedish translation
PR #22046.
2025-02-19 13:49:25 +03:00
Chocobo1
269dfe87e0 GHA CI: fix AppImage building
Upstream now defaults to static runtime and the previous URL is invalid now.
Upstream commits:
* c28054bab6
* ce5291e259

Also fuse2 is not needed now as stated on:
https://github.com/AppImage/type2-runtime?tab=readme-ov-file#type2-runtime-

PR #22286.
2025-02-16 08:22:26 +03:00
Vladimir Golovnev
6a1c465d85 WebAPI: Don't trim string parameters
PR #22266.
Closes #19485.
Closes #22254.
2025-02-12 09:35:29 +03:00
sledgehammer999
bc7d5c1f8f Bump to 5.1.0rc1 2025-02-11 02:01:34 +02:00
sledgehammer999
8aabef423c Create new resources for this branch for Transifex 2025-02-11 01:59:07 +02:00
sledgehammer999
bd564a99a3 Sync translations from Transifex and run lupdate 2025-02-11 01:56:49 +02:00
Chocobo1
b052ad0923 WebUI: inline redundant function
This also fix share ratio dialog which had been broken in recent cleanup.

PR #22252.
2025-02-09 16:03:01 +08:00
Chocobo1
c65a68251e WebUI: use native function when converting to numbers
PR #22246.
2025-02-08 17:58:48 +08:00
skomerko
93925042dd WebUI: Fix memory leak in context menus
This PR fixes a memory leak in context menus. Previously, for some reason, each menu retained references to its target elements without utilizing them further. Since the targets property was accessible/reachable from the root (window object), these references persisted even after the elements were removed from the DOM, preventing them from being garbage collected.
It's easily reproducible - just add a decent amount of torrents, switch between categories multiple times, then capture heap/detached elements snapshot in the Memory tab (Chrome dev tools). The number of detached elements will continue to increase after each category switch and they won't be cleaned up.
[More context](https://github.com/qbittorrent/qBittorrent/pull/22220/files#r1941137796)

PR #22234.
2025-02-08 17:51:21 +08:00
Chocobo1
e55b59d9ca Use switch statement
PR #22247.
2025-02-08 17:39:10 +08:00
xavier2k6
f8469d02f7 GHA CI: Bump FORTIFY_SOURCE hardening flag to 3
PR #22248.
2025-02-08 17:00:10 +08:00
Chocobo1
dc10b88cec GHA CI: explicitly set C++20 mode for libtorrent
Bump Boost version. Boost::asio 1.76 has a bug that prevents compiling in C++20 mode.

PR #22245.
2025-02-08 16:30:36 +08:00
Maxime Thiebaut
4406a3f173 Add announce_port support
The `announce_port` setting permits to overwrite the port passed along to trackers as the `&port=` parameter. If left as the default, the listening port is used. This setting is only meant for very special cases where a seed's listening port differs from the effectively exposed port (e.g., through external NAT-PMP). See https://github.com/arvidn/libtorrent/pull/7771 for an example use-case.

This PR adds the relevant setting alongside the existing `announce_ip` setting.

PR #21692.
2025-02-08 16:12:50 +08:00
skomerko
9c2e698514 WebUI: Replace getElements & getChildren
This PR further reduces Mootools usage.
PR #22220.
2025-02-04 17:08:18 +08:00
xavier2k6
463700b76d GHA CI: Bump libtorrent versions
PR #22217.
2025-02-03 09:07:35 +03:00
Vladimir Golovnev
86387fbe49 Return first tracker as fallback for "current tracker"
PR #22224.
Closes #20415.
2025-02-01 14:58:12 +03:00
Vladimir Golovnev
a018cfa56c Remove stopped torrent from "error" tracker filter
PR #22219.
2025-01-31 06:23:04 +03:00
Vladimir Golovnev
b76054beba Store search history
PR #22208.
2025-01-30 08:59:10 +03:00
Chocobo1
f8536162f2 Use compact format for JSON files
It saves a bit of space on disk and deters novice users from tampering them.

PR #22211.
2025-01-29 15:31:06 +08:00
skomerko
af65ddd012 WebUI: Allow to move state icon to name column in torrents table
PR #22118.
2025-01-28 14:46:09 +08:00
Chocobo1
fe9dc131bc WebUI: don't wrap regex literal in regex constructor
PR #22206.
2025-01-28 00:33:04 +08:00
thalieht
bb4a668ddd Hide zero and infinity values in peer list only when that setting is set to Always
PR #22205.
Closes #21998.
2025-01-27 09:40:44 +03:00
Vladimir Golovnev
3978137534 Store opened search tabs
PR #22163.
Closes #167.
2025-01-26 17:12:50 +03:00
Chocobo1
3ef4d0d798 GHA CI: add checking for GHA workflows
PR #22200.

---------

Co-authored-by: userdocs <16525024+userdocs@users.noreply.github.com>
2025-01-26 03:44:59 +08:00
Chocobo1
e2341f5217 Merge pull request #22199 from Chocobo1/webui_eslint
WebUI: improve lint checks
2025-01-26 03:34:34 +08:00
xavier2k6
abd3cd54bc GHA CI: Bump numerous hook revs
PR #22193.
2025-01-26 03:26:27 +08:00
Chocobo1
dc8ac38494 WebUI: revise lint rules for css
Some rules are already covered by other tools, so remove them.
2025-01-24 23:58:13 +08:00
Chocobo1
e3eacf2bf7 WebUI: migrate stylelint config file format
From https://stylelint.io/user-guide/configure :
>Stylelint currently supports other configuration locations and formats, but we may remove these
>in the future:
>...
>.stylelintrc.json file
2025-01-24 22:26:36 +08:00
Chocobo1
5098519d46 WebUI: enable cache for lint checks
Also, WebUI gets its own .gitignore file.
2025-01-24 22:26:35 +08:00
ze0s
82c36aea89 WebAPI: add new method setTags to upsert tags on torrents
This is another optimization for torrent management on large scale instances with the goal to minimize the amount of required API calls. Ref #22128.

This new function and endpoint torrents/setTags does an upsert to replace the torrent tags and handles the removal and add internally, instead of doing multiple calls to add and remove tags on torrents from the client.

PR #22156.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2025-01-24 22:24:35 +08:00
thalieht
05787d94ec Fix torrent content checkbox state under certain conditions
PR #22190.
Closes #22189.
2025-01-24 12:11:19 +03:00
Chocobo1
f8c48349a1 WebUI: use native function for selecting elements
PR #22179.
2025-01-20 23:36:11 +08:00
Chocobo1
1ee84033ec WebUI: use template literals instead of string concatenation
PR #22177.
2025-01-18 20:51:47 +08:00
Chocobo1
f2eecf8a4e Avoid memory leak on macOS
Only Mark-of-the-Web and Power Management are affected.

PR #22176.
2025-01-18 20:30:14 +08:00
ze0s
76e1040232 WebAPI: optionally include trackers list in torrent info response
This PR adds an optional parameter includeTrackers to the Torrent info endpoint /torrents/info to include the trackers list of each torrent in the response under the key trackers.

PR #22128.
2025-01-17 17:10:25 +08:00
Chocobo1
4686d6709e GHA CI: show installed version
Before this change, it wasn't clear which exact version were installed.

PR #22155.
2025-01-13 17:24:08 +08:00
Chocobo1
2cc7ec90a8 WebUI: add percentage sign for hsl components
This is a workaround to avoid confusing the stylelint checker (and probably some other checker
internally). They cannot accept the fact that the component can be `<number>` but instead
insist it should be `<percentage>`
Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/hsl#formal_syntax

Also, MDN recommended to use `hsl()` instead of `hsla()`.
From https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/hsl :
> Note: The hsla() functional notation is an alias for hsl(). They are
> exactly equivalent. It is recommended to use hsl().

PR #22154.
2025-01-13 17:13:20 +08:00
Vladimir Golovnev
99adb16090 Allow to reuse existing search term
PR #22148.
2025-01-13 10:21:40 +03:00
Chocobo1
c622d50814 WebUI: use native API for accessing query string
PR #22141.
2025-01-12 21:36:59 +08:00
Chocobo1
11991e62f5 WebUI: fix error when opening the same dialog twice
PR #22139.
2025-01-12 21:18:41 +08:00
Chocobo1
82d90e599c Preserve allocated buffer capacity
PR #22138.
2025-01-12 21:01:39 +08:00
xavier2k6
45b7947cd0 GHA CI: Update Boost URL
The agreement between Boost & JFrog came to an end in December 2024.
Reference: https://github.com/boostorg/boost/issues/924

PR #22125.
2025-01-11 21:33:51 +08:00
Chocobo1
2e21cf76de WebUI: temporarily pin dependency
The plugin was causing problems in new versions so pin it with an older
version and look into it later.
Upstream issue: https://github.com/JamieMason/eslint-plugin-prefer-arrow-functions/issues/50

PR #22140.
2025-01-11 16:28:56 +08:00
Vladimir Golovnev
76151110e5 Handle Qt style options uniformly
PR #22133.
Closes #22061.
2025-01-11 10:17:38 +03:00
Vladimir Golovnev
5875d8bff3 Allow multiple simultaneous searches
PR #22127.
2025-01-11 09:53:40 +03:00
Hanabishi
68ecb13d14 Change URL seed error message
Current URL seed error message assumes that only possible error is DNS lookup failure, which is not true.
So replace it with a more generic message. Real reason is provided by the 'Error:' part.

PR #22119.
2025-01-10 08:31:28 +03:00
Vladimir Golovnev
f9f4b60b83 Allow to refresh existing search
PR #22122.
Closes #17184.
2025-01-08 17:03:32 +03:00
Thomas Piccirello
4fc36b9e99 Support fetching tracker list from URL
Trackers specified at the URL will be added to newly added public torrents.

This feature is adapted from qBittorrent-Enhanced-Edition to allow for automatically adding trackers retrieved from a URL. @ngosang's trackerlist repo is a good example, however I've opted not to include a default URL.

Partially addresses #14535.
PR #21828.
2025-01-08 14:51:09 +08:00
Chocobo1
4f3d77963f Add parameter to control whether to unescape HTML entities
Some plugin needed the raw data for further processing.
Related: #22074.

PR #22106.
2025-01-06 19:05:57 +08:00
Chocobo1
d911928c59 WebUI: Remove unnecessary hashing
Now the containers support using string as key so the intermediate hashing/mapping to number
isn't needed now.

PR #22103.
2025-01-06 18:53:18 +08:00
Chocobo1
22e156e0af Simplify captured variable type
By capturing the specific data instead of torrent handle the lambda can become non-mutable.

PR #22102.
2025-01-06 18:22:43 +08:00
skomerko
6fe02895a8 WebUI: Remove redundant event listener
This PR removes broken event listener attached to RSS Rules table. 

PR #22083.
2024-12-31 21:43:39 +08:00
skomerko
395dbaa5c6 WebUI: Replace getElement with querySelector
All `getElement` instances (Mootools) were changed to `querySelector`.

PR #22082.
2024-12-31 21:31:46 +08:00
Chocobo1
efe06f133d Revise DHT bootstrap node list
Discussion:
https://github.com/qbittorrent/qBittorrent/pull/21296#issuecomment-2562341328
https://github.com/qbittorrent/qBittorrent/pull/21296#issuecomment-2561373010

PR #22081.
2024-12-31 13:34:08 +08:00
Chocobo1
9c0475ebfa WebUI: migrate to fetch API
This is the final part of it.

PR #22072.
2024-12-29 15:44:28 +08:00
Chocobo1
e740a42366 Merge pull request #22070 from Chocobo1/py_html_decode
Improve Search engine
2024-12-29 14:39:11 +08:00
Chocobo1
cc31a90931 Provide SSL context field
The allows the caller to provide proper SSL parameters and avoid dirty monkey patching to
suppress SSL errors.
2024-12-27 03:53:46 +08:00
Chocobo1
90e457a671 Use built-in method for decoding HTML entities 2024-12-27 03:52:50 +08:00
Chocobo1
7487cd7e6d WebUI: disallow unnecessary quotes in property name
Those two forms are the same and from now on we enforce to one style.

PR #22051.
2024-12-24 22:25:18 +08:00
skomerko
bbc3c2832f WebUI: Use closest() to get parent element
All `getParent()` instances (Mootools) were changed to use `closest()` method:
https://developer.mozilla.org/en-US/docs/Web/API/Element/closest

PR #22048.
2024-12-23 23:07:17 +08:00
Chocobo1
879c6bf9ff Simplify conversion to string
PR #22036.
2024-12-23 22:59:01 +08:00
Chocobo1
f2097dc4b5 Avoid redundant copy
PR #22035.
2024-12-23 22:43:23 +08:00
Hugo Carvalho
166feb5bdf NSIS: Update Portuguese translation
PR #21632.
2024-12-23 22:37:46 +08:00
Chocobo1
a841fe9320 WebUI: migrate to fetch API
And away from mootools.

PR #22037.
2024-12-22 17:51:19 +08:00
Patrik Elfström
9709672b34 WebUI: Change filter inputs to type search
Changing input type from text to search for all search and filter inputs
to enable user to easily clear input.

This feature is yet to be implemented in Firefox.
See tracking bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1654288

Also fix search icon horizontal positioning and minor input box paddings.

Closes #15481.
PR #22033.
2024-12-22 17:19:03 +08:00
xavier2k6
e2db0bc866 GHA CI: Update pandoc to latest
* Bumped `pandoc` -> 3.6

PR #22021.
2024-12-20 18:27:05 +08:00
xavier2k6
fee45e4ba6 GHA CI: Bump some pre-commit hook revs
* Bumped `pre-commit-hooks` -> v5.0.0
* Bumped `typos` -> v1.28.4

PR #22020.
2024-12-20 18:16:43 +08:00
Zentino
257d928ab3 Resolve relative URLs within RSS article description
PR #21943.


---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2024-12-20 10:19:34 +03:00
Chocobo1
34c8849f22 Fix tab order in RSS widget
Related: https://github.com/qbittorrent/qBittorrent/pull/21996#issuecomment-2543127251

PR #21999.
2024-12-18 02:29:51 +08:00
Chocobo1
1c82eb3dff Merge pull request #21996 from Chocobo1/check_ui
Sort grid items properly
2024-12-18 02:19:34 +08:00
sledgehammer999
d96ab6ba84 Bump to v5.1.0beta1 2024-12-16 21:56:08 +02:00
Chocobo1
7886ca65f9 Make tab key switch focus
These fields do not expect tab characters.
2024-12-16 01:30:47 +08:00
Chocobo1
85c4ddf616 Make links accessible by keyboard 2024-12-16 01:30:47 +08:00
Chocobo1
0a36171999 Sort grid items properly
Supersedes #21856.
2024-12-16 01:30:47 +08:00
Vladimir Golovnev
eb2eea8d34 Avoid race condition when update tracker entries
PR #21995.
2024-12-15 14:07:36 +03:00
skomerko
14684c8c83 WebUI: Use vanilla JS to create elements
All elements are now created using createElement() method:
https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement

PR #21975.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-12-15 03:31:44 +08:00
Chocobo1
c887a6f7d8 GHA CI: add checks for grid items order
Now all items under `QGridLayout` are required to be sorted. This allow
us to omit tabstop order. The tabstop order will follow the layout order.

The script can be invoked to fix wrong grid items order in .ui files:
```console
python check_grid_items_order.py file.ui
```
2024-12-14 17:08:18 +08:00
Chocobo1
4c6dd8e68d Remove wrong conditional in Origin trustworthy check
It might block WebUI from logging in under specific network configurations.

Fix up 130c0d8487.
PR #21972.
2024-12-13 16:12:29 +08:00
antanilol
27451469fa Add eXact Length parameter when creating magnet URI
Include the `xl` (eXact Length) parameter in the magnet URI string inside the function `TorrentImpl::createMagnetURI()`.

Closes #20752.
PR #21958.
2024-12-09 03:29:41 +08:00
Chocobo1
a311c259cc Use proper data type for elapsed time
PR #21963.
2024-12-08 17:02:20 +08:00
Chocobo1
0ad65ceef6 Remove unused variable
PR #21962.
2024-12-08 16:44:47 +08:00
Chocobo1
cbf7c09bf4 Use built-in method for setting header
PR #21961.
2024-12-08 16:33:35 +08:00
skomerko
3fcc298539 WebUI: Add missing icon to 'Queue' context menu item
PR #21948.
2024-12-08 16:27:14 +08:00
skomerko
7080f85b59 WebUI: Replace Mootools class list manipulation methods
All `addClass()`, `removeClass()` and `hasClass()` instances were changed to use `classList` equivalent:
https://developer.mozilla.org/en-US/docs/Web/API/Element/classList

PR #21946.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-12-08 16:12:57 +08:00
Giacomo411
9f0fa4c215 NSIS: Update Italian translation
PR #21920.
2024-12-07 20:44:20 +08:00
Chocobo1
6f31a13f22 Don't follow symlink when creating torrents on Windows
Now on Windows, it won't follow/include .lnk files when creating torrents.
Note that libtorrent will throw errors if we force adding .lnk files.

Non-Windows OS will still follow symlinks.

Closes #13286.
PR #21944.
2024-12-07 20:43:16 +08:00
Vladimir Golovnev
200f7fc628 Use cached current time when parse RSS feed
PR #21959.
2024-12-07 11:10:53 +03:00
Vladimir Golovnev
a180162405 Avoid redundant requests of announce entries from libtorrent
PR #21949.
2024-12-06 19:59:45 +03:00
Chocobo1
2d1c4fc809 WebUI: use native event listeners for keyboard events
PR #21924.
2024-12-02 13:41:19 +08:00
Chocobo1
e8d8de8f19 WebUI: fix window can not close regression
Fix up 1cd3c586c1.
Fix up e1bd1038c0.

PR #21919.
2024-11-29 23:59:58 +08:00
Chocobo1
90aecfea02 WebUI improvements
WebUI improvements
2024-11-29 23:52:55 +08:00
skomerko
a85736fd27 WebUI: Set base background color
This PR ensures that the same base background color is used across different browsers (more consistent styling).
Context: https://github.com/qbittorrent/qBittorrent/pull/21498#issuecomment-2399929576
Used default Chrome colors: https://github.com/qbittorrent/qBittorrent/issues/21894#issuecomment-2494253459

PR #21914.
2024-11-29 23:44:53 +08:00
skomerko
dafbcf8709 WebUI: Add colors to 'Status' column in Trackers table
PR #21820.
2024-11-29 23:36:08 +08:00
wavygecko
d11622e3c0 Don't add duplicate episodes to previously matched
PR #21917.
2024-11-28 11:37:05 +03:00
Vladimir Golovnev
d90a9d15ac Avoid using QDateTime for announce timestamps
PR #21906.
2024-11-27 21:03:54 +03:00
Chocobo1
f8aaea3476 WebUI: locate element faster 2024-11-27 16:17:57 +08:00
Chocobo1
b84a51c76d WebUI: revise Edit Category dialog button text
The generic "OK" is suitable for more scenarios.
2024-11-27 01:22:58 +08:00
Chocobo1
83b0dd3026 WebUI: fix checkbox initialization
Previously the checkbox had all options checked regardless of the stored
setting.
2024-11-27 01:12:13 +08:00
Chocobo1
ef5506321a WebUI: fix invalid style
`initial` isn't applicable to `borderLeft`/`borderRight`.
2024-11-27 01:12:13 +08:00
Chocobo1
24d349ffba WebUI: fix wrong event property 2024-11-27 01:12:13 +08:00
Chocobo1
2109e13746 WebUI: use proper event for handling text changes 2024-11-27 01:12:13 +08:00
Chocobo1
5eec0c0213 WebUI: use idiomatic string methods 2024-11-27 01:12:13 +08:00
Chocobo1
f34787e6ba WebUI: use correct property for selecting child elements
`firstChild` will select the first `Node` which is often not intended (it should be
`Element` instead).
2024-11-27 01:12:12 +08:00
Vladimir Golovnev
15ea836bb9 Avoid repeatedly creating the same QDateTime values
PR #21904.
2024-11-26 09:04:59 +03:00
Chocobo1
72e033db79 WebUI: remove child elements directly 2024-11-26 00:43:58 +08:00
Chocobo1
e1bd1038c0 WebUI: simplify close window implementation
The caller site now take the responsibility to ensure the element is valid.

PR #21892.
2024-11-26 00:40:05 +08:00
Chocobo1
3ebdb50457 Verify hash of Python installer
PR #21877.
2024-11-26 00:29:11 +08:00
Chocobo1
b0fe6e6c59 WebUI: ensure cached info are initialized properly
PR #21893.
2024-11-25 14:04:28 +08:00
Chocobo1
8d847eeb18 WebUI: clean up fetch API usage
The `Content-type` header isn't required since `URLSearchParams` is present.
The `method` property is preferred to be always specified for clarity.
The `cache: "no-store"` is preferred for most GET requests to avoid caching.

PR #21891.
2024-11-25 13:49:35 +08:00
Chris B
f022ce8f84 WebAPI: Add forced parameter to torrents/add
Adds the parameter `addForced` to the `/api/v2/torrents/add` API call. Defaults to false if not provided.

PR #21864.
2024-11-23 16:19:19 +08:00
Thomas Piccirello
78a5e4ff3e WebUI: Display error when download fails
Previously we would still download the file but it would contain the error response, resulting in an invalid file.
To test: export a .torrent file for a torrent that hasn't yet downloaded metadata

PR #21696.

Signed-off-by: Thomas Piccirello <thomas@piccirello.com>
2024-11-23 16:03:43 +08:00
tinyboxvk
61ff683f11 Update link to news
Change `https://www.qbittorrent.org/news.php` to `https://www.qbittorrent.org/news` to avoid redirect.

PR #21872.
2024-11-22 21:05:39 +08:00
skomerko
7300b9f759 WebUI: Eliminate unnecessary Status filter list updates
Only update the Status filter list when torrents are removed, added or their state changed.

PR #21866.
2024-11-22 20:59:23 +08:00
Bartu Özen
6ce2869108 WebAPI: Fix incorrect key in torrent creator
PR #21879.
2024-11-21 13:59:20 +03:00
Vladimir Golovnev
0eba285ff1 Fix incorrect SQL column definition
PR #21874.
2024-11-21 13:57:37 +03:00
Vladimir Golovnev
88161a6467 Discard obsolete "state update" events after torrent is reloaded
PR #21873.
Closes #21827.
2024-11-21 13:56:22 +03:00
Chocobo1
7f901a812d Improve Python installation process
Instead of waiting it to complete, now it will react on installation process finish.
Also add more logging.

PR #21863.
2024-11-19 18:57:44 +08:00
Chocobo1
6578fd06fd WebUI: fix failed conversion to number
The value has unit suffix (`px`) and require using `parseInt()` for conversion.

Fix up f73f31619d.
PR #21862.
2024-11-19 03:12:50 +08:00
Chocobo1
6ddde3f4b6 Avoid redundant string length function calls
Also switch to `std::string_view` as it is more generic and can handle more types (including
view types).

PR #21861.
2024-11-19 02:53:16 +08:00
Patrik Elfström
530631322d WebUI: Fix bug where you can't select RSS rules
Fixes bug caused by #21731.

PR #21857.
2024-11-19 02:40:22 +08:00
Mahdi Hosseinzadeh
928de36093 Improve the speed icons in the status bar
The speed icons in the status bar look weird. Whenever I look at them, there seems to be something off with them. The circle seems to have been stretched. Also, the gap between the needle and the circle is not big enough to be clearly visible (at least on my display).

PR #21853.
2024-11-19 02:29:17 +08:00
Evgenii Ryshkov
1e851b3637 WebUI: Fix reloading page after login
PR  #21832.
---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-11-19 02:20:04 +08:00
skomerko
c9c85eeb95 WebUI: Use event delegation to handle common table events
Event delegation is now used to handle basic table events.
2 minor fixes were added to match GUI behavior:
* Clicking on the table body deselects everything
* Table rows are now scrolled into view when using up/down arrows

PR #21829.
2024-11-19 02:12:26 +08:00
Vladimir Golovnev
ea35aa45d6 Remove wrong dependency on Main Window
Don't depend on upper level widget (Main Window) state.

PR #21816.
2024-11-18 19:13:43 +03:00
skomerko
e51fcc6ea0 WebUI: Show 'Rename...' context menu item only when one torrent is selected
'Rename...' item in torrents table menu is displayed only when exactly one torrent is selected.

PR #21843.
2024-11-17 15:31:30 +08:00
Chocobo1
f4eec75488 Don't apply Mark-of-the-Web on existing files
`TorrentImpl::isDownloading()` was excessively broad which included unexpected events for the
case here. So use the underlying state directly.

Closes #21788.
PR #21836.
2024-11-16 15:57:55 +08:00
Chocobo1
f73f31619d WebUI: use native function to convert to numbers
Also replace `parseInt()` since `Number()` behavior is more intuitive.

PR #21831.
2024-11-16 15:41:20 +08:00
Chocobo1
ede08f3845 WebUI: fetch cached info early
The cached info doesn't need to wait until the DOM is loaded. They can be fetched far earlier.

PR #21830.
2024-11-16 15:34:35 +08:00
Patrik Elfström
c9a55fce95 WebUI: Fix wrong log levels
Fixes bug where the first time visiting Execution Log view all log levels are deselected but log items with all levels are still displayed.
This requires you to select a log level and then deselect it to hide that log level.

PR #21812.
2024-11-16 15:22:26 +08:00
Thomas Piccirello
1cd3c586c1 WebUI: Always close one window
Closing all windows is overly broad and never the intention.

PR #21804.
2024-11-16 15:12:35 +08:00
Chocobo1
0f12d077c8 Avoid reapplying Mark-of-the-Web when it already exists
Also use scope guards to handle resources.

Related #21788.
PR #21806.
2024-11-14 15:06:33 +08:00
Chocobo1
92daca1fef Avoid redundant string length scan
PR #21807.
2024-11-11 19:19:10 +08:00
skomerko
889df72ab3 WebUI: Use thin scrollbars
Thin scrollbars are now used if they are supported by user's browser. The main goal was to make them less intrusive in Chrome-likes on some platforms.

PR #21763.
---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-11-11 19:05:42 +08:00
Hanabishi
631e873ff2 WebUI: fix preferences class name
Fixup for #21780. Account for changed preferences class name in the color scheme logic.

PR #21809.
2024-11-11 18:53:06 +08:00
Vladimir Golovnev
69f19d4a0b Preserve initial torrent progress while checking resume data
PR #21784.
2024-11-10 12:01:12 +03:00
skomerko
3ec645674a WebUI: Use modern class syntax to create LocalPreferences class
LocalPreferences class is now created using modern class syntax (minimal changes to remove Mootools bits). In addition, I removed redundant suffix from class name.

PR #21780.
2024-11-09 16:40:25 +08:00
skomerko
71f83cf9ba WebUI: Display torrent progress percentage in General tab
This PR adds torrent progress percentage next to pieces bar in General tab, as in the GUI.

PR #21756.
2024-11-09 16:03:20 +08:00
Hanabishi
06fe3e5fb0 WebUI: fix color scheme for iframes
Applies the color scheme for iframe dialogs.

Fixup for #21613.
PR #21750.
2024-11-09 16:02:28 +08:00
3gf8jv4dv
fe153f8919 NSIS: Update Traditional Chinese translation
PR #21694.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-11-09 16:01:02 +08:00
3gf8jv4dv
568de90923 NSIS: Update Simplified Chinese translation
PR #21693.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-11-09 16:00:31 +08:00
Thomas Piccirello
f89c4c32ed Display External IP Address in status bar
This change displays the last detected IPv4 and/or IPv6 address(es) in the GUI and WebUI's status bar. This does not yet handle systems with multiple addresses of the same type (e.g. multiple IPv6 addresses).

PR #21383.

---------

Co-authored-by: Odin Vex <44311901+OdinVex@users.noreply.github.com>
2024-11-09 15:58:13 +08:00
Chocobo1
fb9b3c0f34 WebUI: use Fetch API to login
Fetch API is the modern replacement for XMLHttpRequest.
Also show more detailed error messages. 

Closes #21739.
PR #21744.
2024-11-09 14:08:03 +08:00
Vladimir Golovnev
33e3fb2f46 Correctly handle "torrent finished" events
PR #21786.
Closes #21699.
2024-11-08 11:45:57 +03:00
Vladimir Golovnev
4bec9b90c4 Check real palette darkness to detect "dark theme"
`QStyleHints::colorScheme()` returns chosen color scheme even if current style doesn't support it and uses different palette.

PR #21771.
2024-11-08 11:45:16 +03:00
Vladimir Golovnev
a6c7aef6c1 Optimize checking for outdated tracker endpoints
PR #21768.
2024-11-07 09:40:33 +03:00
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
Chocobo1
c4eeb4a14a Add drag support to torrent content widget
Now qbt supports dragging items from torrent content widget to another app.

Closes #5860.
PR #21569.
2024-10-12 14:49:17 +08:00
algebnaly
6418033cc8 Add support for Thunar file manager
PR #21531.

Co-authored-by: yalikes <algebnaly@qq.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-10-12 14:41:05 +08:00
skomerko
cbcb46bcfb WebUI: Setup copy events only once
It is enough to set them up just once during initial load. Number of elements with copyToClipboard class is fixed - they are context menu items.

PR #21558.
2024-10-12 14:29:54 +08:00
skomerko
0704049026 WebUI: Apply box-sizing reset
Box-sizing: border-box is now applied globally. A lot of tiny changes were made but they were necessary to correct resulting inconsistencies. Everything should be pretty much as it was with just some minor exceptions.

Looks like this PR also indirectly fixed #21414.

PR #21464.
2024-10-12 14:22:07 +08:00
skomerko
81509dfb65 WebUI: Improve filter lists
This PR adds following improvements: 
* Remove unused tracker entries while processing sync data
* Take into account filter selection & terms when performing 'Start/stop/delete' context actions in filter lists
  Now, only filtered torrents will be affected by them, just like in the GUI.
* Provide better feedback when performing 'Start/stop/delete' context actions in filter lists
  Small improvement over GUI - now these actions will be disabled if it's not possible to use them.
* Add context menu to status filter list
* Fix error when toggling filter title
  Fixup for small bug introduced in https://github.com/qbittorrent/qBittorrent/pull/21269

PR #21438.
2024-10-12 13:40:18 +08:00
Thomas Piccirello
b1fd61af3a WebUI: Handle folders when updating RSS feed url
Follow up to #21371 ([context](https://github.com/qbittorrent/qBittorrent/pull/21371#discussion_r1780908605)).

PR #21437.
2024-10-12 13:30:24 +08:00
Vladimir Golovnev
2d185dc1c7 Allow to choose Qt style
PR #21553.
2024-10-11 16:04:57 +03:00
Vladimir Golovnev
2d857b6200 Disable "Move to trash" option by default
PR #21528.
2024-10-10 14:13:40 +03:00
Chocobo1
871438f557 Bump search engine components version
The master branch should have version larger than stable branch.
https://github.com/qbittorrent/qBittorrent/pull/21539/files#r1790078486

PR #21542.
2024-10-10 16:30:45 +08:00
skomerko
87644441ad WebUI: Add context menu to search tabs
PR #21516.
2024-10-07 22:04:29 +08:00
thalieht
d73201c098 Fix the tab order in dialogs
* Torrent options
* Torrent creator
* Preferences

Closes #21387.
PR #21395.
2024-10-07 21:51:56 +08:00
stalkerok
3ea2be41e7 Disable the ability to create torrents with a piece size of 256MiB
Disabling will reduce the number of users experiencing this issue.
https://github.com/qbittorrent/qBittorrent/issues/21011

PR #21295.
2024-10-07 21:40:02 +08:00
Chocobo1
6bbedbea8a WebUI: remove unused variable
PR #21500.
2024-10-06 16:54:42 +08:00
xavier2k6
56a0692b68 GHA CI: Update pre-commit-config workflow
* Bumped numerous revisions
* Removed obsolete exclusions (files/folders were removed previously)
* Implement fix/workaround for "false positives" (typos/codespell)

PR #21460.
2024-10-06 16:49:30 +08:00
xavier2k6
dfa4eebbce GHA CI: Bump pandoc to latest version
PR #21458.
2024-10-06 16:41:38 +08:00
Chocobo1
6ed662c68b CI: turn on assertion checks
This turn on assertions from qbt codebase so that testers can verify the assertions really hold.

PR #21499.
2024-10-06 16:13:14 +08:00
Ikko Eltociear Ashimine
f81d8a85e9 NSIS: update luxembourgish
PR #21456.
2024-10-06 15:43:43 +08:00
Chocobo1
9e5433bcf8 Add name to threads
This help identifying threads when debugging.
The naming scheme is using 'class/function name + variable name'.
Note that the length limitaion is 16 chars on linux. On Windows, the limit is 32767 chars.

PR #21403.
2024-10-06 15:23:50 +08:00
Vladimir Golovnev
3fb5d7764c Don't try to apply Mark-of-the-Web to nonexistent files
Trying to apply it to a nonexistent file is unacceptable, as it may unexpectedly create such a file.

PR #21488.
Closes #21440.
2024-10-05 12:27:03 +03:00
stalkerok
e75bcbed6d Remove non-working DHT bootstrap nodes
router.utorrent.com has been dead for a long time. router.bittorrent.com died about a month or two ago. dht.aelitis.com doesn't work either. It is no longer possible to get DHT nodes from them.
Added router.silotis.us. Only ipv6!

PR #21296.
2024-10-05 16:45:29 +08:00
thalieht
7f38216d22 Regenerate .ui files
PR #21411.
2024-10-05 16:42:03 +08:00
sledgehammer999
e309148147 Reorder code to match UI 2024-10-04 22:48:46 +03:00
sledgehammer999
6981217369 Don't ignore SSL errors 2024-10-04 22:48:46 +03:00
skomerko
4ff0687b94 WebUI: Add confirm dialog for Auto TMM
Just like in GUI, confirmation dialog shows up if it's possible to enable Auto TMM for any selected torrent. Right now it's not possible to properly test all cases in the WebUI because context menu completely hides TMM option when some torrents have it enabled and some not (no tri-state) - but that's something to add in another PR.

PR #21378.
2024-10-04 22:39:08 +08:00
Chocobo1
dc02a0fc56 WebUI: remove unused variables
PR #21432.
2024-10-04 22:23:04 +08:00
Vladimir Golovnev
c48d2c1dde WebUI: Fix incorrect row ID
Incorrect row ID prevented the "Torrent content removing mode" option from being displayed on some platforms.

PR #21481.
2024-10-04 14:06:51 +03:00
Hanabishi
b5b34c9ff4 Add "Simple pread/pwrite" disk IO type
PR #21300.
2024-10-01 19:58:35 +03:00
Chocobo1
7b45566efc Migrate away from deprecated functions in Qt 6.9
Closes #21412.
PR #21415.
2024-09-30 18:31:17 +08:00
xavier2k6
c30a07702d Replace QVector with QList
Migrated last remnants of QVector to Qlist, reference https://github.com/qbittorrent/qBittorrent/pull/21016#issuecomment-2212403741 onward.

PR #21407.
2024-09-30 18:20:58 +08:00
skomerko
d8e24314ec WebUI: Improve lookup performance when filtering by tracker
Torrent hashes in tracker list are now kept in sets instead of arrays.
PR #21405.
2024-09-30 18:13:45 +08:00
skomerko
449ca96e28 WebUI: Add 'Engine' column to Search table
This PR adds 'Engine' column to Search table.
I also fixed inconsistent naming and renamed 'Search engine' column to 'Engine URL'.

PR #21397.
2024-09-30 18:05:17 +08:00
Chocobo1
cebaedf485 WebUI: CSS/styling improvements
WebUI: CSS/styling improvements
2024-09-30 17:57:42 +08:00
Chocobo1
fd311fd5ff Reduce sensitive data instances
There is no reason for `WebUI` class to retain this information.

PR #21373.
2024-09-30 17:45:28 +08:00
Thomas Piccirello
50acb670b0 WebUI: Support updating RSS feed URL
PR #21371.

Signed-off-by: Thomas Piccirello <thomas@piccirello.com>
2024-09-30 17:34:37 +08:00
xavier2k6
3888b465d8 Revise bug_report template
PR #21343.
2024-09-30 17:24:57 +08:00
Thomas Piccirello
6bbb7b71cd Add WebAPI/WebUI for managing cookies
Closes #21125.
PR #21340.
2024-09-30 17:13:25 +08:00
Chocobo1
10eb921d70 Allow drop action only on transfer list
Now drop action is only allowed on transfer list, previously it was on main window.
Having drop action on the whole main window is not preferred because it could allow drop action
on other unrelated widgets, such as execution log or RSS widget which is unexpected behavior.

PR #21332.
2024-09-30 16:59:57 +08:00
skomerko
5e3161a3f9 WebUI: Improve statistics window 2024-09-28 17:49:52 +02:00
skomerko
4cc3fedf37 WebUI: Reduce padding in torrents table 2024-09-28 17:49:52 +02:00
skomerko
2952480f37 WebUI: Use correct text and background colors in RSS details view 2024-09-28 17:49:52 +02:00
skomerko
6bfabad92f WebUI: Prevent text selection within tabs, menu items 2024-09-28 17:49:52 +02:00
skomerko
0e03e4f8a7 WebUI: Add colors to log table rows 2024-09-28 13:33:14 +02:00
skomerko
10149de205 WebUI: Define global CSS variables in root selector 2024-09-28 13:33:14 +02:00
skomerko
960edd95cc WebUI: Remove redundant imports 2024-09-28 13:33:14 +02:00
skomerko
8b2d8f3afd WebUI: Use Map instead of Mootools Hash in all dynamic tables
PR #21358.
2024-09-28 15:46:16 +08:00
Thomas Piccirello
81def39d8c WebUI: Support managing web seeds
Closes #8475.
PR #21055.
2024-09-28 15:37:36 +08:00
Chocobo1
a23f45cc70 Split platform specific code to its own file
PR #21368.
2024-09-22 14:28:40 +08:00
Thomas Piccirello
8a6207d3fc WebUI: Fix removing tracker URL with '|' character
Closes #19074.
PR #21346.
2024-09-22 14:22:52 +08:00
skomerko
c3224459db WebUI: Add 'Confirm torrent recheck' option
This PR adds setting & confirmation dialog for torrent recheck.

Closes #19557.
PR #21348.
2024-09-22 14:12:44 +08:00
skomerko
183c7c75b1 WebUI: Display DHT information in the Status bar only when DHT is enabled
GUI completely hides DHT information when DHT is disabled - now WebUI does the same thing.

Closes #18417.
PR #21339.
2024-09-22 14:06:25 +08:00
sledgehammer999
1c43286616 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-16 22:26:57 +03:00
Chocobo1
4555a46e5d Remove unused function
PR #21334.
2024-09-16 18:10:13 +08:00
Chocobo1
23f7275bd5 Merge pull request #21333 from Chocobo1/random
Improve PRNG functions
2024-09-16 17:56:19 +08:00
Thomas Piccirello
d2b2afad23 Support removing tracker from all torrents in WebUI/WebAPI
Closes #20661.
PR #21056.
2024-09-16 17:47:10 +08:00
skomerko
d19f7b12d9 WebUI: Improve hash copy actions in context menu
This PR provides better feedback for hash context menu actions and now it is clearly shown if there is anything to copy.

PR #21321.
2024-09-16 17:41:14 +08:00
skomerko
6df1f68ead WebUI: Use Map instead of Mootools Hash in Torrents table
PR #21308.
2024-09-16 17:34:49 +08:00
Burnerelu
e06b7f8f4d Enable customizing the save statistics time interval
This change extends the Advanced section of the Preferences menu with a new field, allowing changing the time statistics save interval. A zero value will prevent recurrent saving.

This aims to provide the feature requested in issue #21285.

PR #21291.
2024-09-16 17:16:59 +08:00
Chocobo1
3058158b69 Use modern function for getting random numbers on Windows
The previous `RtlGenRandom()` just redirects to `ProcessPrng()` according to "The Windows 10
random number generation infrastructure" whitepaper from MS.

`ProcessPrng()` is also the de facto PRNG for Rust lang:
aa13fa5882/src/windows.rs (L3C1-L22C81)
And for golang:
https://go-review.googlesource.com/c/go/+/536235
2024-09-14 23:20:07 +08:00
skomerko
0ea35c54a3 WebUI: Improve torrent deletion
* Added 'Confirm when deleting torrents' option to the WebUI
* Confirm deletion dialog now uses MUI.Modal

PR #21289.
Closes #18345.
2024-09-13 22:28:02 +08:00
Chocobo1
dbef6da544 Use modern function for getting random numbers on Linux
Now we don't need a file handle anymore and there is no initialization involved in this new
implementation.
2024-09-13 22:27:42 +08:00
Chocobo1
a0c32110f1 Add URL link for reverse proxy setup examples
The link is helpful for users whom needs to setup reverse proxy.

PR #21305.
2024-09-13 22:18:31 +08:00
skomerko
435385816a WebUI: Provide 'Merge trackers to existing torrent' option
PR #21302.
2024-09-10 11:12:30 +03:00
skomerko
1b53fdf9ee WebUI: Improve subcategories
Now they should fully match GUI behavior, please let me know if I missed something.
Still plenty of room to improve them further (e.g styling/CSS) but for now I wanted to keep the changes to the minimum.

Also included small tweaks to category context menu actions.

PR #21269.
2024-09-08 15:21:11 +08:00
Andarwinux
f00c5c9fa3 Opt into Windows SegmentHeap
SegmentHeap provides a faster malloc implementation that only available with Dynamic UCRT in Windows 10, version 2004 (build 19041) and later.

PR #21263.
2024-09-08 15:09:34 +08:00
Chocobo1
130c0d8487 Revise cookie 'secure flag' enable condition
The localhost is 'potentially trustworthy' and RFC 6265 allows setting secure flag in this case.
Also check `X-Forwarded-Proto` header value to support reverse proxy usage.

Note: for reverse proxy users, now the `X-Forwarded-Proto` header is expected to be sent to qbt
otherwise the `secure` flag might be set erroneously.

https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.2.5
https://w3c.github.io/webappsec-secure-contexts/#is-origin-trustworthy

Closes #21250.
PR #21260.
2024-09-07 21:38:27 +08:00
Vladimir Golovnev
d9bc7935eb Apply "merge trackers" logic regardless of way the torrent is added
PR #21299.
2024-09-06 16:28:22 +03:00
Chocobo1
944499814b Revert "Use client side translation for public login page"
This reverts #20520.
PR #21290.
2024-09-06 15:38:31 +08:00
Chocobo1
0e63b83aed WebUI: do not follow anchor URL
Fix up 5afeecbf18.
PR #21283.
2024-09-06 15:31:26 +08:00
skomerko
f681e954c7 WebUI: Show country/region name next to its flag when 'Resolve peer countries' is enabled
PR #21278.
2024-09-06 15:23:11 +08:00
Prince Gupta
a7f7c5fb73 Fix highlighted piece color
PR #20971.
2024-09-02 08:11:35 +03:00
skomerko
9d0fa213be WebUI: Allow to display only hostname in the Tracker column
It is now possible to display only hostname in the Tracker column.
Closes #11357.
PR #21243.
2024-09-01 16:34:49 +08:00
Chocobo1
fc82abe7f6 Remove 'loopback address detection' helper function
It is not needed since `QHostAddress::isLoopback()` can do the job.
PR #21259.
2024-08-31 15:53:39 +08:00
sledgehammer999
72feee6fdd Fix version bump
Closes #21265
2024-08-26 09:46:27 +03:00
skomerko
58eab8d453 WebUI: Don't apply hover/selection styles to flag, highlighted category icons
Related: https://github.com/qbittorrent/qBittorrent/pull/21162#discussion_r1721799836
Fix up: #21162.
PR #21236.
2024-08-25 15:29:05 +08:00
skomerko
7ab4758279 WebUI: Provide 'Use Category paths in Manual Mode' option
This PR adds 'Use Category paths in Manual Mode' option to WebUI.

PR #21223.
2024-08-25 14:51:59 +08:00
xavier2k6
e6cd9b90d2 Sync flag icons with upstream
* Release: 7.2.3
* Contains bug fixes & additional flags

PR #21220.
2024-08-25 14:46:15 +08:00
skomerko
5b7c9d5725 WebUI: Filter list improvements
A couple of tweaks to make them a little bit better:
1. Make highlighting functions more consistent (this also fixes minuscule bug when no filter item in tracker list is highlighted due to a type mismatch)
2. Use [event delegation](https://javascript.info/event-delegation) to handle filter toggling & item selection
3. Other minor improvements (everything should work like it was previously)

PR #21191.
2024-08-25 14:23:35 +08:00
skomerko
39dd415d43 WebUI: Improve torrent deletion dialog
This PR improves torrent deletion dialog.

1. Now shows different message depending on the number of selected torrents
2. Visually pretty much inline with the GUI
3. Adjusts to content on load
4. Now uses XHR load method. Panels / windows loaded using this method become part of the current document so there is no need to import styles or scripts (they should load marginally faster now).

PR #21185.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-08-25 14:11:36 +08:00
sledgehammer999
9a9c375b9d Bump to v5.1.0alpha1 2024-08-24 21:49:49 +03:00
skomerko
fda797cb76 WebUI: Improve properties panel
It is now possible to expand & collapse it by clicking directly on tabs, just like in GUI.
In addition, collapse state is saved and applied on page load.
Fixed one minor bug and now files search input is properly hidden even when panel is collapsed.

PR #21209.
2024-08-24 14:09:10 +08:00
Chocobo1
a91bac8aa0 Add link to 'List of alternative WebUI' wiki page in Options
PR #21224.
2024-08-23 02:27:24 +08:00
Vladimir Golovnev
0904f4a89b 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:08:14 +03:00
Chocobo1
9c370bf391 Merge pull request #21215 from Chocobo1/webui_event_param
WebUI: improve event handlers
2024-08-19 16:11:38 +08:00
xavier2k6
f09d43d073 GHA CI: Bump boost dependency
PR #21214.
2024-08-19 15:59:09 +08:00
xavier2k6
f818d0dbe0 Sync "expected lite" with upstream
* Release 0.8.0

PR #21213.
2024-08-19 15:32:01 +08:00
Chocobo1
98623b2cf7 WebUI: use passive event handlers
These kind of event handlers can be asynchronously dispatched, freeing up the main thread for
lag-free operation.
2024-08-17 14:03:51 +08:00
Chocobo1
29379232aa WebUI: implement debounce behavior for resize events 2024-08-17 14:02:15 +08:00
Chocobo1
0c580c3174 WebUI: remove redundant events
The base class already handle them.
Also optimize the base implementation a bit.
2024-08-17 14:02:15 +08:00
Chocobo1
1179fc3de3 WebUI: prevent passing wrong parameter
The `event` object will be passed as the first parameter to the event handler. So wrap the
event handler with a closure to prevent `event` leaking to other functions.
2024-08-17 14:02:13 +08:00
skomerko
e069fbc37f WebUI: Add missing icons
This adds missing icons to WebUI (in tabs, buttons, etc.).

PR #21162.
2024-08-17 13:38:44 +08:00
ducalex
efdc4af448 Search helpers: Add POST support to retrieve_url
This allows passing request_data to retrieve_url in order to create a post request.

PR #21184.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-08-17 13:32:57 +08:00
Russell Martin
0535993e41 Bump WebAPI version
Accounts for the addition of webseed modification endpoints.

PR #21205.
2024-08-16 07:19:53 +03:00
skomerko
f5aa0bb126 WebUI: Always create generic filter items
PR #21188.
2024-08-15 20:36:38 +03:00
stalkerok
0da383e7b6 Add a flag about the connection peers are using NAT hole punching
PR #21052.
2024-08-15 20:27:19 +03:00
Vladimir Golovnev
c5b7c82344 Refresh pieces bar colors once color scheme is changed
PR #21183.
Closes #21155.
2024-08-13 09:11:21 +03:00
Chocobo1
b1d2b9d02b WebUI: fix wrong property for keyboard keys
Fix up 2d9e3b3330.
PR #21182.
2024-08-12 15:14:17 +08:00
Chocobo1
d9667b5221 Merge pull request #21179 from Chocobo1/webui_style
WebUI: use native property to set styles
2024-08-12 15:08:26 +08:00
Chocobo1
155fe96bdd Revise quote escaping for translated strings in WebUI
qbt only need to escape double quotes for the sake of HTML attributes. As for single quotes it
can leave them as-is since WebUI enforce using double quotes for strings.

PR #21180.
2024-08-12 14:59:30 +08:00
HamletDuFromage
9a8572bd21 WebUI: Handle regex syntax error for torrent filtering
https://github.com/qbittorrent/qBittorrent/pull/20566#discussion_r1704548226

PR #21173.
2024-08-12 14:54:37 +08:00
skomerko
04eb40376e WebUI: Allow to filter torrent list by save path
This PR adds ability to filter torrent list by save path. Everything should work exactly like in GUI.

Closes #19393.
PR #21175.
2024-08-11 16:08:13 +08:00
Thomas Piccirello
ea06eb9fe6 Add WebAPI for managing torrent webseeds
Closes #18465.
PR #21043.
2024-08-11 15:58:56 +08:00
Chocobo1
3e18b1d30c WebUI: remove outdated CSS property
WebUI already has the standard counterparts.
2024-08-10 14:26:10 +08:00
Chocobo1
9df3ee0de8 WebUI: use native property to set styles 2024-08-10 14:26:10 +08:00
Chocobo1
0c7045042d WebUI: replace deprecated property 2024-08-10 13:01:26 +08:00
Chocobo1
5afeecbf18 WebUI: migrate away from inline HTML code
`innerHTML` &  `outerHTML` setter will more or less evaluate the value which could be used to
inject malicious code. So replace them with safer alternatives.

PR #21163.
2024-08-10 12:55:48 +08:00
skomerko
4570c0ef9e WebUI: Clear trackerList on full update
Like other similar data structures, trackerList also need to be cleared in the event of a full sync update.

PR #21148.
2024-08-10 12:49:00 +08:00
thalieht
d0af02cc17 WebUI: Add missing columns in transfer list
* Incomplete Save Path
* Info Hash v1
* Info Hash v2

PR #21158.
2024-08-09 14:48:22 +08:00
skomerko
62c5f41f39 WebUI: Implement 'Auto hide zero status filters'
PR #21145.
2024-08-09 14:38:53 +08:00
Vladimir Golovnev
bee56f2567 Fix Incomplete Save Path cannot be changed for torrents without metadata
PR #21152.
Closes #21140.
2024-08-08 08:20:26 +03:00
Vladimir Golovnev
cbabe56fcf Hide zero status filters when torrents removed
PR #21150.
Closes #21146.
2024-08-08 08:19:53 +03:00
Chocobo1
2d9e3b3330 WebUI: use native functions for event handling
PR #21147.
2024-08-07 22:00:54 +08:00
Harald Nordgren
989b1d176d Enable adaptive step size for upload and download limits
PR #21138.
2024-08-07 21:51:06 +08:00
skomerko
142780b863 WebUI: Highlight torrent category in context menu
This PR makes it possible to see common category of selected torrents in context menu. Everything should behave exactly like in GUI.

Closes #12701.
PR #21136.
2024-08-07 21:40:21 +08:00
Chocobo1
7b2886e477 Revise label text
PR #21118.
2024-08-05 21:01:49 +08:00
Thomas Piccirello
66c1acbce2 Don't reannounce when removing tracker via WebAPI
Discussion: https://github.com/qbittorrent/qBittorrent/pull/21056#discussion_r1674632942

PR #21077.
2024-08-04 17:21:15 +08:00
Chocobo1
49507ad670 Merge pull request #21123 from skomerko/webui-use-alternating-row-colors
WebUI: Add ability to toggle alternating row colors in tables
2024-08-04 17:16:01 +08:00
Chocobo1
d74f49111b WebUI: fix accessing wrong variable
Fix up 7131d1bd6b.
PR #21129.
2024-07-30 20:25:19 +08:00
Carmelo Scandaliato
642a9c29eb WebUI: remove deleted torrents even if they are currently filtered out
Remove the torrent row regardless of it being visible.

I've also removed the return value because:
* it doesn't appear to be used by any caller;
* other functions (e.g. updateRowData) do not return any value;
* it's not clear whether true refers to the torrent being removed from the list of all torrents or just the visible ones.

Closes #21070.
PR #21071.
2024-07-29 16:20:21 +08:00
Chocobo1
9d494e84bf Merge pull request #21117 from Chocobo1/webui_interval
WebUI: timer related clean ups
2024-07-29 15:06:48 +08:00
skomerko
aed103d06e WebUI: Improve visibility of unread RSS articles 2024-07-28 11:35:01 +02:00
skomerko
b67495464d WebUI: Add ability to toggle alternating row colors in tables 2024-07-28 11:34:52 +02:00
Chocobo1
bf7e1516d5 WebUI: clear timer variable properly
In JS the timer handle pool is reused and therefore require careful handling of it.
2024-07-26 05:08:40 +08:00
Chocobo1
7131d1bd6b WebUI: listen to resize events properly
The workaround is not needed now.
Also added a debouncer to avoid too many transient resizing events.
2024-07-26 03:19:58 +08:00
Chocobo1
062904c2bd WebUI: avoid excessive checking 2024-07-25 14:20:57 +08:00
Chocobo1
6b52a04ff1 WebUI: avoid queuing up requests
`setInterval()` will always fire a new timeout regardless previous `updateRssFeedList()` has
completed or not. This patch will now wait for previous request to complete before another
timeout.
2024-07-25 14:20:57 +08:00
Chocobo1
69a829dfb0 Clean up search engine
Notable changes:
1. Prevent excessive engine module imports.
2. Replace trivial usage of `join()`.
3. Keep the output text sorted whenever possible.
4. Close handles properly.
5. Print error to stderr, not stdout.
6. Report search job exit code.
7. Print exception message to stderr if exception was thrown when
   running a search job.
8. Utilize XML library to build XML data
   And use 2 spaces as indentation.

PR #21098.
2024-07-22 16:51:57 +08:00
Chocobo1
3c5baac150 Merge pull request #21097 from Chocobo1/webui_a11y
WebUI: Improve accessibility
2024-07-22 16:44:52 +08:00
Chocobo1
8e9680bf69 WebUI: simplify code 2024-07-19 17:47:34 +08:00
Chocobo1
b75c42f850 WebUI: associate label to input fields 2024-07-19 17:47:34 +08:00
Vladimir Golovnev
3b38d0de7f Represent by TorrentInfo only info-section related metadata
PR #21084.
2024-07-19 06:25:41 +03:00
Chocobo1
8b7fdf0f22 Bump Python version minimum requirement
The new minimum version is Python 3.9.

Debian Buster (oldoldstable) support ends at [2024.06.30](https://www.debian.org/releases/buster/).
Ubuntu Focal (20.04LTS) support ends at [2025.04](https://ubuntu.com/about/release-cycle).
By the time qbt v5.1 is released, Buster and Focal would have become EOL.

https://packages.debian.org/search?keywords=python3
https://packages.ubuntu.com/search?keywords=python3

PR #21064.
2024-07-17 12:13:58 +08:00
Chocobo1
83d730ffda Merge pull request #21074 from Chocobo1/webui_html5
WebUI improvements
2024-07-17 12:06:08 +08:00
Hanabishi
3acd5409a6 WebUI: Fix Torrent Management Mode selector
PR #21053.
2024-07-15 18:33:51 +08:00
Chocobo1
a61df019b3 WebUI: provide legend text
It provides semantic meanings for the option group.
2024-07-15 18:27:53 +08:00
Chocobo1
7df98e1c9a WebUI: specify scope of table header
This may help screen readers.
2024-07-15 18:26:59 +08:00
Chocobo1
c3b7dfa918 WebUI: omit closing on HTML void elements
https://developer.mozilla.org/en-US/docs/Glossary/Void_element#self-closing_tags :
>Self-closing tags (<tag />) do not exist in HTML.
2024-07-15 17:46:33 +08:00
Chocobo1
0fd24358ce WebUI: check buttons to have valid text (or assistive text)
It helps people using assistive technology.
https://stackoverflow.com/a/22040485
2024-07-15 17:25:27 +08:00
Chocobo1
7e8e6269d0 WebUI: drop unused lint rule 2024-07-15 17:12:20 +08:00
Chocobo1
25dd6c72f7 WebUI: use the correct property for accessing text
In these instances we don't need the rendered result. So use the most efficient
property to access it: `.textContent`.
2024-07-15 17:09:16 +08:00
Chocobo1
adde3c3f65 WebUI: check headings to have textual content 2024-07-15 17:03:21 +08:00
Chocobo1
7119de9b8d WebUI: provide semantic information of table body
From https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#usage_notes :
>Specifying such table content groups also provides valuable contextual
>information for assistive technologies
2024-07-15 16:59:05 +08:00
David Newhall
3999b9a4f9 add root_path to torrent/info api output (#21066)
WebAPI: Add root_path to torrent/info result

PR #21066.
Closes #21057.
2024-07-15 08:44:26 +03:00
Vladimir Golovnev
7f4cb43a33 Fix incorrect sorting by "private" column
PR #21041.
2024-07-15 08:42:02 +03:00
Chocobo1
9feefc8144 WebUI: avoid redundant re-initialization
PR #21012.
2024-07-12 15:00:36 +08:00
Chocobo1
9c26e5d4d6 WebUI: access attribute/property natively
It is now clearer to see what property is being accessed.
Previously mootools library would re-map attribute/property to another.

PR #21007.
2024-07-12 14:06:59 +08:00
Vladimir Golovnev
815ab180c1 Prevent incorrect size from being used for creating array
PR #21050.
2024-07-12 08:49:45 +03:00
Vladimir Golovnev
eba5cbb803 WebUI: Correctly apply changed "save path" of RSS rules
PR #21030.
Closes #20141.
2024-07-08 10:08:28 +03:00
ManiMatter
87a202c71e 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-07 19:09:57 +03:00
Vladimir Golovnev
a4f63a5c30 Show scroll bar in Torrent Tags dialog
PR #21026.
Closes #21022.
2024-07-07 08:25:31 +03:00
Vladimir Golovnev
ccdf178ee7 Fix handling of tags containing '&' character
PR #21024.
Closes #20773.
2024-07-07 08:24:30 +03:00
Hanabishi
b52fa98a02 WebUI: Implement double-click behavior controls
PR #21000.
2024-07-05 14:34:05 +08:00
Paweł Kotiuk
d87533bf4c WebUI: Implement path autocompletion
PR #20906.
2024-07-05 14:24:02 +08:00
Vladimir Golovnev
5ef2a1df07 Use QList explicitly
PR #21016.
2024-07-04 08:30:39 +03:00
Vladimir Golovnev
d2fceaa228 Apply bulk changes to correct content widget items
PR #21006.
Closes #21001.
2024-06-29 21:57:59 +03:00
Vladimir Golovnev
4e27e88f6a Allow to move content files to Trash instead of deleting them
PR #20252.
2024-06-29 08:21:35 +03:00
Thomas Piccirello
c5fa05299b WebUI: Fix preference name conflict
PR #20990.
2024-06-28 16:46:21 +08:00
Vladimir Golovnev
0cbe4882c3 Use custom storage when reloading torrent
PR #20998.
2024-06-28 07:14:19 +03:00
Chocobo1
610d5ef5ff GHA CI: use static versions of AppImage builder
It does not affect the produced artifacts. The only difference is the
tool itself won't depend on some specific OS image or library version.

PR #20983.
2024-06-25 13:11:32 +08:00
Thomas Piccirello
9d87a813b2 Use enabled search plugins by default in WebUI
PR #20969.
Closes #20558.
2024-06-24 20:45:14 +03:00
Chocobo1
5740238933 Use proper casting
Previously `m_shutdownTimeout * 1000` was calculated in `int` and now it
is `qint64`.

PR #20982.
2024-06-24 15:02:48 +08:00
Chocobo1
ea918da931 Allow numeric types
The canonical type for `size_string` is `str`. However numeric types are also accepted in order
to accommodate poorly written plugins.

PR #20976.
2024-06-23 12:43:35 +08:00
vikas_c
9317c25ecb 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-20 08:08:55 +03:00
Chocobo1
7a2bfae5e4 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-20 12:13:27 +08: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
Chocobo1
d71086e400 Add type annotations
A few code are revised because the type checker (mypy) doesn't allow
changing types on a variable.

PR #20935.
2024-06-17 13:18:32 +08:00
Chocobo1
2000be12ba Merge pull request #20928 from Chocobo1/webui_curly
WebUI: unify coding style
2024-06-17 13:09:18 +08:00
ManiMatter
914728d9a1 WebAPI: Add "private" filter for 'info' endpoint
PR #20833.

---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-06-16 10:57:12 +03:00
Vladimir Golovnev
c36100fa85 Don't use custom "file icon provider" on Windows
PR #20936.
Closes #20908.
2024-06-14 22:39:42 +03:00
Chocobo1
1c49e0973c 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-12 15:20:37 +08:00
Vladimir Golovnev
65d143d4c4 Apply share limits when torrent downloading is finished
PR #20917.
Closes #20874.
2024-06-12 09:03:07 +03:00
Vladimir Golovnev
d89f289f82 Apply filename filter to subfolder names as well
PR #20902.
Closes #14480.
2024-06-12 09:02:10 +03:00
Chocobo1
648dd9988d WebUI: unify comment format 2024-06-11 02:17:10 +08:00
BurningMop
dd34c85884 Add optional headers to search request
PR #20923.
2024-06-09 14:03:39 +08:00
Chocobo1
1903ddada1 Add required manifest field
https://learn.microsoft.com/en-us/windows/win32/sbscs/application-manifests#assemblyidentity

PR #20907.
2024-06-09 14:02:53 +08:00
Chocobo1
bf4e0df386 WebUI: unify curly bracket usage 2024-06-07 02:51:35 +08:00
dependabot[bot]
b9a1bbbb8a GHA CI: Bump Github Actions versions
PR #20913.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-06-04 14:15:44 +08:00
Chocobo1
41d8f473b7 Avoid redundant lookup
PR #20890.
2024-05-30 19:35:58 +08:00
Chocobo1
4155d4660f Merge pull request #20888 from Chocobo1/cookie
Simplify HTTP cookie code
2024-05-30 19:35:40 +08:00
thalieht
455a04b68e Increase default height of 'Share ratio limit' dialog in WebUI
PR #20866.
2024-05-29 12:30:28 +08:00
Chocobo1
4c57318e89 Avoid creating redundant temporary file list
PR #20863.
2024-05-29 12:29:48 +08:00
Chocobo1
d52995015e Merge pull request #20828 from Chocobo1/js_quotes
WebUI: enforce coding styles
2024-05-29 01:39:13 +08:00
Chocobo1
b1b6685663 Use Qt built-in methods 2024-05-27 23:52:39 +08:00
Chocobo1
534615373e Use simpler conversion
The cookie value can only contain ASCII characters.
2024-05-27 23:40:40 +08:00
Chocobo1
1ba69be869 WebUI: add missing break 2024-05-27 23:02:19 +08:00
Chocobo1
c54750469e WebUI: don't auto infer radix parameter 2024-05-27 23:00:51 +08:00
Chocobo1
3ebd15d408 WebUI: simplify code 2024-05-27 23:00:30 +08:00
Chocobo1
64dfb7e122 WebUI: iterate over own properties only 2024-05-27 23:00:03 +08:00
Chocobo1
b07afa3ea9 WebUI: use assignment operator shorthand 2024-05-27 22:58:47 +08:00
Chocobo1
24a1537cdd WebUI: prefer arrow function in callbacks 2024-05-27 22:57:28 +08:00
Chocobo1
55bff4f07a WebUI: enforce usage of const whenever possible 2024-05-27 22:56:51 +08:00
Chocobo1
cb90b6769c WebUI: enforce string quotes coding style 2024-05-27 22:50:17 +08:00
Thomas Piccirello
6d073771ca WebUI: Restore previously used tab on load
This PR restores the users previously used tab (Transfer, Search, RSS, etc.) when the WebUI is reloaded.

PR #20705.
2024-05-27 20:51:02 +08:00
Chocobo1
a126a7b493 Adjust user agent version automatically
The version calculation is an estimation and it will drift off after some time. Hopefully the
drift offset won't be noticeable within a few years.

Also switched the user agent to Windows 10 which has the largest portion of users to avoid
standing out from the crowd.

PR #20864.
2024-05-20 13:50:18 +08: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
e09a871ca3 Revamp alerts handling
PR #20854.
2024-05-18 10:36:08 +03:00
Chocobo1
04154ebb76 GHA CI: don't use hardcoded path
PR #20763.
2024-05-17 01:44:43 +08: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
Hanabishi
2c47f09d7a Sanitize peer client names
PR #20788.
Closes #20010.
2024-05-11 18:46:11 +03:00
Chocobo1
a19ef58400 Merge pull request #20800 from Chocobo1/eslint_v9
WebUI: migrate to ESLint v9
2024-05-11 13:56:08 +08:00
cayenne17
21a4ab6bac Update User-Agent
PR #20801.
2024-05-10 21:47:55 +03:00
Vladimir Golovnev
2b728b3bc0 Add an option to set BitTorrent session shutdown timeout
PR #20797.
2024-05-07 13:15:39 +03:00
Chocobo1
6231208ddf WebUI: add linting for regular expressions
And applies to following suggestions:
* Use case-insensitive flag `i`
* Use `\w` for matching characters
* Sort the regex flags
2024-05-04 15:01:03 +08:00
Chocobo1
e2d6cd31b2 WebUI: migrate to ESLint v9 2024-05-04 14:59:45 +08:00
Chocobo1
79eb7b8e38 WebUI: migrate ESLint rules
https://eslint.style/guide/migration

PR #20727.
2024-05-03 21:03:08 +08:00
Vladimir Golovnev
8ef7d3ec9a Add ability to pause/resume entire BitTorrent session
PR #20757.
Closes #18993.
2024-05-03 09:02:50 +03:00
ManiMatter
05416458db WebAPI: Provide "isPrivate" flag via "torrents/info" endpoint
PR #20686.
2024-05-02 13:04:03 +03:00
Vladislav Grechannik
cd3982cf3c Include missing header
PR #20776.
Closes #20774.
2024-05-01 12:37:22 +03:00
Paweł Kotiuk
a1af077889 Add API for listing directory content
PR #20314.
2024-04-29 21:13:32 +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
775b38079f Avoid repetitive function calls
PR #20764.
2024-04-29 13:05:05 +08:00
Chocobo1
d65d8558d6 Merge pull request #20728 from Chocobo1/webui_state
WebUI: clean up code
2024-04-29 12:58:14 +08:00
Chocobo1
b1175b60e1 Use proper comparison for None
PR #20762.
2024-04-29 12:47:27 +08:00
luzpaz
d3315f7cc7 WebUI: Fix inconsistent naming between (Done/Progress) column
Closes #20602.
PR #20700.
2024-04-27 14:43:47 +08:00
Chocobo1
321d7e5b17 Adjust tracker tier when adding additional trackers
Closes #20102.
PR #20729.
2024-04-25 12:18:30 +08:00
milahu
4ac586c896 Lazy load search plugins
PR #20553.
2024-04-24 22:15:22 +03:00
Vladimir Golovnev
ca71c186e0 Don't forget to resume "missing files" torrent when rechecking
PR #20747.
2024-04-24 09:15:19 +03:00
xavier2k6
ddb0ff29e2 GHA CI: Use Qt 6.7.0 on Windows and macOS
PR #20431.
2024-04-22 15:21:16 +03:00
xavier2k6
6c57fad0cd GHA CI: Bump Boost version to 1.85.0
PR #20723.
2024-04-22 13:39:58 +08:00
Chocobo1
1c7ecb7371 WebUI: migrate away from MooTools deprecated functions
https://mootools.net/core/docs/1.6.0/Core/Core#Deprecated-Functions
2024-04-21 16:55:30 +08:00
Chocobo1
4945ed576a WebUI: enforce strict comparison operators 2024-04-21 16:44:15 +08:00
xavier2k6
c6f4e95b7d Raise minimum libtorrent 2 version to 2.0.10
PR #20447.
2024-04-21 09:52:51 +03: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
Chocobo1
75e2ae2fa0 WebUI: clean up code
Use proper function for finding match.
Use strict comparison operators.
2024-04-19 16:13:27 +08: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
Chocobo1
d7cded54e4 WebUI: enforce parentheses around operators
PR #20696.
2024-04-15 12:50:07 +08:00
Chocobo1
6c82d5e305 WebUI: fix wrong peer number
PR #20695.
2024-04-15 12:42:47 +08:00
Chocobo1
c036313adf Update screenshot URL in appstream metadata
Those URL are pointing to our git repo:
723c0df824/src/img/screenshots/linux

PR #20694.
2024-04-15 12:17:40 +08:00
Thomas Piccirello
29f0adf215 WebUI: Restore search tabs on load
This PR restores searches previously performed in the same browser (via local storage).

PR #20637.
2024-04-15 12:07:15 +08:00
Thomas Piccirello
e697d40382 WebUI: Improve table scrolling and selection on mobile
This PR improves touch interaction with table rows that have a context menu. Previously, those rows couldn't be selected or scrolled on mobile. Additionally, this PR modifies the context menu to appear when the user removes their finger/touch, rather than the current behavior of appearing mid-touch. This allows us to only display the context menu if the user's finger remains on the same element, which should significantly reduce erroneous context menu triggering.

Closes #19819.
Closes #19820,
Closes #19823.
PR #20639.
2024-04-09 14:33:10 +08:00
Chocobo1
01cc4ea90b GHA CI: revise packaging failure detection
Fix up 1d221c22e4.
PR #20664.
2024-04-09 14:22:05 +08:00
Chocobo1
d407e954d1 GHA CI: lock to ESLint v8
For unknown reasons, ESLint v9 doesn't work correctly. Migration to ESLint v9 will be done
later when it is stable enough.

PR #20665.
2024-04-09 14:12:30 +08: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
Chocobo1
92ce507151 WebUI: Allow to specify login page language via query parameter
There were a few reports that the user has messed up their browser's language and this PR gives an escape hatch in case the user is unable to configure the browser's language for various reasons.
Example for choosing French: http://127.0.0.1:8080/?lang=fr

PR #20591.
2024-04-06 15:13:58 +08:00
Vladimir Golovnev
67dfce7437 WebAPI: return correct value for queued uploading state
PR #20651.
Closes #20648.
2024-04-04 08:41:25 +03:00
dependabot[bot]
e4aad461c7 GHA CI: Bump Github Actions versions
PR #20652.

---

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-03 13:00:50 +08:00
Aliaksei Urbanski
f37d0c486c Add the Popularity metric
PR #20180.
2024-04-01 21:23:08 +03:00
Thomas Piccirello
8e6515be2c WebUI: Fix error when category doesn't exist
This prevents hitting a TypeError when the category stored in localstorage does not exist. The behavior for a nonexistent category now mirrors that of a nonexistent tag or filter - no option is selected and no torrents are shown.

Closes #20623.
PR #20638.
2024-04-01 20:15:30 +08:00
Chocobo1
1d221c22e4 GHA CI: retry action on failure
PR #20641.
2024-04-01 19:59:26 +08:00
Chocobo1
2fe91a6c8f GHA CI: only store cache for master branch
Also set a lower cache limit for macOS to prevent cache thrashing. Previously the default was 5G.

PR #20640.
2024-04-01 19:36:45 +08:00
Chocobo1
90383567b2 Revise Tracker related classes
And also rename them.

PR #20489.
2024-04-01 19:17:35 +08:00
Thomas Piccirello
4967f977c5 WebUI: Improve accuracy of trackers list
This PR fixes various accounting issues with the trackers list. Removing a torrent would not update the trackers list, nor would removing a tracker from a torrent. And removing a tracker with a shared host but unique url (e.g. example.com/1 and example.com/2) would erroneously remove the tracker's host from the list.

Closes #20053.
Closes #20054.
PR  #20601.
2024-03-29 15:43:49 +08:00
Thomas Piccirello
eb9e98a4b3 WebUI: Add support for running concurrent searches
This PR adds support for running multiple concurrent searches in the Web UI. This is already supported in the GUI as well as by the Web API. Behavior mimics the GUI as closely as possible.

All filters and sorting are preserved per-tab, allowing you to apply unique filters and sorts to each of your searches. Row selection is also preserved across tab navigation.

Closes #12840.
PR #20593.
2024-03-29 15:05:43 +08:00
Vladimir Golovnev
f5cac13979 Prevent app from being closed when disabling system tray icon
PR #20627.
Closes #20604.
2024-03-29 09:38:54 +03:00
Chocobo1
f20467889d Improve AppStream metadata
PR #20606.
2024-03-26 22:06:57 +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
Thomas Piccirello
489bacd766 WebUI: Conditionally show filters sidebar
This fixes a bug where the filters sidebar would always be displayed when switching back to the Transfers tab.

Closes #19257.
PR #20600.
2024-03-26 12:41:47 +08: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
Chocobo1
f2d6129db3 Merge pull request #20590 from Chocobo1/py
GHA CI: check python scripts
2024-03-25 13:42:09 +08:00
HamletDuFromage
5c67c5a77d Add regex toggle for WebUI torrent filtering
PR #20566.
2024-03-24 13:44:57 +08:00
Vladimir Golovnev
ce013f132f Refresh custom colors once color scheme is changed
PR #20588.
2024-03-23 11:32:07 +03:00
Chocobo1
abcf1e076e Remove unused script 2024-03-23 13:55:58 +08:00
Chocobo1
47c38e8d91 Apply formatting 2024-03-23 13:55:58 +08:00
Chocobo1
34d19e5714 GHA CI: check python scripts 2024-03-23 13:54:57 +08: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
sledgehammer999
a5681f72bc Bump to v5.0.0beta1 2024-03-19 02:44:55 +02:00
sledgehammer999
9e569f1a70 Update Changelog 2024-03-19 02:23:13 +02:00
foxi69
9d3c314ac0 NSIS: Update Hungarian translation
PR #20565
2024-03-19 01:56:05 +02:00
Chocobo1
931de85ab5 Merge pull request #20520 from Chocobo1/i18n
Use client side translation for public login page
2024-03-18 13:23:44 +08:00
sledgehammer999
6a82cb1af6 Update WebUI translations from old format 2024-03-16 01:20:11 +08:00
sledgehammer999
f8ae8f419d Add helper scripts to manage WebUI translations 2024-03-16 01:20:11 +08:00
Chocobo1
ac91c1348b Use client side translation for public login page
The translation strings are meant to be synced from Transifex.
2024-03-16 01:20:11 +08:00
MarcDrieu
d7aaf80744 Update french.nsh (#20545)
Updated a couple of strings with more accurate wording.

PR #20545
2024-03-14 22:46:51 +02: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
773cb1e55d Ensure the profile path is pointing to a directory
Closes #20513.
PR #20519.
2024-03-11 13:02:51 +08: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
Loris Laera
f65af03c67 NSIS: Add Luxembourgish translation
PR #19943
---------

Co-authored-by: sledgehammer999 <hammered999@gmail.com>
2024-03-04 09:04:48 +02:00
sledgehammer999
a567f8b600 Update gitignore for vscode (#20494)
PR #20494
2024-03-03 13:51:06 +02:00
Chocobo1
71f1e6df59 GHA CI: disable security hardening flag
OpenSSL isn't compatible with `/guard:cf` flag so we omit it for now.
Related: https://github.com/openssl/openssl/issues/22554

Closes #20479.
PR #20487.
2024-03-03 13:49:07 +08:00
dependabot[bot]
896f5fe729 GHA CI: Bump action version
PR #20486.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-03 13:33:07 +08:00
sledgehammer999
8a1bc8e5fd Bump copyright year 2024-03-03 06:02:40 +02:00
sledgehammer999
6964132475 Sync translations from Transifex and run lupdate 2024-03-03 05:53:09 +02:00
JayRet
f265eb0166 Improve WebUI login behavior
Closes #20441.
PR #20442.
---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-03-02 14:47:02 +08: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
364bcf73ee Write format result directly to file
And not print to stdout.
2024-02-25 20:17:56 +08:00
Chocobo1
031fa6183c Add viewport meta tag
This helps displaying WebUI on mobile devices. Note that WebUI aren't
optimized for mobile yet.
2024-02-25 20:17:56 +08:00
Chocobo1
66c34ddb6e Avoid leaking user locale preference to the web 2024-02-25 20:17:56 +08:00
Chocobo1
3f2b4afc21 Add description meta tag 2024-02-25 20:17:56 +08:00
Chocobo1
e1fa7e01c6 Remove unneeded polyfill
All browsers already have native support for it.
2024-02-25 20:17:56 +08:00
Chocobo1
9192c988ed Warp script in anonymous scope (IIFE)
It was erroneously removed in 9b64d50660.
2024-02-25 20:17:56 +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
xavier2k6
c6ee0ff017 GHA CI: Bump libtorrent 2 version to 2.0.10
PR #20455.
2024-02-25 19:30:20 +08:00
sledgehammer999
dc501c39be Merge pull request #20444 from sledgehammer999/sync_changelog
Consolidate all the Changelog entries into master
2024-02-24 13:31:32 +02:00
Vladimir Golovnev
7786e1b084 Improve received metadata handling
Avoid blocking call to libtorrent when accessing underlying torrent_info object.

PR #20424.
2024-02-21 17:25:54 +03:00
sledgehammer999
80dea08328 Consolidate all the Changelog entries into master 2024-02-18 20:26:10 +02:00
Chocobo1
bb8a012b1c Revise cache internals
Now cache initialization and `get()` is less costly to use and it shifts the weight to `set()`.

PR #20430.
2024-02-18 14:16:00 +08:00
Chocobo1
63c9b6388e Rename to WebUI
PR #20428.
2024-02-18 13:58:44 +08:00
Chocobo1
3d24a4e0f7 Specify standards conformance mode to MSVC
https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170

PR #20427.
2024-02-18 13:03:00 +08:00
Vladimir Golovnev
f04edd555f Open "lock" files for the same folder only once
PR #20414.
Closes #12203.
2024-02-15 08:42:44 +03:00
Chocobo1
e31b553807 Stop sync requests after qbt has been shutdown 2024-02-14 03:38:09 +08:00
Chocobo1
a9741bb203 Defer loading of js code on landing pages
So that DOM tree can be processed earlier.
2024-02-14 03:38:09 +08:00
Chocobo1
67e0a2de44 Combine script tags 2024-02-14 03:38:09 +08:00
Chocobo1
1afb3ff433 Add support for dark theme 2024-02-14 03:38:09 +08:00
Chocobo1
16a91f26fb Simplify code 2024-02-14 03:38:09 +08:00
Chocobo1
963a7faab8 Migrate to Cache for commonly used data
Previously it was abusing the `localStorage` and now it is storing data in memory (per session).
2024-02-14 03:38:09 +08:00
Chocobo1
d06d5b923a Cache program preferences
So that qbt can just use the data from memory which is vastly faster than waiting for a response
over the net.
2024-02-14 03:38:09 +08:00
xavier2k6
6d68ab4dae GHA CI: Bump boost dependency and revise install method
PR #20371.
2024-02-14 03:36:47 +08:00
Vladimir Golovnev
60bb819e2e Allow WebAPI to specify filename and mime type for result data
PR #20377.
2024-02-12 09:07:09 +03:00
Chocobo1
8ef99b336c Remove 'no cache' directive for POST requests
The response for POST request is only cachable under a specific condition and
qbt doesn't use it.
https://developer.mozilla.org/en-US/docs/Glossary/Cacheable
2024-02-11 23:28:44 +08:00
Chocobo1
f7e9ff0fb0 Clean up functions in global scope 2024-02-11 23:28:44 +08:00
Chocobo1
9b64d50660 Conditionally hide settings in Advanced Options 2024-02-11 23:28:44 +08:00
Chocobo1
5fe5c333b5 Rename file 2024-02-11 23:28:44 +08:00
Chocobo1
49f819ef78 Use correct type for each option 2024-02-11 23:28:44 +08:00
Vladimir Golovnev
2755190d8e Link PowrProf library to qBittorrent base
PR #20387.
2024-02-10 11:59:14 +03:00
Chocobo1
f87ea1b5d3 Sort languages combobox by language code
* Avoid creating redundant file lists
* Sort languages combobox by language code

PR #20365.
2024-02-05 13:44:18 +08:00
Vladimir Golovnev
88a4990435 Don't use iterator after erase
PR #20357.
Closes #20356.
2024-02-03 08:10:14 +03:00
Chocobo1
9bfb447dd3 Improve WebUI responsiveness
This migrates Category and Tag to `Map` type from `Object` type. And done some algorithm and data structure optimization.

PR #20297.
2024-01-27 22:04:39 +08: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
jNullj
df41940ebc Fix typo in preferences.html
PR #20326.
2024-01-26 10:58:57 +03:00
Chocobo1
94e80d01a8 Clean up code
* Use compiler generated comparison function
* Use designated initializers
* Convert to proper type
* Use reference
* Remove redundant text
  The `msg` already contain the text `Reason:` so it isn't needed.

PR #20312.
2024-01-25 02:56:12 +08:00
Vladimir Golovnev
bab9c15913 Revamp handling of getting resume data from libtorrent
PR #20310.
2024-01-24 15:40:08 +03:00
Chocobo1
31d456c43b Set specific exit codes when NSIS installer failed in silent mode
* Set specific exit codes when NSIS installer failed in silent mode
  Related: https://github.com/qbittorrent/qBittorrent/issues/18115#issuecomment-1789404780
* GHA CI: treat NSIS warnings as errors

PR #20296.
2024-01-22 14:01:15 +08:00
jNullj
c5d7b62473 Delay subsequent requests to the same host
PR #19801.
Closes #8350.
2024-01-19 20:38:16 +03:00
Vladimir Golovnev
8ec3db1807 Change "metadata received" stop condition behavior
PR #20283.
Closes #20122.
2024-01-19 20:34:40 +03:00
Vladimir Golovnev
05572a7317 Add missing comparison case
Closes #20290.
2024-01-19 10:13:34 +03:00
Chocobo1
00372dd559 Use natural sorting in WebUI
Also change case sensitivity to the default of 'sort' mode.

PR #20264.
2024-01-15 13:12:36 +08:00
Chocobo1
6918316a3d Switch to new method for checking own properties
The new method is an intended replacement for previous one as suggested by MDN:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwn
2024-01-15 13:12:12 +08:00
Chocobo1
2edb1a0765 Improve WebUI responsiveness
Related: #20249.
2024-01-15 13:12:12 +08:00
sledgehammer999
582e4dcb59 Sync translations from Transifex and run lupdate 2024-01-15 00:28:06 +02:00
Vladimir Golovnev
14513d051d Don't stuck loading on mismatching info-hashes in resume data
PR #20262.
Closes #20251.
2024-01-13 18:08:16 +03:00
Vladimir Golovnev
97c0abcbf0 Improve Download Manager subsystem
PR #20257.
2024-01-13 08:55:40 +03:00
Chocobo1
ad22237a2f Provide safe helper for converting to 'seconds since epoch' 2024-01-08 15:13:02 +08:00
Chocobo1
8bdb83d973 Use initialization form for variable 2024-01-08 15:13:02 +08:00
Chocobo1
54bcabeca4 Leave the fields empty when value is invalid
This follows GUI behavior.
2024-01-08 15:13:02 +08:00
Chocobo1
114652205c Fix wrong time stamp values in WebAPI
The wrong values are observed when encountered an invalid QDateTime data.
2024-01-08 15:13:02 +08:00
Chocobo1
5b3b56c918 Improve natural sort algorithm
1. Use proper case folding function instead of `toLower()`.
2. Use locale aware comparison instead of comparing unicode code points.
   Now `a` comes before `A` which is the same as the result from QCollator. A nice side effect
   is now it properly compares locale specific characters (for example `C`, `Č`).
3. Improve testing. Now the test is runnable and stable on all platforms.

PR  #20208.
2024-01-08 14:47:00 +08:00
David
e69f857828 Allow to remember torrent content files deletion in WebUI
Add a 'remember choice' button to the WebUI Torrent Deletion dialog that sets the default file deletion setting. The setting is shared with GUI, so if you set it in WebUI and open the Qt app, the 'delete files' checkbox will match WebUI (checked or unchecked).

PR  #20150.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-01-08 14:39:51 +08:00
Vladimir Golovnev
0b6d785e87 Show URL seeds for torrents that have no metadata
PR #20233.
Closes #20198.
2024-01-06 15:51:19 +03:00
Vladimir Golovnev
f3d45327e1 Apply inactive seeding time limit set on new torrents
PR #20231.
Closes #20224.
2024-01-05 18:25:29 +03:00
Vladimir Golovnev
9bf7f3b181 Show correctly decoded filename in log
PR #20214.
Closes #20186.
2024-01-02 16:03:12 +03:00
Chocobo1
d5bf0358cb Revise conditional for when to use QCollator
According to https://doc.qt.io/qt-6/qcollator.html#posix-fallback-implementation
The 'POSIX fallback implementation' is only used when ICU is not available. So the correct way is to detect ICU directly and not depend on the OS. The exceptions are macOS and Windows since they support the required functionalities natively.
Closes #20205.
PR #20207.
2024-01-02 16:58:12 +08:00
Chocobo1
fc56fdade7 Specify a locale if none is set
Sometimes users had not properly configured their system locale and thus
qbt will specify a default locale just in case.

Closes #16127.
Closes #19609.
Closes #19834.
PR #20203.
2024-01-02 16:49:40 +08:00
dependabot[bot]
293a2efca7 GHA CI: Bump Github Actions versions
PR #20220.

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 16:23:09 +08:00
Chocobo1
8bd604f633 GHA CI: add fallback URL for boost library
Boost main download site jfrog is unavailable at the time of writing.
Related: https://github.com/boostorg/boost/issues/842
PR #20218.
2024-01-02 15:54:49 +08:00
Allan Laal
fcd16d56e2 Remove old build instructions from README.md
PR #20200.
2024-01-01 14:15:16 +03:00
Chocobo1
be5bf9a138 GHA CI: ditch unusable build step
lukka/run-vcpkg v11.3 has deliberately changed to avoid writing outside of `GITHUB_WORKSPACE`
directory and this conflict with our usage. So ditch it and invoke vcpkg directly.
https://github.com/lukka/run-vcpkg/releases/tag/v11.3

PR #20202.
2023-12-31 14:03:42 +08:00
thalieht
8dcc734df5 Enable Ctrl+F hotkey for more inputs
PR #20131.
2023-12-19 20:52:47 +03:00
Chocobo1
4057972b2d GHA CI: fix coverity build failure
PR #20129.
2023-12-19 00:30:36 +08:00
Chocobo1
073ca4267c Introduce helper function to join values as string
PR #20130.
2023-12-19 00:08:37 +08:00
d47081
9d90141c29 Add dark theme for WebUI
Closes #19844.
PR #19901.

---------

Co-authored-by: d47081 <localhost>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2023-12-12 12:23:40 +08:00
Chocobo1
cc563d9f78 Fix incorrect usage of translation functions
PR #20107.
2023-12-10 23:07:29 +08:00
Chocobo1
88ef8a51dd Move local functions into anonymous namespace
PR #20106.
2023-12-10 22:51:33 +08:00
Victor Chernyakin
0297f0f34b Allow relative profile paths
PR #19558.
2023-12-07 09:20:37 +03:00
Vladimir Golovnev
7a41192597 Add a class to represent a tag
PR #20028.
Closes #19744.
2023-12-05 17:01:09 +03:00
Chocobo1
65771d66fc Update Readme for WebUI
PR #20077.
2023-12-05 03:34:40 +08:00
Chocobo1
0dbac78e17 Revise legal notice
For GUI and non-daemon console, the legal notice won't ask for user acceptance anymore and only
provide an OK button (or Enter key in console) from now on.
For daemon mode, qbt will print the legal notice and continue to run. It will also notify user
to use command line option `--confirm-legal-notice` to suppress the message. The message will be
printed on every start up unless user specify the command line option once.

PR #20080.
2023-12-05 03:13:37 +08:00
Chocobo1
608efc77e8 GHA CI: put libtorrent into its own directory
Previously it was rooted within qbt project and it caused some issues when running
'update translations' command.
2023-12-05 02:39:24 +08:00
Chocobo1
9ecb3874d8 GHA CI: use parallel downloading
Also clean up other commands.
2023-12-05 02:39:24 +08:00
Vladimir Golovnev
4ba8eaf4b4 Don't forget to store Stop condition
PR #20045.
Closes #20043.
2023-11-30 08:58:41 +03:00
Vladimir Golovnev
bfd3ce2fca Don't forget to update filter items
PR #20030.
Closes #19905.
2023-11-29 07:05:46 +03:00
Chocobo1
86d5d13ce6 Migrate away from deprecated functions
Those functions are deprecated in mootools.
2023-11-27 13:29:54 +08:00
Chocobo1
8f230bc2e6 Remove unused icon provider singleton 2023-11-27 13:29:54 +08:00
Chocobo1
6d0ad62632 Remove Qt5 remnants
The env variable was added in 51cf05c1bd
And `QNetworkConfigurationManager` is deprecated in Qt5 and not available in Qt6.
https://doc.qt.io/qt-5.15/qnetworkconfigurationmanager.html
2023-11-27 13:29:54 +08:00
Chocobo1
c165131c3f Disable stdout buffering for qbt-nox
The messages printed out via stdout is usually important and short so
there is no reason to buffer them.

Closes #19984.
PR #20018.
2023-11-26 15:36:50 +08:00
brvphoenix
9fde5634f1 Fix JS memory leak
The memory leak can be reproduced easily by opening two web pages of qbittorrent so that the WebUI pages are updated with full_update = true. If you have a large number of torrents, such as 100 torrents, you can observe a rapid increase in memory usage.

This is caused by the incorrect usage of dispose and empty methods in the js codes and none of them garbage collect the elements. If event listeners are added to the DOM elements, those DOM elements will not be garbage collected at all event if they are not referenced or out of the scope, which will cause memory leaks. If some elements are expected to be removed, the correct way is to use destroy method instead.

https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-dispose-elementdispose
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-empty-elementempty
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-destroy-elementdestroy

Closes #19034.
PR #19969.
2023-11-25 13:50:45 +08:00
xavier2k6
19b88b7f4a NSIS: Display correct Minimum Windows OS requirement
PR #20001.
2023-11-24 11:43:18 +03:00
Vladimir Golovnev
60eaff9fcb Simplify share ratio limits processing code
PR #19971.
2023-11-21 22:14:27 +03:00
Vladimir Golovnev
c3adc90f7e Show Add new torrent dialog on main window screen
PR #19963.
Closes #19774.
2023-11-21 22:13:22 +03:00
Chocobo1
6f7f418ec1 Improve error message when daemonizing failed
PR #19959.
2023-11-21 14:05:32 +08:00
Chocobo1
137df132e8 GHA CI: link to C libraries dynamically
The C libraries is now updated by the OS and therefore  there is no
reason to bundle static versions which might be outdated later.
Also enable Control Flow Guard for 3rd party libraries.
2023-11-21 13:49:10 +08:00
Chocobo1
b2c51a5b9e GHA CI: use built-in ninja
`choco install` is slow: A basically simple download and extract operation takes 20sec compared to ~3sec
when done manually. So we add a conditional for it.
2023-11-21 13:49:10 +08:00
Chocobo1
e99a012bb4 GHA CI: only store compile cache on stable branches
Given the amount of PR and compile matrix, the CI cache size limit is
easy to hit. So for now on, only store compile cache for stable branches
to avoid cache thrashing.
2023-11-21 13:49:10 +08:00
Chocobo1
75feacb213 GHA CI: enable caching for Qt library 2023-11-21 13:49:10 +08:00
Vlad Zahorodnii
ce34245aaf Fix parent widget of "Lock qBittorrent" submenu
The parent widget of lockMenu is going to be used to derive the
transient parent window. Currently the parent widget of lockMenu is
the main window, therefore the main window is also going to be the
transient parent for lockMenu's window handle.

In other words, the "View" menu and "Lock qBittorrent" menu are
going to be considered as siblings by the window manager even though
the latter is nested inside the former.

On platforms like wayland, such popup hierarchies are illegal, popups
must be properly nested. qtwayland works around it, but it also prints
warning messages.

This change makes lockMenu a child of the view menu so they are
properly nested from the window manager point of view.

PR #19967.
Closes #19955.
2023-11-20 20:39:21 +03:00
Vladimir Golovnev
ef06be63bf Remove incorrect assertions
PR #19964.
2023-11-20 20:37:55 +03:00
Vladimir Golovnev
a1c78a0455 Follow the parent category options
PR #19957.
Closes #19941.
2023-11-20 20:37:17 +03:00
avivmu
32fbacf615 NSIS: Add Hebrew translation
PR #19929.
2023-11-20 12:07:26 +03:00
Vladimir Golovnev
75c638e2f8 Add timeouts to network requests
PR #19947.
2023-11-18 09:55:33 +03:00
Chocobo1
298e4ba852 Revert "Set symbol visibility to hidden"
This negatively affect stacktrace functionality.
This reverts commit 50680a3d9b.

PR #19942.
2023-11-15 21:25:45 +08:00
Chocobo1
50680a3d9b Set symbol visibility to hidden
This suppresses compiler warnings in GHA CI:
>ld: warning: direct access in function 'std::__1::__function::__func<libtorrent::storage_interface* (*)(libtorrent::storage_params const&, libtorrent::file_pool&), std::__1::allocator<libtorrent::storage_interface* (*)(libtorrent::storage_params const&, libtorrent::file_pool&)>, libtorrent::storage_interface* (libtorrent::storage_params const&, libtorrent::file_pool&)>::target(std::type_info const&) const' from file '/usr/local/lib/libtorrent-rasterbar.a(create_torrent.cpp.o)' to global weak symbol 'typeinfo name for libtorrent::storage_interface* (*)(libtorrent::storage_params const&, libtorrent::file_pool&)' from file 'src/base/libqbt_base.a(mocs_compilation.cpp.o)' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.

And also makes the binary a bit smaller.

https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/Code-Gen-Options.html#index-fvisibility

PR #19921.
2023-11-14 14:07:04 +08:00
sledgehammer999
20bfd392ff Sync translations from Transifex and run lupdate 2023-11-14 03:05:55 +02:00
Vladimir Golovnev
8cc8ffabb0 Improve Torrent files watcher internals
PR #19924.
2023-11-13 14:27:04 +03:00
Vladimir Golovnev
2a20764d39 Add option to enable ".unwanted" folder
PR #19926.
2023-11-13 14:25:27 +03:00
Chocobo1
9d6d3a30eb Improve performance of getting torrent numbers via WebAPI
PR #19919.
2023-11-12 17:12:02 +08:00
Chocobo1
b67da4bebe Use natural sort for categories
PR #19920.
2023-11-12 17:11:39 +08:00
sledgehammer999
8e39ac7efd Merge pull request #19918 from sledgehammer999/webui_opt
WebUI: Minor optimizations to the login page
2023-11-11 16:00:26 +02:00
Vladimir Golovnev
fb497f3410 WebUI: Correctly set save path in RSS rules
PR #19916.
Closes #19915.
2023-11-11 16:04:13 +03:00
sledgehammer999
5d1d3fcf57 WebUI: Minor optimizations to the login page 2023-11-10 16:22:52 +02:00
Vladimir Golovnev
0f40fad74d Drop WebUI default credentials
PR #19777.
2023-11-10 07:18:42 +03:00
vik
28b5d7230c WebUI: Remove extra ')' in QBT_TR macro
PR #19894.
2023-11-08 08:32:25 +03:00
Vladimir Golovnev
c88bd7cb3f Improve free disk space checking for WebAPI
Use single free disk space checker instance for all the web sessions.

PR #19855.
Closes #19732.
2023-11-07 12:44:27 +03:00
thalieht
30d9978c97 Add copy comment functionality to the torrent list's context menu
PR #19846.
Closes #18890.
2023-11-07 12:42:31 +03:00
xavier2k6
f067ab1692 WebUI: Add "Moving" filter to side panel
PR #19870.
2023-11-06 16:23:59 +03:00
Chocobo1
bcfa251290 GHA CI: speed up boost installation
Here is some benchmark for various archive formats:
```
gz
  0m11.384s
  0m11.495s
  0m11.193s

zip
  0m14.159s
  0m14.416s
  0m13.917s

7z
  0m17.569s
  0m17.295s
  0m18.496s

bz2
  0m31.519s
  0m28.885s
  0m29.510s
```

Looking by compressed size, bz2 is the best. However its decompressing
speed is the slowest. bz2 and gz file size only differs by ~20MB
and this difference is neglectable given the network speed on
Github. So switch to gz format to speed up CI build time.

PR #19867.
2023-11-06 14:10:51 +08:00
Chocobo1
f49507cb58 Exclude identical strings
This gives slightly smaller final binary.

https://doc.qt.io/qt-6/linguist-lrelease.html#lrelease-options
>If the translated text is the same as the source text, exclude the
>message.
2023-11-06 14:10:27 +08:00
Chocobo1
606c23d1a4 Use highest compression algorithm & level
https://doc.qt.io/qt-6/resources.html#compression
2023-11-06 14:10:27 +08:00
Chocobo1
7c0e3baf5f Drop support for 32-bit Windows
PR #19865.
2023-11-06 14:10:01 +08:00
Chocobo1
6cfbc02d8f Expose Mark-of-the-Web setting in Options 2023-11-06 14:09:34 +08:00
Chocobo1
794cce38f3 Move some functions into Utils::OS namespace
Also remove `Utils::Misc::getUserIDString()` since there are no use of
it.
2023-11-06 14:09:34 +08:00
sledgehammer999
f20f009b78 Sync translations from Transifex and run lupdate 2023-11-05 21:57:07 +02:00
Vladimir Golovnev
e216a9cf53 Keep unwanted files in separate folder
PR #19842.
Closes #13531.
2023-11-05 11:00:06 +03:00
dependabot[bot]
7f57324655 GHA CI: Bump github actions versions
PR #19784 

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2023-11-05 13:31:06 +08:00
xavier2k6
0186f44bf4 Use appropriate icon for "moving" torrents in transfer list
PR #19821.
2023-11-04 12:09:47 +03:00
MartinKing01
6b53c57157 Fixed typo in the installer's hungarian translation
PR #19830.
2023-11-03 10:30:50 +03:00
Bartu Özen
5db2c2c2be WebUI: Fix incorrect subcategory sorting
PR #19833.
Closes #19756.
2023-11-02 11:35:42 +03:00
Vladimir Golovnev
cecbb44a03 Allow to request torrents count via WebAPI
PR #19831.
Closes #19731.
2023-11-02 11:12:32 +03:00
Vladimir Golovnev
4a20a1660e Correctly handle changing save path of torrent w/o metadata
PR #19829.
Closes #19824.
2023-11-01 09:22:32 +03:00
Vladimir Golovnev
eddfaedc4d Update size of selected files when selection is changed
PR #19827.
Closes #19818.
2023-11-01 09:21:39 +03:00
Vitaly Cheptsov
e42d3f38cc Fix .torrent file upload on iPadOS
Mobile Safari on iOS does report `ios` platform, but iPadOS reports `mac`
instead. It is common sense to check for touch points when this happens
to differentiate Mac and iPad.

PR #19822.
Closes #19057.

---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2023-11-01 09:19:52 +03:00
Vladimir Golovnev
e7f38ec6ce Don't forget to delete TorrentContentAdaptor instance
PR #19825.
Closes #19816.
2023-10-31 10:20:23 +03:00
iomezk
a689ccf798 Add missing main window icon
PR #19815.

---
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2023-10-31 10:18:35 +03:00
Chocobo1
7bd8f262db Disable "limit virtual memory" routine on macOS
This has no effect on macOS.
https://stackoverflow.com/questions/3274385/how-to-limit-memory-of-a-os-x-program-ulimit-v-neither-m-are-working

Closes #18656.
PR  #19805.
2023-10-29 17:41:38 +08:00
Chocobo1
98576dacae Add support for quarantine on macOS 2023-10-29 17:41:08 +08:00
Chocobo1
b4642ca9d3 Use proper fallback value for Mark-of-the-Web URL
References:
https://chromium.googlesource.com/chromium/src.git/+/refs/heads/main/components/services/quarantine/quarantine_win.cc#211
https://hg.mozilla.org/mozilla-central/file/bd568ad893882d37f094d43cba3f62c78982cd05/toolkit/components/downloads/DownloadIntegration.sys.mjs#l537
2023-10-29 17:41:08 +08:00
Chocobo1
9b924c1931 Drop support for Windows < 10 2023-10-29 17:40:02 +08:00
Chocobo1
de2ba53f08 GHA CI: don't override cmake default CXXFLAGS 2023-10-29 17:40:02 +08:00
Chocobo1
031be41491 Bump Windows macro versions 2023-10-29 17:40:02 +08:00
Chocobo1
c671b7059e Drop unsupported keys 2023-10-29 17:40:02 +08:00
Chocobo1
347124812e Migrate away from deprecated functions 2023-10-29 17:40:02 +08:00
AgentConDier
bf95eb50da WebUI: Fix duplicate scrollbar on Transfer List
The overlay scrollbars introduced in Firefox 100 take up no space,
breaking the existing overflow detection.
Add an extra check for `scrollHeight != clientHeight` which is able to
detect an overflow independent of scrollbar style.

PR #19779.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2023-10-29 17:39:30 +08:00
Vladimir Golovnev
ee9390fecd Fix Enter key behavior when add new torrent
PR #19787.
Closes #19760.
2023-10-28 10:42:37 +03:00
Vladimir Golovnev
12674d2990 Prevent crash due to race condition when adding magnet link
PR #19792.
2023-10-28 10:41:53 +03:00
Hanabishi
35e4b35d12 Make WebUI error non-fatal
* Do not exit the app when WebUI is failed for start.
* Print the error to stdout.

PR #19697.
Closes #19695.
Closes #19469.
2023-10-24 13:32:21 +03:00
Vladimir Golovnev
6860c0d60d Allow to set qBittorrent as default program
Register qBittorrent as possible default program for .torrent files and
magnet links during install.

PR #19446.
2023-10-24 13:31:01 +03:00
Vladimir Golovnev
9de32a78f1 Improve NSIS scripts
* Improve NSIS scripts
* CI: Create installer for Windows build artifacts

PR #19728.
2023-10-20 09:04:56 +03:00
Chocobo1
8d5022c715 Combine CSS properties
PR #19730.
2023-10-19 12:07:36 +08:00
Vladimir Golovnev
921be09d8f Git: Ignore all compiled translation files (*.qm) and DLLs
PR #19726.
2023-10-18 10:53:55 +03:00
Vladimir Golovnev
116b05009d CI: Use dynamic MSVC run-time library
Otherwise, there is a conflict of run-time libraries used (since Qt DLLs are still use dynamic MSVCRT) that leads to strange errors.

PR #19718.
Closes #19701.
2023-10-17 21:31:55 +03:00
Chocobo1
63499511cb Forward declare "Add torrent manager" type
PR #19713.
2023-10-16 14:52:09 +08:00
Chocobo1
413e7dd3c4 GHA CI: use proper git URL
The `repo` value will be used by `git clone` command and therefore the
URL should end with `.git` for repos on Github.
https://pre-commit.com/#repos-repo

PR #19710.
2023-10-16 14:51:43 +08:00
Chocobo1
cba433823f Improve .torrent associate handling
* Use correct pointer type in NSIS scripts
* Only remove qbt specific registry keys when uninstalling or disassociating
* Set .torrent Content Type when associating .torrent format
* Move ".torrent association" functions to Utils::OS class

PR #19709.
2023-10-16 14:51:17 +08:00
Hanabishi
90e023f138 Fix WebUI greeting for qbittorrent-nox
* Check if WebUI is enabled and print an appropriate message otherwise.
* Print an actual runtime server scheme, address and port.

PR #19696.
2023-10-16 14:48:32 +08: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
xavier2k6
d60f9c6142 GHA CI: Update numerous pre-commit revisions and fixed typo
Updated:
* pre-commit-hooks -> 4.5.0
* codespell -> 2.2.6
* typos -> 1.16.18

Note:
fixed a typo from previous "test run"  of codespell 2.2.6 (L151) `dist\windows\config.nsi` - `unistaller` -> `uninstaller`

PR #19699.
2023-10-14 03:57:08 +08:00
thalieht
a3888811f6 Add I2P settings to WebUI
PR #19700.
2023-10-13 21:30:25 +03:00
Vladimir Golovnev
30189ae943 Allow to remove tracker from tracker filter widget menu
PR #19681.
Closes #11100.
2023-10-11 21:58:05 +03:00
Urek Mazino
ec90d169c0 Change author name
PR #19682.
2023-10-09 10:21:29 +03:00
Vladimir Golovnev
3ca0939411 Add separate filter item for tracker errors
* Add separate filter item for tracker errors
* Rename "Error" filter item to "Other error"

PR #19672.
2023-10-07 15:41:05 +03:00
Chocobo1
34f7b75f12 Add support for Mark-of-the-Web
https://redcanary.com/threat-detection-report/techniques/mark-of-the-web-bypass/
https://mikehadlow.blogspot.com/2011/07/detecting-and-changing-files-internet.html
https://textslashplain.com/2016/04/04/downloads-and-the-mark-of-the-web/

Closes #19648.
PR #19675.
2023-10-07 12:28:07 +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
70b438e6d9 Improve GUI behavior when adding multiple torrents
Allows you to bring the main window to the front when one or more "Add new torrent" dialogs are open.
Also allows you to minimize/maximize the "Add new torrent" dialog.

PR #19670.
Closes #17919.
2023-10-03 08:40:25 +03:00
Vladimir Golovnev
73028f9930 Double check whether database needs to be updated
Prevents qBittorrent from being failed to start after torrents database metadata is corrupted by one of the first releases of v4.5.x series.

PR #19668.
Closes #19622.
2023-10-01 20:59:27 +03:00
Chocobo1
bda18ad29b Add logging for some alerts
Specifically these alerts:
* i2p_alert
* session_error_alert

PR #19662.
2023-09-30 11:43:44 +08:00
Chocobo1
0404ff9fb3 Migrate away from deprecated function
`QStyle::standardPixmap()` is deprecated.

PR #19660.
2023-09-30 11:43:11 +08:00
Chocobo1
47439a7efd Use reference when parsing URL query
PR #19659.
2023-09-30 11:42:35 +08:00
Vladimir Golovnev
16111496ca Improve handling the case when torrent enters/leaves trackerless state
PR #19658.
2023-09-29 07:34:21 +03:00
Vladimir Golovnev
43e9403a4c Filter out duplicate trackers when replacing
PR #19656.
2023-09-29 07:33:19 +03:00
Vladimir Golovnev
7ab90cfc40 Don't forget to delete worker thread object
PR #19655.
2023-09-29 07:32:09 +03:00
Chocobo1
b3fda76027 Allow users to specify Python executable path
Closes #19195.
PR #19644.
2023-09-28 01:27:48 +08:00
Chocobo1
529e49aea7 Fix performance regression
Follow up #19417.
PR #19652.
2023-09-28 01:26:57 +08:00
Vladimir Golovnev
46c1c9de65 Fix memory leaks
* Fixes a couple of memory leaks (although not dangerous in practice, since we are talking about objects with a lifetime up to the end of the application)
* Fixes heap use after free

PR #19650.
Closes #19632.
2023-09-27 08:00:20 +03:00
xavier2k6
cacae42e5e Bump OpenSSL requirement to 3.0.2
Addresses:
* [CVE-2022-0778](https://github.com/advisories/GHSA-x3mh-jvjw-3xwx)
* [OpenSSL 1.1.1 End of Life](https://www.openssl.org/blog/blog/2023/09/11/eol-111/)

PR #19638.
2023-09-26 06:51:53 +03:00
Jay
f3b688217e Show RSS feed title in HTML browser
RSS feed title will be displayed on top of the HTML browser when 'Unread' is selected in feed list.

PR #19604.
2023-09-20 13:15:08 +03:00
Vladimir Golovnev
5e5c6aa7d8 Don't show outdated tracker message
PR #19616.
Closes #19612.
2023-09-20 13:12:54 +03:00
Chocobo1
88d32d57ab GHA CI: enable run-time checks in C++ library
Those have minimal impact on run-time:
https://www.gnu.org/software/libc/manual/html_node/Source-Fortification.html
https://bugs.launchpad.net/kicad/+bug/1838448/comments/40

PR #19608.
2023-09-19 00:25:02 +08:00
Priit Uring
1537f1e703 Sync flag icons with upstream
* Includes all 268 flags.
* Upstream commit `a7b7c3c55560cb39d96e70324876e1bb5b1c625b` - (Release v6.11.0)
* Flags source from (zip): https://github.com/lipis/flag-icons/releases/tag/v6.11.0

PR #19518.
2023-09-18 19:13:16 +03:00
Trim21
30badbf36e WebUI: fix missing error icon
PR #19610.
Closes #18737.
2023-09-18 16:42:03 +03:00
Vladimir Golovnev
5a334175a8 Use Fusion style on Windows 10+
PR #19051.
2023-09-18 08:38:35 +03:00
Chocobo1
dcba9eda00 Expose 'DHT bootstrap nodes' setting
This allows user to select DHT bootstrap nodes. Or even use their own bootstrap nodes.

PR #19594.
2023-09-14 13:57:34 +08:00
Vladimir Golovnev
633167a6da Prevent torrent from being started unexpectedly
Improves "Metadata received" stop condition handling by "Add new torrent" dialog.
The problem is when "Metadata received" stop condition is set the metadata can still be received 0.1 sec before clicking the "OK" button so torrent is actually added with metadata and therefore it cannot respect "Metadata received" stop condition.
The solution is to uncheck "Start torrent" checkbox once metadata is received.

PR #19597.
Closes #19583.
2023-09-13 15:48:13 +03:00
Hanabishi
c394868f87 Implement Reannounce In column
PR #19571.
2023-09-09 08:12:43 +03:00
Vladimir Golovnev
2deb7eb3d9 Don't limit max RSS feed file size
PR #19576.
2023-09-08 09:19:16 +03:00
Chocobo1
d19f4c2e1f GHA CI: bump versions 2023-09-07 15:30:01 +08:00
Chocobo1
22f63468a2 GHA CI: introduce dependabot updates
https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
2023-09-07 15:30:01 +08:00
Chocobo1
479639162d GHA CI: simplify vcpkg commands 2023-09-07 15:30:01 +08:00
Chocobo1
5b57abc7d8 GHA CI: add checking for doc
And also regenerate man pages with latest pandoc
2023-09-07 15:28:43 +08:00
Chocobo1
d841dda654 Make the AUTHORS strings translatable 2023-09-07 15:28:43 +08:00
Chocobo1
4cf933b4fc Update URL 2023-09-07 15:28:43 +08:00
Vladimir Golovnev
7cd2445a49 Improve tracker entries handling
PR #19496.

* Add torrent entry status to represent tracker error
* Add torrent entry status to represent unreachable endpoint
* Display tracker entry next/min announce time
* Reset tracker entries when torrent is stopped
2023-09-07 08:58:13 +03:00
yuri@FreeBSD
2f94c92df9 Enable DBUS cmake option on FreeBSD
PR #19559.
2023-09-05 11:23:50 +03:00
Chocobo1
39efd0e9ff Remove thin space
Generally qbt doesn't put a space before percentage symbol.
This change makes the UI elements consistent.
2023-09-04 13:10:12 +08:00
Chocobo1
ff80e0ce66 Use Qt built-in non-breaking space variable 2023-09-04 13:10:12 +08:00
Victor Chernyakin
65930ddf94 Use std::pair instead of QPair
PR #19548.
2023-09-03 09:39:34 +03:00
Chocobo1
4d2015cfed Support creating .torrent with larger piece size
Warning: users are at their own discretion to create .torrent with >= 64 MiB piece size as not
every torrent client supports it.
Larger piece sizes are only available when using libtorrent 2.x. libtorrent 1.x is not
efficient with memory usage and in order to avoid user complaints it is limited to 128 MiB.
Also note that, as of this writing, libtorrent 2.0.9 has an internal limitation that only
allows loading maximum 256 MiB piece size. And therefore > 256 MiB size options are forbidden
for now.

Closes #19527.
PR #19535.
2023-09-03 14:31:32 +08:00
Victor Chernyakin
2dc1a7d66f Set up infrastructure for localized man pages
PR #19515.
2023-09-02 21:38:37 +03:00
Matic Babnik
145971b915 Add "Add Tags" field for RSS rules in WebUI
PR #19519.
2023-09-02 21:37:53 +03:00
Chocobo1
43e3d0b4b2 Make the title label selectable
And therefore its text is copyable.
2023-09-01 00:18:25 +08:00
Chocobo1
0fdb1b3f53 Add button to copy library versions to clipboard
Closes #18702.
2023-09-01 00:18:25 +08:00
Chocobo1
24da51ffa0 Perform type conversion properly
Closes #19521.
PR #19525.
2023-09-01 00:18:03 +08:00
sledgehammer999
e434812cda Bump copyright year 2023-08-29 00:17:23 +03:00
sledgehammer999
9a1df0c595 Pull translations from Transifex 2023-08-29 00:05:14 +03:00
Victor Chernyakin
44763d3e15 Fix duplicated text in GitHub's SUPPORT.md
PR #19508.
2023-08-28 13:52:34 +03:00
Xu Chao
9a73a21f3f Don't set parent of "Add new torrent dialog" on macOS
PR #19494.

Closes #12849.
Closes #12852.
Closes #19072.

---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2023-08-28 13:50:36 +03:00
Victor Chernyakin
e045b4678d Use std::clamp() instead of various custom implementations
PR #19501.
2023-08-27 21:55:08 +03:00
Chocobo1
d8a03cd8d8 Use atomic primitives from standard library
QAtomicInteger underlying is using std::atomic structures, so
using std::atomic directly should not be a problem for us.

PR #19507.
2023-08-28 02:08:40 +08:00
Xu Chao
270c63d64c Open "Save path" if torrent has no metadata
PR #19495.
Closes #18738.
2023-08-27 08:38:59 +03:00
rcarpa
bbac94cc95 Use QThreadPool for torrent creation
The change is in preparation for adding the possibility to create
torrent files via the API.

Rework TorrentCreatorThread to be a more lightweight QRunnable class.
The parameters are now defined on construction time and are fixed
throughout the lifecycle of the TorrentCreator. The lifecycle of the
object is not bound to the one of QDialog anymore; it is now handled
by the QThreadPool. This will enable easier queueing of multiple torrent
creation jobs without risk of spawning many threads.

PR #19500.
2023-08-27 00:27:11 +08:00
Vladimir Golovnev
9ab8203c8a Don't overwrite tracker entry of unrelated protocol
PR #19493.
2023-08-23 12:38:18 +03:00
Vladimir Golovnev
c805606524 Improve tracker entries handling
PR #19468.

* Use QHash to map tracker endpoints
* Don't clear numPeers unexpectedly
* Remove outdated tracker entry endpoints
* Move presentation logic from Core to GUI code
* Show all endpoints per tracker in tree structure

---------

Co-authored-by: Kacper Michajłow <kasper93@gmail.com>
2023-08-21 10:27:19 +03:00
Victor Chernyakin
34d30ed031 Replace Q_UNUSED with [[maybe_unused]] attribute
PR #19471.
2023-08-18 07:09:40 +03:00
Victor Chernyakin
f3f4610ba4 Convert Windows header names to lowercase
PR #19465.
2023-08-16 10:29:13 +03:00
xavier2k6
21b77cb4f8 GHA CI: Bump Windows/macOS Boost version to 1.83.0
PR #19453.
2023-08-15 14:04:44 +03:00
Vladimir Golovnev
dcf3e97291 Implement gateway for adding new torrents
PR #19355.
2023-08-14 18:17:56 +03:00
Victor Chernyakin
e4313d6651 Use using declarations instead of typedef
PR #19458.
2023-08-14 18:14:36 +03:00
Victor Chernyakin
52fbb774a2 Disable clang-tidy for 3rd-party code
PR #19459.
2023-08-14 18:13:28 +03:00
Vladimir Golovnev
a0e41a11de Display error message when unrecoverable error occurred
PR #19462.
2023-08-14 16:03:57 +03:00
Vladimir Golovnev
cab5edb721 Add more precondition checks when handle async operation result
PR  #19460.
2023-08-14 16:02:50 +03:00
Vladimir Golovnev
7a9a102b6f Check returned Bundle ID for NULL
PR #19463.
2023-08-14 16:01:54 +03:00
Omar Abdul Azeez
6ba561dea2 Fix overwriting feeds.json with an incomplete load of it
PR #19444.
Closes #19439.

---------

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2023-08-12 18:59:24 +03:00
Vladimir Golovnev
56ba5e5182 Correctly load colors from custom themes
PR #19448.
Closes #19447.
2023-08-12 18:57:34 +03:00
Chocobo1
69d60b5f1c Specify interface requirements as an C++ concept
PR #19440.
2023-08-12 20:53:03 +08:00
Victor Chernyakin
850da9dd83 Replace Q_UNLIKELY with [[unlikely]] attribute
PR #19445.
2023-08-11 08:54:26 +03:00
Chocobo1
502b3d3228 Merge pull request #19427 from Chocobo1/cleanup
Remove unused include
2023-08-11 13:49:35 +08:00
Victor Chernyakin
c25d14b1d0 Specify charset and end_of_line in .editorconfig
Additionally, changes the link to the EditorConfig website
from http to https.

PR #19437.
2023-08-11 13:49:07 +08:00
Chocobo1
31fe327763 Move to separate headers
Hopefully this can speed up compilation times.
https://doc.qt.io/qt-6/qtglobal.html#details

PR #19430.
2023-08-11 13:47:55 +08:00
Chocobo1
870bcc7a19 Switch to QHash 2023-08-09 20:36:41 +08:00
Chocobo1
44f0a63354 Remove unused include 2023-08-09 20:36:39 +08:00
Chocobo1
9fa48a375d Merge pull request #19428 from Chocobo1/boost
Bump boost requirement to 1.76
2023-08-09 20:34:43 +08:00
Victor Chernyakin
f2b4aa6570 Remove unused parameter in Utils::Gui::scaledPixmap()
PR #19426.
2023-08-09 20:34:12 +08:00
Chocobo1
5c06d0aa75 Replace template conditionals with C++20 requires clause
Related: https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-constraints.html

PR #19424.
2023-08-09 20:33:19 +08:00
Chocobo1
4d98761e99 GHA CI: remove redundant conditionals 2023-08-08 23:56:04 +08:00
Chocobo1
180e708f3c Bump boost requirement to 1.76
std::hash specialisations for boost::asio structures is required.
2023-08-08 23:56:03 +08:00
Chocobo1
da4f2c2439 GHA CI: install boost from upstream 2023-08-08 23:55:30 +08:00
Vladimir Golovnev
33d767b765 Disable using Qt functions deprecated up to Qt 6.5
* Disable using Qt functions deprecated up to Qt 6.5
* Utilize QSet::removeIf()

PR #19419.
2023-08-08 08:52:13 +03:00
Vladimir Golovnev
06581636a1 Utilize QByteArrayView
PR #19417.
2023-08-07 11:21:32 +03:00
Vladimir Golovnev
a0fa1709d5 Raise minimum supported Qt version to 6.5
PR #19394.
2023-08-07 07:19:43 +03:00
Chocobo1
699dc1689a Remove column span
The property widget already has scroll bars and thus we don't need this span.

Closes #15000.
PR #19404.
2023-08-04 13:01:08 +08:00
Chocobo1
a427b9228d Ensure file name is valid when exporting torrents
Closes #19275.
Closes #19329.
PR #19403.
2023-08-04 13:00:48 +08:00
Jimmy Axenhus
c4ed40b82f Set property instead of set attribute
This commit resolves an issue with Safari not properly selecting an `<option>`.

Closes #17866.
PR #19024.
2023-08-03 13:34:24 +08:00
Chocobo1
e68cf87f05 Merge pull request #19396 from Chocobo1/ci
GHA CI: specify a category for CodeQL analysis
2023-08-03 11:41:40 +08:00
Vladimir Golovnev
fccdeb4e78 Don't use variable after it is moved
PR #19397.
2023-08-02 15:04:15 +03:00
Chocobo1
431860482c GHA CI: specify a category for CodeQL analysis 2023-08-01 15:27:04 +08:00
Chocobo1
d554db4f4e Revise wording 2023-08-01 15:27:04 +08:00
Chocobo1
6c16a09385 Guard against potential negative number 2023-08-01 15:27:04 +08:00
Chocobo1
b35c2bca5d Merge pull request #19390 from Chocobo1/openssl
Remove unused conditional
2023-08-01 12:57:12 +08:00
Chocobo1
852927bf50 Use qreal type whenever feasible
The idea is follow Qt and use `qreal` instead of `double` for generic code.
2023-07-31 03:50:49 +08:00
Chocobo1
a5a4ea9ba0 Remove unused conditional 2023-07-31 03:03:02 +08:00
MarcDrieu
45ca5d31c9 NSIS: Update French translation
PR #19284.
2023-07-28 10:36:26 +03:00
rusu-afanasie
b14740aeac NSIS: Add Romanian translation
PR #19377.
2023-07-28 10:34:48 +03:00
xavier2k6
5b0706df65 GHA CI: Bump Qt version to 6.5.2
PR #19378.
2023-07-27 17:45:26 +03:00
Vladimir Golovnev
11efd26acc Fix crash on application exit (Qt 6.5)
PR #19169.
2023-07-27 15:09:14 +03:00
Vladimir Golovnev
006ad23d0d Map selected indexes to source before modify the data
Changing the data may affect the layout of the sort/filter model, which in turn may invalidate the indexes previously obtained from selection model before we process them all. Therefore, we must map all the selected indexes to source before start processing them.

PR #19372.
Closes #19359.
2023-07-26 18:19:32 +03:00
Peter Dave Hello
9975230dea Update Transifex link in TRANSLATION_INSTRUCTIONS
PR #19366.
2023-07-25 15:28:56 +03:00
Chocobo1
e31c3376bd Use library provided erase_if()
`Algorithm::removeIf()` is still valuable as `QHash::removeIf()` predicate require an
iterator or a `std::pair`, which both require more code to unpack the variable and therefore
cumbersome to use.

PR #19353.
2023-07-24 20:29:02 +08:00
Chocobo1
9898901236 Merge pull request #19349 from Chocobo1/c++20
Use default operators generated/synthesized by compiler
2023-07-23 12:54:44 +08:00
Chocobo1
56c52af124 Mark override for virtual destructors
PR #19348.
2023-07-22 12:46:21 +08:00
Chocobo1
c20a77aa77 Merge pull request #19346 from Chocobo1/powerMgt
Avoid excessive power management updates
2023-07-22 12:45:55 +08:00
Chocobo1
d6adebe4c0 Switch to efficient algorithm 2023-07-22 04:11:39 +08:00
Chocobo1
c58aa58cba Use C++20 designated initializers 2023-07-22 02:25:44 +08:00
Chocobo1
7612d5d0ef Use default operators generated/synthesized by compiler 2023-07-22 02:25:44 +08:00
Chocobo1
1874fd7f93 Fix incorrect state
Fix up f3f9cfe44e.
2023-07-22 01:59:36 +08:00
Chocobo1
0bcc1cf4a0 Fix indentation 2023-07-21 20:41:00 +08:00
Chocobo1
cffcf5783f Avoid excessive power management updates 2023-07-21 20:39:25 +08:00
Vladimir Golovnev
10ee1ab7a2 Switch to C++20
PR #19336.
2023-07-21 15:38:49 +03:00
Vladimir Golovnev
f27f2c20e0 Add unified class to represent parsed torrent metadata
* Add unified class to represent parsed torrent metadata
* Unify startup logic of "Add new torrent dialog"

PR #19301.
2023-07-21 08:40:16 +03:00
Vladimir Golovnev
d554f4d44a Always use QStyledItemDelegate as base of delegate classes
PR #19340.
2023-07-21 08:37:11 +03:00
Chocobo1
d357cdd5f9 Set power state to idle when deconstructing class 2023-07-21 12:19:29 +08:00
Chocobo1
0f862fcf9f Use efficient algorithm for removing entries
PR #19345.
2023-07-21 12:18:26 +08:00
Chocobo1
6bd56478fd Merge pull request #19344 from Chocobo1/systemd
Add support for systemd power management
2023-07-21 12:17:49 +08:00
Chocobo1
76b5ca6b8b Remove debugging messages
As requested in https://github.com/qbittorrent/qBittorrent/pull/19344#discussion_r1269156895
2023-07-20 18:05:40 +08:00
Chocobo1
dbb1b1e9bb Use default timeout 2023-07-20 18:05:39 +08:00
Chocobo1
b5fbfdf106 Use correct type
https://doc.qt.io/qt-6/qdbustypesystem.html
https://dbus.freedesktop.org/doc/dbus-specification.html#id-1.3.8
2023-07-20 18:05:39 +08:00
Chocobo1
f3f9cfe44e Add support for systemd power management 2023-07-20 18:05:39 +08: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
5e610cfdcf Drop support of Autoconf/Automake and QMake
PR #19335.
2023-07-20 11:15:46 +03:00
Chocobo1
2c08dc9dad Merge pull request #19333 from Chocobo1/clean
Change default power management to Gnome Session Manager
2023-07-20 13:04:13 +08:00
Chocobo1
15b46259f3 Add logging 2023-07-19 00:50:01 +08:00
Chocobo1
d569eaa991 Revise message 2023-07-19 00:49:58 +08:00
Chocobo1
64c3845a7c Detect D-Bus interface 2023-07-18 22:31:52 +08:00
Chocobo1
79afa0b84d Clean up coding style 2023-07-18 20:41:21 +08:00
Chocobo1
38d773ca46 Change default power management to Gnome Session Manager
As seen on https://www.freedesktop.org/wiki/Specifications/power-management-spec/,
the `org.freedesktop.PowerManagement` is obsolete.
2023-07-18 20:41:19 +08:00
axet
9194f60ac0 Inhibit suspend instead of screen idle
PR #19316.
Closes #19312.
2023-07-18 15:40:17 +03:00
Vladimir Golovnev
4a217dc42f Don't initialize Properties widget size until window is shown
PR #19328.
Closes #19322.
2023-07-18 15:06:27 +03:00
Vladimir Golovnev
9171b73edb WebUI: use new format of RSS rules
PR #19326.
Fixes regression of #18824.
Closes #19323.
2023-07-18 15:05:17 +03:00
sledgehammer999
0f0de5e4f8 Bump to v5.0.0alpha1 2023-07-17 09:25:50 +03:00
sledgehammer999
c1d64cc3ea Sync translations from Transifex and run lupdate 2023-07-17 09:14:36 +03:00
Vladimir Golovnev
57085ca126 Use previous approach of deducing favicon URL
PR #19325.
Fixes regression of #19062.
Closes #19307.
2023-07-17 08:11:07 +03:00
Vladimir Golovnev
7b4b7c2b81 Always honor the configured behavior for merging trackers
PR #19305.

* Always honor the configured behavior for merging trackers
* Clarify merging trackers related options
2023-07-16 20:59:18 +03:00
Vladimir Golovnev
6a3a5fac83 Correctly add new column to existing database
PR #19321.
2023-07-15 20:49:51 +03:00
Christopher
35e18498d9 Add option to stop seeding when torrent has been inactive
PR #19294.
Closes #533.
Closes #8073.
Closes #15939.
2023-07-15 13:14:42 +03:00
Vladimir Golovnev
f99a98306d Log when duplicate torrents are being added
PR #19306.
Closes #18458.
2023-07-14 15:33:06 +03:00
Chocobo1
b0cfe53329 Merge pull request #19302 from Chocobo1/connection
Move signal/slot connections out of .ui files
2023-07-13 13:27:14 +08:00
Chocobo1
060466e326 GHA CI: fix environment variable not being used
Related issue: https://github.com/Wandalen/wretry.action/issues/106
A workaround was suggested in https://github.com/Wandalen/wretry.action/issues/106#issuecomment-1631860467

PR #19303.
2023-07-13 13:26:47 +08:00
Chocobo1
392949b313 Rename variable to avoid name clash 2023-07-13 00:34:33 +08:00
Chocobo1
b17307f283 Move signal/slot connections out of .ui files
This unify the place (.cpp file) where we handle signal/slot connections.
2023-07-13 00:34:33 +08:00
sledgehammer999
e739d38061 Sync translations from Transifex and run lupdate 2023-07-12 01:50:01 +03:00
Chocobo1
20f4d0c4e3 Merge pull request #19292 from Chocobo1/head
Fix response for HTTP HEAD method
2023-07-11 11:24:28 +08:00
Chocobo1
4f6038c350 Merge pull request #19291 from Chocobo1/limits
Expose 'bdecode limits' settings
2023-07-11 11:24:09 +08:00
Fabricio Silva
f08556be30 WebUI: Preserve the network interfaces when down
PR #19286.
2023-07-11 11:23:37 +08:00
Chocobo1
543745b3f2 Avoid stuffing the log via junk requests 2023-07-09 21:23:09 +08:00
Chocobo1
cb0c09769f Response proper error status for invalid request methods 2023-07-09 21:23:09 +08:00
Chocobo1
e8f5a3b44e Fix response for HTTP HEAD method
Closes #19288.
2023-07-09 21:23:08 +08:00
Chocobo1
5a660fc8a9 Expose 'bdecode limits' settings
This includes:
* Bdecode depth limit
* Bdecode token limit
2023-07-09 15:36:13 +08:00
stalkerok
488464731d Change some default settings
* Reduce default file pool size to 100
* Reduce default stop tracker timeout to 2 seconds

PR #19171.
2023-07-06 14:25:53 +03:00
xavier2k6
fb68604ee7 Display correct Minimum Python requirement
PR #19281.
2023-07-06 10:43:35 +03:00
Vladimir Golovnev
4ef9a6444a Add options to adjust behavior of merging trackers to existing torrent
PR #19278.
Closes #19251.
2023-07-06 07:55:59 +03:00
Chocobo1
66dfe8545d Expose 'max torrent file size' setting 2023-07-06 12:45:09 +08:00
Chocobo1
fff7b1dcbd Merge pull request #19277 from Chocobo1/ctor
Don't update settings when it hasn't changed
2023-07-06 12:41:45 +08:00
Burak Yavuz
b5b1f51cee NSIS: Update Turkish translation
Corrected and updated some strings

PR #19242.
2023-07-05 09:49:00 +03:00
Chocobo1
33875aa70a Mark singleton class as final 2023-07-05 03:32:54 +08:00
Chocobo1
9d7dad4a61 Don't unnecessarily restart Web server
When related settings hasn't changed.
2023-07-05 03:32:53 +08:00
Chocobo1
213b6e316c Don't emit superfluous signal
`Preferences::apply()` might emit superfluous changed signal even when the settings hasn't
changed (e.g. not dirty), this commit fixes it.
2023-07-05 03:32:53 +08:00
Chocobo1
ffc3d8d345 Don't update settings when it hasn't changed
So when a setting is the same as the default, it won't write an entry to config file on disk.
2023-07-05 03:32:53 +08:00
Vladimir Golovnev
7ec80263e1 Allow to globally disable the use of proxy
PR #19273.
Closes #19141.
2023-07-04 09:27:46 +03:00
Chocobo1
66e533f505 Avoid redundant buffer copying
PR #19272.
2023-07-04 14:04:41 +08:00
Chocobo1
045b4f0a06 GHA CI: retry flaky steps automatically
PR #19270.
2023-07-03 21:19:01 +08:00
Vladimir Golovnev
80c637bf99 Always use the same limits when parse bencoded data
PR #19263.
2023-07-02 11:37:37 +03:00
gdim47
48d5e3326b Improve performance when scrolling large torrents
PR #19255.
2023-07-02 11:36:42 +03:00
Chocobo1
80791e328d Fix wrong behavior when reading text
Also add another 'file read error' status.

Closes #19254.
PR #19262.
2023-07-02 13:23:20 +08:00
Chocobo1
08a771468d Merge pull request #19260 from Chocobo1/func
Fix code defects
2023-07-02 12:57:15 +08:00
Chocobo1
c3fc96dfe6 Visually validate input path in torrent creator dialog
PR #19245.
2023-07-02 12:56:41 +08:00
Chocobo1
715a4f3eb6 Use move construct for large data 2023-07-01 16:28:15 +08:00
Chocobo1
8655e48336 Use move construct for shared pointers 2023-07-01 16:28:13 +08:00
Chocobo1
3c139ca333 Fix potential use-after-move
The evaluation order for function parameters is unspecified in C++.
https://stackoverflow.com/questions/2934904/order-of-evaluation-in-c-function-parameters

Fix up 1b2ff0f6f8.
2023-07-01 14:38:50 +08:00
Ignat Loskutov
f4deb1050f Disable symlink resolving in Torrent creator
PR #19199.
2023-06-28 14:27:24 +03:00
Chocobo1
889ed5bce9 Merge pull request #19238 from Chocobo1/spelling
GHA CI: add spelling check
2023-06-27 12:26:10 +08:00
Chocobo1
6680fdda18 Fix typos 2023-06-26 16:45:44 +08:00
Chocobo1
88bd4f270f GHA CI: add spelling check (typos) 2023-06-26 16:45:41 +08:00
Chocobo1
86a5ad3241 GHA CI: add spelling check (codespell) 2023-06-26 13:44:01 +08:00
Vladimir Golovnev
1c654d8f47 Immediately update torrent status on moving files
PR #19220.
2023-06-25 12:45:58 +03:00
Vladimir Golovnev
c90863f217 Don't miss to enable Apply button
PR #19221.
Closes #19082.
2023-06-25 12:44:33 +03:00
luzpaz
deec2ae1b1 Fix various typos
PR #19213.
2023-06-24 16:04:04 +03:00
sledgehammer999
f37fff31ae NSIS: Fix missing slash in Qt translations script
PR #19196.
2023-06-24 13:10:00 +08:00
Chocobo1
dffb93a6aa Merge pull request #19208 from Chocobo1/buffer
Avoid unnecessary memory allocation/relocation
2023-06-24 13:03:00 +08:00
Vladimir Golovnev
3b948b0130 Drop I2P support with libtorrent 1.2
PR #19207.
Closes #19152.
2023-06-23 16:24:34 +03:00
Chocobo1
b3d2ba7d07 Initialize regex only once
This code path is commonly used so let it initialize only once.
2023-06-23 14:49:22 +08:00
Chocobo1
03d3552ee0 Avoid unnecessary memory allocation/relocation 2023-06-23 14:49:22 +08:00
Luka Čelebić
379b0dbe40 Add alternative shortcut CTRL+E for CTRL+F
PR #19190.
2023-06-20 11:52:09 +03:00
thalieht
f213f81727 Fix transfer list tab hotkey
PR #19200.
2023-06-20 07:45:17 +03:00
Chocobo1
1f2a6455b6 Merge pull request #19188 from Chocobo1/literalOperator
Rename literal operator
2023-06-19 12:45:20 +08:00
sledgehammer999
fc8c74989b Bump to 4.6.0beta2 2023-06-18 21:27:12 +03:00
Chocobo1
b01a48879a Add missing header 2023-06-18 13:51:19 +08:00
Chocobo1
e780b3a9b7 Add unit test for string literal helper 2023-06-18 13:51:19 +08:00
sledgehammer999
2bbfd317ce Sync translations from Transifex and run lupdate 2023-06-18 01:37:12 +03:00
Chocobo1
e6d85a468b Rename literal operator
Qt 6.4 introduced `QString operator""_s()` and the previous `""_qs` is
deprecated since Qt 6.8.
2023-06-18 03:32:44 +08:00
Chocobo1
f6b58f36e2 WebUI: set Cross Origin Opener Policy to same-origin
This separates browsing context for different origin sites and prevents
leaking data from it.
This header is only present when using built-in WebUI. Alternative WebUI
is not affected.
https://web.dev/why-coop-coep/#coop

PR #19157.
2023-06-14 13:38:48 +08:00
Chocobo1
79ca2e145f Don't read unlimited data from files
It now guards against reading infinite files such as `/dev/zero`.
And most readings are bound with a (lax) limit.
As a side effect, more checking are done when reading a file and
overall the reading procedure is more robust.

PR #19095.
2023-06-14 13:38:19 +08:00
Chocobo1
81bc910d68 Provide context to translation strings
PR #19120.
2023-06-12 14:03:12 +08:00
Vort
ff5d02bcf2 Make I2P session options configurable
PR #19079.
Closes #18980.
2023-06-06 08:35:40 +03:00
tearfur
2e87e6e0df Use hostname instead of domain name in tracker filter list
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>

PR #19062.
Closes #19035.
2023-06-05 14:57:37 +03:00
Vladimir Golovnev
a5e8af5070 Allow to assign priority to RSS download rule
PR #19000.
2023-06-05 14:55:41 +03:00
Vladimir Golovnev
cf415dd7fe Allow to disable confirmation of Pause/Resume All
PR #19067.
Closes #18155.
2023-06-04 08:57:14 +03:00
Chocobo1
83e6afcb71 Merge pull request #19069 from Chocobo1/sort
WebUI: use natural sort on tracker list
2023-06-04 12:52:29 +08:00
Chocobo1
62d96c068a Remove SGML parser
This library is unmaintained, outdated and plugin authors are encouraged to use html.parser
from Python Standard Library instead.

https://docs.python.org/3/library/html.parser.html

PR #19068.
2023-06-04 12:52:06 +08:00
xavier2k6
040c3c7ef8 Sync "expected lite" with upstream
PR #19049.
2023-06-03 17:42:57 +03:00
Raymond Ha
3ef8726083 WebUI: Set Connection status and Speed limits tooltips
PR #19052.
Fixes #18958.
2023-06-03 17:39:58 +03:00
Chocobo1
dad9157d84 Don't overwrite original variable 2023-06-02 18:12:01 +08:00
Chocobo1
5cea69472f Use natural sort 2023-06-02 17:44:17 +08:00
ttys3
b1492bcd7d WebUI: Show only hosts in tracker filter list
PR #18190.
2023-06-02 17:36:33 +08:00
sledgehammer999
d571ab2be1 Update AppVeyor config
The config needs some updating to accommodate the new structure.

PR #19030.
2023-06-02 17:02:31 +08:00
Vladimir Golovnev
4550469bb9 Fix incorrect height of Filter line edit
PR #19058.
2023-06-02 11:47:53 +03:00
Vladimir Golovnev
160af4feef Show I2P peer addresses
PR #18845.
2023-06-01 17:16:03 +03:00
Priit Uring
b27e839405 Sync flag icons with upstream
PR #19027.
2023-06-01 06:49:09 +03:00
sledgehammer999
ecc08dee09 Bump to 4.6.0beta1 2023-05-29 16:03:44 +03:00
Chocobo1
11ac4e7620 GHA CI: upload macOS bundles
Hopefully those bundles will be runnable on users machine.

PR #19023.
2023-05-29 12:24:12 +08:00
Chocobo1
fbe93f0c47 Improve "apply memory working set" routine
Now it will try to raise the hard limit.
And also the log shows a more specific message when the new limit is not
applicable.

PR #19022.
2023-05-28 13:41:44 +08:00
sledgehammer999
11945eef3f Sync translations from Transifex and run lupdate 2023-05-28 01:40:37 +03:00
Raymond Ha
a35dbc6df7 WebUI: Fix category save path
PR #19008.
2023-05-26 11:52:37 +03:00
Chocobo1
3fb4e4d293 GHA CI: build libtorrent as a static library
Since appimage is bundling the libraries it make sense to embed libtorrent statically into qbt binary.
Another side effect is now qbt binary includes debug symbols from libtorrent too (which I consider a good thing for debugging). Previously appimage seems to (unnecessarily) strip the libtorrent debug symbols.

PR #19014.
2023-05-25 13:08:53 +08:00
Vladimir Golovnev
f5a4065101 Raise minimum libtorrent versions
PR #19011.
2023-05-25 06:31:28 +03:00
xavier2k6
ba93d55a6d GHA CI: Bump libtorrent version(s)
PR #19006.
2023-05-24 05:10:57 +03:00
Vladimir Golovnev
a59301712e Avoid race condition when waking worker thread
PR #19005.
2023-05-23 02:22:16 +03:00
Chocobo1
b406d669b3 Bump python version minimum requirement
PR #18996.
2023-05-22 12:37:02 +08:00
Chocobo1
4ef8f39f23 Use python isolate mode
This (more or less) avoids user's environment variables tampering the
search process.
And also remove usages of `eval()` and `exec()`.

PR #18995.
2023-05-21 14:04:44 +08:00
Vladimir Golovnev
34802362ad Fix inconsistent background of filters widget
PR #18956.
Fixes regression of #18918.
2023-05-11 09:11:11 +03:00
Vladimir Golovnev
c10f1f0ad2 Consider explicitly specified parameters when resolving optional ones
PR #18955.
Closes #18951.
2023-05-11 09:09:57 +03:00
Vladimir Golovnev
58ae98026b Try to detect system wake-up event
PR #18934.
Closes #17898.
2023-05-10 15:02:15 +03:00
Chocobo1
32a55551fe Merge pull request #18936 from Chocobo1/tidy
Code clean up
2023-05-08 13:11:11 +08:00
Vladimir Golovnev
7880fe8440 Merge pull request #18824 from glassez/atp-edit
Unify/improve "add torrent parameters" template editing UI
2023-05-07 19:38:35 +03:00
Vladimir Golovnev (Glassez)
bb959bda8c Add helpers for suggesting torrent paths 2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
d629c77184 Improve FlowLayout to support vertical alignment 2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
b953d223e4 Use check box to represent "Skip checking" 2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
6fa53b5ed8 Override add torrent params in a more comprehensible way 2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
c777ed3299 Correctly use fallback value for "Add to top of queue" option 2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
341b2f345a Use FlowLayout in AddTorrentParamsWidget 2023-05-07 16:34:55 +03:00
Vladimir Golovnev (Glassez)
905f141657 Revamp "Automated RSS downloader" dialog 2023-05-07 16:34:52 +03:00
Vladimir Golovnev (Glassez)
0a87bb368f Extract "add torrent params" serialization code 2023-05-07 16:33:32 +03:00
Vladimir Golovnev (Glassez)
93a1e58554 Revamp "Watched folder options" dialog 2023-05-07 16:33:32 +03:00
Vladimir Golovnev (Glassez)
0cc29f1851 Implement "Add torrent params" editing widget 2023-05-07 16:33:20 +03:00
Chocobo1
81daad92ec Combine identical branches 2023-05-07 19:41:55 +08:00
Chocobo1
41be7e9bbe Make function const 2023-05-07 19:41:55 +08:00
Chocobo1
179a61d75e Add curly braces 2023-05-07 19:41:55 +08:00
Chocobo1
73134d5f4d Initialize member variables 2023-05-07 16:30:56 +08:00
Chocobo1
29c05ed3e8 Use std::make_unique 2023-05-07 14:38:03 +08:00
Chocobo1
e375f3ee0b Use reference 2023-05-07 14:38:02 +08:00
Chocobo1
b185153254 Merge pull request #18931 from Chocobo1/tidy
Clean up code
2023-05-07 14:20:47 +08:00
Chocobo1
e7e5c38384 Remove superfluous header include 2023-05-06 16:48:49 +08:00
Chocobo1
9a00839a75 Simplify code 2023-05-06 16:35:13 +08:00
Chocobo1
79e85d01fa Mark move functions as noexcept 2023-05-06 16:35:13 +08:00
Chocobo1
e408973ee6 Add pointer qualifications to auto-typed variables 2023-05-06 16:35:13 +08:00
Chocobo1
8c9b6e2f2d Use reference whenever possible 2023-05-06 16:35:13 +08:00
Chocobo1
5b43782f58 Remove redundant virtual specifier 2023-05-06 16:35:12 +08:00
Chocobo1
2059825597 Don't use instance for accessing static functions 2023-05-06 16:35:12 +08:00
Chocobo1
e1be46820b Remove redundant initialization 2023-05-06 16:35:12 +08:00
Chocobo1
8219b1f695 Use default constructor, destructor 2023-05-06 16:35:12 +08:00
Chocobo1
3fbe380582 Remove redundant function declaration 2023-05-05 14:51:02 +08:00
Chocobo1
5f00d42a49 Drop superfluous const 2023-05-05 14:51:02 +08:00
Chocobo1
15de7aed9a Use perfect forwarding 2023-05-05 14:51:02 +08:00
Chocobo1
5c38cc00d9 Add support for clang-tidy 2023-05-05 14:51:02 +08:00
Vladimir Golovnev
5a1dcbae9c Don't make assertion about 3rd party logic
PR #18913.
2023-05-03 07:24:52 +03:00
Vladimir Golovnev
7c6a852f85 Revamp TransferListFiltersWidget implementation
Avoid using style sheets to better support color mode switching.

PR #18918.
2023-05-03 07:24:03 +03:00
Vladimir Golovnev
147b22ddd3 Revamp LineEdit implementation
PR #18917.
2023-05-03 07:23:19 +03:00
Vladimir Golovnev
d83b2a6131 Make sure ResumeSessionContext is destroyed before start processing
PR #18912.
2023-05-02 09:48:49 +03:00
Vladimir Golovnev
821e946bbe Remove outdated code
PR #18908.
2023-05-01 08:29:35 +03:00
Deltadroid
634eb4a183 Replace status_t with disk_status
libtorrent 2.1 has made the following change:
"make status_t a proper flag type, to clean up oversized_file indication
from disk subsystem"

PR #18879.
2023-04-30 10:12:15 +03:00
Vladimir Golovnev
758ea7edca Improve logging of running external program
PR #18901.
2023-04-30 10:10:03 +03:00
Vladimir Golovnev
1bd499565e Completely initialize native status on torrent creation
PR #18900.
2023-04-30 10:09:09 +03:00
Chocobo1
be9ec5a329 Merge pull request #18877 from Chocobo1/ci
Clean up CI scripts
2023-04-29 13:36:41 +08:00
Chocobo1
df895cb2a7 Improve script compatibility
Now the script is conforms to POSIX shell script which is universal on
all linux.
Also make it executable.
2023-04-24 13:31:19 +08:00
Chocobo1
3b72859980 Bump various action versions 2023-04-24 13:18:17 +08:00
Chocobo1
69df85f564 Move script into its own subfolder 2023-04-24 13:18:10 +08:00
Chocobo1
1f1da32371 Rename CI script
See: https://stackoverflow.com/questions/22268952/what-is-the-difference-between-yaml-and-yml-extension
2023-04-24 13:18:08 +08:00
xavier2k6
cddf8c199c GHA CI: Update some dependencies
PR #18870.
2023-04-24 13:15:46 +08:00
Chocobo1
bbd5ed1142 Switch URLs to https
PR #18876.
2023-04-23 15:09:58 +08:00
sledgehammer999
0f033ec9c8 Regenerate translation files 2023-04-20 03:34:29 +03:00
Chocobo1
7397c80837 WebUI: improve 'exporting torrent' behavior
Don't stop the whole operation when a torrent doesn't exists and try to export the remaining
existing ones.

PR #18858.
2023-04-18 13:59:55 +08:00
Vladimir Golovnev
51132c817b Improve move storage handling
PR #18857.
Closes #18795.
2023-04-18 08:06:18 +03:00
Chocobo1
1fe006d16f Merge pull request #18853 from Chocobo1/exportTorrent
Work around Chrome download limit
2023-04-17 00:12:30 +08:00
Sentox6
bd31eddb94 Inhibit system sleep while torrents are moving
PR #18783.
2023-04-16 18:09:34 +03:00
DivineHawk
0defb7d79d WebUI: Use workaround for IOS file picker
PR #18837.
Fixes #18683.
2023-04-16 14:30:30 +03:00
七海千秋
1e400df324 Set "SameSite=None" if CSRF Protection is disabled
PR #18843.
2023-04-16 14:27:49 +03:00
Chocobo1
9ea48539b4 Inline variable declared in header 2023-04-15 14:53:13 +08:00
Chocobo1
d63e0ad78f Work around Chrome download limit
Closes #18775.
2023-04-15 14:51:27 +08:00
Vladimir Golovnev
eaee38a19e Disable UPnP for web UI by default
PR #18832.
2023-04-13 06:22:18 +03:00
Vladimir Golovnev
b3e9c46eff Don't miss saving "download path" in SQLite storage
PR #18844.
Closes #18842.
2023-04-13 06:18:09 +03:00
Chocobo1
5dcc14153f Move feature macro declaration to build scripts
PR #18825.
2023-04-10 13:38:00 +08:00
Chocobo1
4a66d705b8 Merge pull request #18812 from Chocobo1/buf
Use KiB unit for socket buffer sizes
2023-04-09 22:17:39 +08:00
Chocobo1
9d7fcea5d6 Describe special values in label
https://github.com/qbittorrent/qBittorrent/pull/18806#discussion_r1158346210
https://github.com/qbittorrent/qBittorrent/pull/18812#issuecomment-1500303976
2023-04-08 15:46:02 +08:00
Vladimir Golovnev
b8cd614775 Allow to edit RSS feed URL
PR #18807.
Closes #5489.
2023-04-07 14:22:50 +03:00
Chocobo1
a9ab2d9b9e Use KiB unit for socket buffer sizes
https://github.com/qbittorrent/qBittorrent/pull/18806#issuecomment-1499894871
2023-04-07 18:33:24 +08:00
Chocobo1
cecf2d28e6 Merge pull request #18806 from Chocobo1/buf
Expose 'socket send/receive buffer size' options
2023-04-07 18:19:46 +08:00
Chocobo1
a01f1014b9 Inline variable defined in header 2023-04-05 18:32:18 +08:00
Chocobo1
77411760a0 Expose 'socket send/receive buffer size' options
Closes #18794.
2023-04-05 18:11:13 +08: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
Bartu Özen
b55d4b1733 WebUI: Implement subcategories
PR #18740.
2023-04-02 11:02:22 +03:00
Chocobo1
40e28930a4 GHA CI: add missing dll
Closes #18383.
PR #18792.
2023-04-02 13:30:26 +08:00
Chocobo1
5a3579a3f9 Merge pull request #18779 from Chocobo1/webui
WebUI: Add checker for html
2023-03-30 13:24:21 +08:00
Chocobo1
9de8abadb6 Fix wrong end tag 2023-03-28 22:26:11 +08:00
Chocobo1
05c5cdab96 Add alternative text for images 2023-03-28 22:20:37 +08:00
Chocobo1
1e1c1725ab Always use quotes for attributes
This is to unify coding style.
2023-03-28 22:20:37 +08:00
Chocobo1
b5c57af869 Escape special characters properly 2023-03-28 22:20:37 +08:00
Chocobo1
eb875ac8c1 Add attributes explicitly 2023-03-28 22:20:37 +08:00
Chocobo1
a36358d7d0 Remove deprecated rules 2023-03-28 22:20:37 +08:00
Chocobo1
679e592a5c Add checker for html 2023-03-28 22:20:33 +08:00
Vladimir Golovnev
b922441a7c Correctly handle redirections
PR #18771.
Fixes regression introduced by #18528.
Closes #18764.
2023-03-28 06:26:40 +03:00
Vladimir Golovnev
941c587c68 Don't forget to clear I2P peer items
PR #18753.
2023-03-24 14:06:46 +03:00
Vladimir Golovnev
77bd09bb8b Use tray icon from system theme only if option is set
PR #18733.
2023-03-22 13:51:39 +03:00
Vladimir Golovnev
8bcac1bed2 Reduce default file pool size
PR #18734.
2023-03-21 08:39:06 +03:00
Vladimir Golovnev
cdded6cef7 Add (experimental) I2P support
PR #18717.
Closes #16257.
2023-03-21 08:33:46 +03:00
thalieht
8cbe4a571c Initialize a few groupboxes' check state after their children
PR #18727.
2023-03-20 10:49:25 +03:00
Vladimir Golovnev
ee9d2173e0 Combine all the column filter related widgets
PR #18726.
2023-03-20 08:23:41 +03:00
Chocobo1
a450a7c6e1 Delegate string hashing to standard library
Since standard library could have platform dependent specialized hashing functions.
Also the main idea is to let `qHash` handle whatever integer type `std::hash` returns and mix it with `seed` accordingly.

PR #18715.
2023-03-18 14:09:35 +08:00
thalieht
d41a77841d Save UI Theme Dialog size
PR #18709.
2023-03-17 22:15:56 +03:00
thalieht
ae06daba6a Correctly initialize group box children as disabled
PR #18710.
2023-03-17 22:13:19 +03:00
Vladimir Golovnev
77aa85fbd3 Provide UI Theme editor
PR #18655.
2023-03-16 10:03:05 +03:00
Vladimir Golovnev
989b1e6c2c Improve finished torrent handling
PR #18704.
Closes #18694.
2023-03-16 09:45:49 +03:00
Vladimir Golovnev
9ef23d524d Prevent incorrect log message about torrent content deletion
PR #18692.
Closes #18689.
2023-03-16 09:40:21 +03:00
Chocobo1
f16e903623 Merge pull request #18687 from Chocobo1/codeql
GHA CI: add CodeQL scanning
2023-03-15 15:21:27 +08:00
Tom
0bb0829a9a Allow to filter torrent list by save path
PR #18600.
2023-03-15 09:46:22 +03:00
Chocobo1
fa30b70453 Fix code defects 2023-03-14 15:04:54 +08:00
Christian Danížek
e4f90730b2 NSIS: Add Slovak translation
PR #18676.
2023-03-13 12:04:47 +03:00
Chocobo1
6fd522472c GHA CI: drop needless syntax
https://docs.github.com/en/actions/learn-github-actions/expressions#about-expressions
>When you use expressions in an if conditional, you may omit the
>expression syntax (${{ }}) because GitHub automatically evaluates the if conditional as an expression.
2023-03-12 14:27:10 +08:00
Chocobo1
0f32de9d8c GHA CI: add CodeQL scanning
This enable codebase scanning for C++ and JavaScript languages.

https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql
https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/customizing-code-scanning
2023-03-12 14:27:10 +08:00
thalieht
f630d84858 WebUI: Add "Add to top of queue" option
PR #18660.
2023-03-08 18:58:42 +03:00
Vladimir Golovnev
ee6f699b48 Apply adjacent changes within single transaction
PR #18635.
2023-03-04 08:46:19 +03:00
Vladimir Golovnev
ce9bdaef5c Correctly check for database needs to be updated
* Correctly check for database needs to be updated
* Create index only if not exists
* Double check whether database needs to be updated

PR #18638.
2023-03-02 20:31:38 +03:00
Vladimir Golovnev
37c04fdeed Prevent possible problem of using incomplete type
PR #18639.
2023-03-02 06:18:51 +03:00
Vladimir Golovnev
c51aa2d573 Index torrents table by queue position
PR #18623.
2023-02-28 08:57:51 +03:00
sledgehammer999
b922e1ae73 Sync translations from Transifex and run lupdate 2023-02-28 00:20:58 +02:00
sledgehammer999
dd48f62d66 Migrate transifex tool config to new version 2023-02-28 00:10:16 +02:00
Vladimir Golovnev
f5b5312cf0 Merge pull request #18528 from glassez/proxy
Allow to use proxy per subsystem
2023-02-27 20:34:51 +03:00
Vladimir Golovnev
58a654a70f Reject requests that contain backslash in path
PR #18626.
Closes #18618.
2023-02-27 16:50:50 +03:00
Vladimir Golovnev
ff0f3b4975 WebAPI: Allow to set read-only directory as torrent location
PR #18613.
Closes #18480.
2023-02-27 09:09:33 +03:00
Vladimir Golovnev
8df68ac878 Prevent RSS folder from being moved into itself
PR #18619.
Closes #18446.
2023-02-27 09:08:18 +03:00
Vladimir Golovnev
2f9b313287 Perform own tracking of files progress
PR #18597.
2023-02-26 14:44:58 +03:00
Vladimir Golovnev (Glassez)
cbf591a8b5 Improve SOCKS5 error messages 2023-02-26 14:27:59 +03:00
Vladimir Golovnev (Glassez)
96da685e5d Expand the scope of "Proxy hostname lookup" option 2023-02-26 14:27:59 +03:00
Vladimir Golovnev (Glassez)
6ac14d0c57 Allow to use proxy per subsystem 2023-02-26 14:27:41 +03:00
Vladimir Golovnev (Glassez)
4745a40f0b Allow to specify proxy option per request 2023-02-25 17:30:26 +03:00
Vladimir Golovnev (Glassez)
8993d87b32 Let Search Engine handle its proxy usage 2023-02-25 17:25:41 +03:00
brvphoenix
8df80b67f9 GHA CI: Add missing dependencies
PR #18596.
2023-02-19 17:02:59 +03:00
loligans
466314675c WebUI: Add multi-file renaming
PR #18287.
Closes #16239.
2023-02-19 14:07:55 +03:00
Hanabishi
d75fd3fcde Show filtered port numbers in logs
PR #18544.
2023-02-18 08:14:27 +03:00
Chocobo1
7ae83df5a5 GHA CI: compress debug symbols
The result binary is smaller.
2023-02-17 13:00:10 +08:00
Chocobo1
19f55512c1 GHA CI: don't overwrite system default compile flags
System might have some default compile flags which are crucial for security hardening so we
should append our flags instead of overwriting them.
2023-02-17 13:00:10 +08:00
Chocobo1
6e25db444e GHA CI: revert "[CI Ubuntu] Strip installed components"
For tester convenience, the binaries should ship with debug symbols.
This reverts commit b8aa9e5609.
2023-02-17 13:00:10 +08:00
Chocobo1
d2c4b69f47 GHA CI: use least permission level
`actions: write` is required by Chocobo1/setup-ccache-action.
`pull-requests: write` is required by actions/stale.
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
2023-02-17 13:00:10 +08:00
Chocobo1
4170b4e21b GHA CI: speed up package installation on macOS
Setup time is shortened by cutting down unnecessary operations.

https://docs.brew.sh/Manpage#environment
2023-02-17 13:00:10 +08:00
Vladimir Golovnev
9fb9ca47f6 Update the cached state once recheck is started
We have to force update the cached state, otherwise someone will be able to get an incorrect one during the interval until the cached state is updated in a regular way.

PR #18579.
Closes #18559.
2023-02-17 07:12:56 +03:00
Luka Čelebić
917190d936 Add shortcut for "Ban peer permanently" function
PR #18576.
2023-02-17 07:09:23 +03:00
Vladimir Golovnev
1e913f46f0 Rename isSeed to isFinished to correctly represent its meaning
PR #18580.
2023-02-17 07:08:00 +03:00
Vladimir Golovnev
4c0ebc0e0f Access some more data in a non-blocking manner
* Cache URL seeds to access in a non-blocking manner
* Provide non-blocking way to create magnet URI for torrent

PR #18572.
2023-02-16 08:49:16 +03:00
shitcod3r
1b0f5b8567 NSIS: Add Uzbek translation
PR #18568.
2023-02-15 11:58:06 +03:00
Chocobo1
6a4bb5c1b7 Migrate away from unsafe function
MooTools More has CVE-2021-20088 and qbt is affected by it by using the
unsafe function call `String.parseQueryString()`, so migrate away from
it.

PR #18554.
2023-02-15 13:59:21 +08:00
Burak Yavuz
3fea9f5a33 NSIS: Update Turkish translation
PR #18552.
2023-02-14 08:30:46 +03:00
Vladimir Golovnev
7600f59f3a Prevent precise timers from being used when unnecessary
The implementation of QTimer::singleShot() uses Qt::PreciseTimer if interval is less than 2 seconds. This isn't mentioned in the docs.
Qt::PreciseTimer increases the system's timer resolution which negatively affects power consumption.

PR #18555.
Closes #18350.
2023-02-14 08:26:08 +03:00
sledgehammer999
915121a0dd Sync translations from Transifex and run lupdate 2023-02-12 01:09:18 +02:00
Vladimir Golovnev
1be5b3abd8 Revamp torrent content widget
PR #18162.
2023-02-11 15:22:01 +03:00
brvphoenix
e37661d53a WebUI: Add filelog settings
PR #18506.
Closes #17421.
2023-02-10 20:12:22 +03:00
Vladimir Golovnev
d06f78dbbd Improve sync API performance
PR #18394.
2023-02-10 17:16:46 +03:00
Vladimir Golovnev
5d4766edbe Allow to add new torrents to queue top
PR #18518.
Closes #11599.
2023-02-10 17:15:41 +03:00
Vladimir Golovnev
72ac92ec68 Allow to use another icons in dark mode
PR #18435.
2023-02-07 22:07:15 +03:00
sledgehammer999
22ea508ff6 Merge pull request #18500 from sledgehammer999/tls_webui
Harden the SSL/TLS web server
2023-02-06 22:40:44 +02:00
sledgehammer999
b2213ded6d Support TLS 1.2+ only in the server
Closes #18122
2023-02-06 10:32:01 +02:00
sledgehammer999
1ea2fe5b8d Blacklist bad ciphers for TLS in the server
Prevents the ROBOT attack.
Closes #18483
2023-02-06 10:32:01 +02:00
Vladimir Golovnev
7227d2b2b2 Revert changes of conflict resolution strategy on automatic move
PR #18516.
Closes #18297.
Closes #18495.
2023-02-05 09:29:43 +03:00
Vladimir Golovnev
0dcbf9f698 Improve command line parameters dispatching
Encapsulate parameters dispatching in Application class.
Avoid serializing parameters when it is not necessary.

PR #18469.
2023-02-02 10:02:51 +03:00
Vladimir Golovnev
09e58df03f Don't increase limits when prefetching metadata for added magnets
Adjusting limits was made based on the belief that "forced" torrents (internally used for prefetching metadata)
are still under limits, but ignore only the queue. This is not really the case. "Forced" torrents ignore the limits
like "maximum active torrents/downloads", so adjusting limits is not required, and what's more, it really causes the
problem of unexpectedly activated previously queued torrents when adding some magnet using "Add new torrent" dialog.

PR #18503.
Fixes #18490.
2023-02-02 06:16:32 +03:00
sledgehammer999
d256db5072 Merge pull request #18466 from sledgehammer999/icon_for_status_pause
Use previous color for pause icon for indicating status
2023-01-27 20:27:48 +02:00
sledgehammer999
10153f0063 Use previous color for pause icon for indicating status
Affects transfer list and status filters
Related to PR #18110
2023-01-27 18:45:07 +02:00
sledgehammer999
c6a1b977b3 Merge pull request #18456 from sledgehammer999/win_shorcut_cwd
Fix PDB loading for valid stacktraces
2023-01-27 17:52:39 +02:00
sledgehammer999
870bb42e4f [WebUI] Use new pause icon color for toolbar/menu
This the webui part of PR #18110
2023-01-27 17:42:48 +02:00
sledgehammer999
b61c7b7220 Adjust env variable for PDB discovery 2023-01-26 13:42:09 +02:00
Vladimir Golovnev
c58fb92365 Suppress warning when session cookie name isn't overridden
PR #18455.
2023-01-26 07:00:20 +03:00
sledgehammer999
5e952a561b NSIS: Set shortcut's workind dir to install path 2023-01-25 20:35:21 +02:00
sledgehammer999
ca72360b6f Merge pull request #18432 from sledgehammer999/chinese_fix
Migrate setting about Simplified Chinese locale
2023-01-25 01:17:54 +02:00
sledgehammer999
630b4ed3b9 Migrate settings much earlier 2023-01-24 10:23:12 +02:00
Deividas
cba9680ef9 NSIS: Update Lithuanian translation
PR #18434.
2023-01-23 14:34:36 +03:00
Vladimir Golovnev
2310dcd136 Reload system tray icon to replace menu
PR #18250.
Closes #18074.
2023-01-22 16:48:58 +03:00
Nick Korotysh
ee00a80796 Drop extra semicolon
Fixes build with -pedantic flag.

PR #18431.
2023-01-22 14:47:19 +03:00
sledgehammer999
051bac5e59 Migrate setting about Simplified Chinese locale
Related to PR #17978
2023-01-22 02:31:58 +02:00
Vladimir Golovnev
771c58d000 WebAPI: Allow to specify session cookie name
PR #18384.
Closes #18329.
2023-01-17 09:31:17 +03:00
Vladimir Golovnev
53cec6db09 Provide scaled pixmaps by UIThemeManager
Avoid leaking the paths of the theme resource files outside of the theme support implementation.

PR #18269.
2023-01-17 09:29:00 +03:00
Midhun V Nadh
43e059801e Remove suggestions while searching for torrents
Don't want torrent search history to pop up next time you try to search for torrents, right?
There are people who would search for 18+ content and what they searched would load up next time they are about to search.

PR #18285.
2023-01-16 15:12:35 +03:00
Nowshed H. Imran
ce35a06ec3 Fix Pause icon
PR #18110.
2023-01-16 15:01:20 +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
brvphoenix
0d376e7fd6 WebUI: Add log viewer
The javascript implementation of multi-select menu is from the source
https://github.com/PhilippeMarcMeyer/vanillaSelectBox. It is licensed
under the MIT License. Some minor fixes is made to pass the lint.

Co-authored-by: brvphoenix <30111323+brvphoenix@users.noreply.github.com>
Co-authored-by: ttyS3 <ttys3.rust@gmail.com>

PR #18290.
2023-01-16 14:55:44 +03:00
Vladimir Golovnev
2b20d5b260 Fix startup performance on Qt5
Use more appropriate container (QList) for resume data queue buffer.
QVector in Qt5 has poor performance of the first element taking operation,
which is used to process the resume data queue. In Qt6, QVector is just an
alias for QList, so there was no problem there.

PR #18387.
Fixes #18341.
2023-01-16 14:45:12 +03:00
Vladimir Golovnev
719e4afd8c Remove confusing helpers from Session interface
Such helpers do not make practical sense, since they can be trivially implemented on top of the base interface, but at the same time they can lead to undesirable consequences when some calling code requires slightly different behavior than another.

PR #18367.
Fixes #18338.
2023-01-16 14:43:36 +03:00
Vladimir Golovnev
9cdf660ddb Use QThreadPool to invoke free disk space checking jobs
Prevent the creation of an excessive number of threads.
PR #18347.
Closes #18202.
2023-01-16 14:31:49 +03:00
Vladimir Golovnev
5dbccf3473 Add all torrents passed via the command line
PR #18296.
Closes #18289.
2023-01-16 06:54:02 +03:00
Vladimir Golovnev
8db2d04dbb Allow to modify default UI theme
PR #18214.
2023-01-14 14:02:20 +03:00
thalieht
209850064a WebUI: Add "Resume data storage type" option
PR #18357.
2023-01-13 10:58:46 +03:00
brvphoenix
e628b7d527 WebUI: Add missing icons
PR #18380.
2023-01-13 10:52:53 +03:00
Fidel Selva
61dbb211c0 WebUI: Improve hotkeys
PR #18326.
Fixes #18325.
Fixes #14033.
2023-01-06 22:17:15 +03:00
Jason Carr
71f4a5667c WebUI: change order of accepted types of file input
PR #18286.
2022-12-28 13:20:02 +03:00
brvphoenix
b33dc7d831 Unify the way to generate the language list in WebUI and GUI
PR #17994.
2022-12-25 16:44:37 +03:00
qbittorrentfan
c5a4a0db2c properties endpoint returns name/torrentID
PR #18218.
2022-12-25 16:41:55 +03:00
sotiris-bos
b9e045e80b WebAPI: Expose "IS PRIVATE" flag
PR #18227.
Closes #16052.
2022-12-25 16:41:00 +03:00
Vladimir Golovnev
cfd0c5433e Re-allow to use icons from system theme
PR #18195.
2022-12-25 16:25:56 +03:00
Vladimir Golovnev
ebad387c1a Apply correct tab order to Category options dialog
Also pre-select (sub)category name for editing when dialog is opened for creating new (sub)category.

PR #18270.
Closes #18265.
2022-12-25 16:14:59 +03:00
xavier2k6
3f39bd9f35 GHA CI: Bump Boost version to 1.81.0 on Windows/macOS
PR #18279.
2022-12-24 20:03:12 +03:00
Jonatan
f8236eb397 NSIS: Update Swedish translation
PR #18240.
2022-12-22 15:01:23 +03:00
David Xuang
23a56c95e3 Prevent incorrect line breaking
PR #18236.
2022-12-22 14:58:26 +03:00
Nowshed H. Imran
6f8aa07a10 Fix icon colors inconsistencies
PR #18226.
Fixes #18163.
Fixes #18222.
2022-12-22 14:14:29 +03:00
Vladimir Golovnev
594f9e8632 Use "additional trackers" when metadata retrieving
This can help when the DHT nodes are few.

PR #18251.
Closes #18244.
2022-12-22 08:21:29 +03:00
Vladimir Golovnev
aeae065007 Correctly count the number of torrents in subcategories
PR #18261.
Closes #18137.
2022-12-22 08:19:33 +03:00
Vladimir Golovnev
b12fdcf018 Correctly detect drive letter in path
PR #18258.
Closes #18224.
2022-12-20 07:14:31 +03:00
Vladimir Golovnev
84fabf14c8 Merge pull request #18034 from glassez/fetch-async
Fetch data asynchronously
2022-12-15 06:59:29 +03:00
Vladimir Golovnev
0ec47db9cd Don't drop !qB extension when rename incomplete file
PR #18186.
Closes #18181.
2022-12-15 06:57:07 +03:00
sledgehammer999
3cf0004665 Merge pull request #18200 from sledgehammer999/ci_appimage
CI: Build AppImage
2022-12-14 10:17:43 +02:00
Vladimir Golovnev (Glassez)
40258f6a2f Stop async worker at correct place 2022-12-14 10:42:40 +03:00
Vladimir Golovnev (Glassez)
b335114219 Use better method to set bit 2022-12-14 10:41:04 +03:00
Vladimir Golovnev (Glassez)
998b08f5d8 Set metadata asynchronously 2022-12-14 10:41:04 +03:00
Vladimir Golovnev (Glassez)
991c30943a Allow to fetch data asynchronously 2022-12-14 10:41:04 +03:00
sledgehammer999
ad2be39c33 [CI Ubuntu] Build AppImage
Upload an AppImage artifact on CI builds. This AppImage is a
simplified version of the official one. It is meant to help
with debugging PRs that fix issues.
2022-12-14 03:28:05 +02:00
BallsOfSpaghetti
c3936cd4b6 Add "Rename rule" button to RSS Downloader
PR #18141.
2022-12-11 11:18:40 +03:00
Chocobo1
d2e595aac3 Remove docker information
It has been moved to its own repo: https://github.com/qbittorrent/docker-qbittorrent-nox

PR #18199.
2022-12-11 11:24:13 +08:00
sledgehammer999
b8aa9e5609 [CI Ubuntu] Strip installed components 2022-12-10 16:53:42 +02:00
Torsten Schwarz
2109c4e1ae WebUI: Make rename file dialog resizable
PR #18154.
2022-12-10 10:17:21 +03:00
Vladimir Golovnev
ac3ad17a9e Ensure thread is stopped before deleting QThread
PR #18037.
2022-12-08 08:37:14 +03:00
Vladimir Golovnev
31c7306bd2 Correctly load folder based UI theme
PR #18173.
2022-12-08 08:33:55 +03:00
Chocobo1
4741aab7a3 Merge pull request #18094 from Chocobo1/color
Revise text color for completed status
2022-12-02 13:17:00 +08:00
Vladimir Golovnev
679e3b8bea WebAPI: return paths using platform-independent separator format
PR #18118.
Closes #18096.
2022-12-01 08:16:43 +03:00
Vladimir Golovnev
25ea0d274b Destroy desktop integration at correct place
Otherwise it is destructed in QObject destructor, i.e. after GUI application is already destructed.
This can be related to some problems with system tray icon.

PR #18108.
Closes #18093.
2022-11-30 20:09:51 +03:00
sledgehammer999
12b58be8c2 Merge pull request #18104 from sledgehammer999/remove_dead_code
Remove dead code
2022-11-30 15:19:54 +02:00
Chocobo1
e4f1485c82 Fix wrong color code
Must have been a copy-paste error...
2022-11-30 15:23:49 +08:00
Vladimir Golovnev
1b2ff0f6f8 Handle tracker status updates asynchronously
* Add a helper for performing jobs in Session context
* Handle tracker status updates asynchronously

PR #18010.
2022-11-30 09:54:30 +03:00
Vladimir Golovnev
a31755bbc8 Switch SQLite to use WAL journaling mode
PR #18048.
2022-11-30 09:50:26 +03:00
sledgehammer999
311e0f21eb Remove dead code
Leftover from the system tray code refactoring.
2022-11-29 21:30:26 +02:00
sledgehammer999
b86366f243 Merge pull request #18083 from now-im/patch-1
Fix Speed limit icon size
2022-11-29 17:27:16 +02:00
sledgehammer999
58d1c80b12 Merge pull request #18076 from thalieht/iconqueued
WebUI: Fix missing "queued" icon
2022-11-29 17:26:38 +02:00
Chocobo1
182915f801 Revise color for completed status
Now it uses the purple color which matches the completed status icon color.

Related: #18078.
2022-11-29 07:27:00 +08:00
sledgehammer999
50c08e55cd Merge pull request #18086 from sledgehammer999/translation_fix
Remove trailing newline from translation file
2022-11-28 21:05:09 +02:00
sledgehammer999
4307a09621 Remove trailing newline from translation file
I also fixed it on Transifex.
2022-11-28 18:41:26 +02:00
Nowshed H. Imran
d531d6d221 Fix Speed limit icon size
Fixes #18067.
2022-11-28 19:59:09 +06:00
thalieht
4cf94a6fa0 WebUI: Fix missing "queued" icon 2022-11-28 01:45:41 +02:00
sledgehammer999
4cb60f4870 Sync translations from Transifex and run lupdate 2022-11-23 21:22:54 +02:00
Vladimir Golovnev
d82edb2838 Bump to 4.6.0alpha1 2022-11-21 22:54:37 +03:00
sledgehammer999
c91eefe469 Update Changelog 2022-11-21 01:13:29 +02:00
sledgehammer999
327affa340 Merge pull request #18002 from sledgehammer999/v450_changelog
Update Changelog
2022-11-20 22:11:01 +02:00
sledgehammer999
4e7c2589e4 Update Changelog 2022-11-20 21:01:54 +02:00
sledgehammer999
17ce07230d Merge pull request #18038 from glassez/tree-update
Revert "Use another workaround to update files tree view"
2022-11-20 20:57:27 +02:00
Vladimir Golovnev
fda6c9a3d9 Prevent object from being used after destruction
PR #18031.
2022-11-20 15:03:36 +03:00
Vladimir Golovnev (glassez)
92af2922c7 Revert "Use another workaround to update files tree view"
This reverts commit 0f82c16936.
2022-11-19 21:44:15 +03:00
Vladimir Golovnev
1cee69da6c Don't miss to store metadata of new torrent
PR #18033.
2022-11-19 13:33:38 +03:00
Vladimir Golovnev
f54b66eb75 Merge pull request #17996 from glassez/non-blocking
Perform some unavoidable blocking calls asynchronously
2022-11-14 20:55:12 +03:00
Vladimir Golovnev (Glassez)
3563bad5fc Revamp implementation of port forwarder 2022-11-14 08:28:35 +03:00
Vladimir Golovnev (Glassez)
1f3f96f7aa Set metadata asynchronously 2022-11-14 08:27:01 +03:00
Vladimir Golovnev (Glassez)
7022adb89b Change current IP filter asynchronously 2022-11-14 08:26:49 +03:00
Vladimir Golovnev (Glassez)
bac57de5f5 Update listening status using native session extension 2022-11-14 08:22:12 +03:00
Vladimir Golovnev
bdd56a52d3 Destroy object within appropriate thread
PR #18008.
2022-11-13 08:28:33 +03:00
Vladimir Golovnev
dcdbd02102 Delete database file only after it is released
PR #18005.
2022-11-13 08:27:48 +03:00
Vladimir Golovnev
b68c4e2106 Save correct resume data when added new torrent
PR #18003.
2022-11-13 08:26:25 +03:00
Vladimir Golovnev
67cb75e9d3 Merge pull request #18001 from glassez/update-tree
Use another workaround to update files tree view

This is alternative approach to #17786. It uses the similar workaround as was used a long time with Qt5 and stoped working with Qt6 so it is adjusted in this PR.

Also this fixes content model resetting handling.
2022-11-12 14:00:25 +03:00
Vladimir Golovnev
f9eefe866c Merge pull request #17992 from glassez/preloading-magnet
Improve handling of preloading metadata.
This also allows to avoid blocking calls when performing some actions.
2022-11-10 19:22:20 +03:00
Vladimir Golovnev (Glassez)
c636618cf3 Correctly handle model resetting 2022-11-10 13:32:48 +03:00
Vladimir Golovnev (Glassez)
0f82c16936 Use another workaround to update files tree view 2022-11-10 13:31:08 +03:00
Chocobo1
d328eeb5be Merge pull request #17980 from Chocobo1/model
Reserve space before appending elements
2022-11-10 17:24:17 +08:00
Chocobo1
d90ea0d3be Move increment out of loop 2022-11-10 17:18:28 +08:00
Chocobo1
e7ece66717 Clean up code 2022-11-09 23:17:22 +08:00
Vladimir Golovnev
6c9c40fd7c Avoid blocking call when changing libtorrent session settings
We don't really need to get currently used settings pack in order to apply changes to session settings. It is enough to apply settings pack that contains only updated settings.

PR #17989.
2022-11-09 08:02:34 +03:00
Chocobo1
529c1ec9f4 Reserve space before appending elements 2022-11-08 13:50:03 +08:00
Chocobo1
93429840c8 Fix typos 2022-11-08 13:50:01 +08:00
Vladimir Golovnev (Glassez)
6aee7f95b7 Add torrent for preloading magnet asynchronously 2022-11-08 08:29:16 +03:00
Vladimir Golovnev (Glassez)
0b70ccf9e9 Cache torrent handles of preloading magnets 2022-11-08 08:29:15 +03:00
Vladimir Golovnev (Glassez)
da586828be Don't perform unnecessary actions with preloading magnets 2022-11-08 08:29:10 +03:00
Vladimir Golovnev
2e4431f0b8 Save torrents queue w/o blocking calls
PR #17988.
2022-11-08 07:00:40 +03:00
BallsOfSpaghetti
162273da47 Add confirmation to resume/pause all
This adds a confirmation dialog to Pause All and Resume All. First I wanted to only add it in Tray, but honestly, clicking around in the menu, using hotkeys might trigger it just as easy.

Closes #17683.
PR #17945.
2022-11-08 11:31:18 +08:00
sledgehammer999
22fb9797c4 Merge pull request #17978 from sledgehammer999/fix_chinese_locale
Fine tune translations loading for Chinese locales
2022-11-08 02:41:34 +02:00
Chocobo1
f6735401f4 Add port forwarding option for embedded tracker
Closes #17781.
PR #17981.
2022-11-07 11:32:11 +08:00
sledgehammer999
06c4c58613 Fine tune translations loading for Chinese locales
Closes #17506
2022-11-06 14:01:16 +02:00
Vladimir Golovnev
c80238d66f Don't use extra variable to distinguish restored torrents
PR #17984.
2022-11-06 14:24:49 +03:00
Hanabishi
6a560016dd Implement Peer ID Client column for Peers tab
PR #17940.
2022-11-06 12:21:31 +08:00
Chocobo1
99b7663fa9 Revise interface of port forwarder
This eases the usage of port forwarder as the caller code doesn't need
to store previous used port and now can rely on port forwarder doing
all the hard work.

PR #17967.
2022-11-05 11:33:21 +08:00
Chocobo1
be0f34a69e Merge pull request #17900 from Chocobo1/alerts
Handle all types of alerts on shutdown
2022-11-03 12:29:38 +08:00
Chocobo1
3a2e73cc94 Avoid out-of-bounds access
This happens when the `index` is a negative number.
Added `Q_ASSERT()` to catch coding errors at debug run time.

PR #17953.
2022-10-31 12:34:20 +08:00
xavier2k6
3ee0457cfa Raise minimum libtorrent versions to 1.2.18/2.0.8
PR #17954.
2022-10-30 08:30:31 +03:00
Vladimir Golovnev
e19173c1f3 Prevent new torrent from saving resume data twice
PR #17951.
2022-10-30 08:28:51 +03:00
Vladimir Golovnev
4a5d2e2558 Correctly initialize torrent stop condition
PR #17950.
2022-10-30 08:28:13 +03:00
Nowshed H. Imran
027d6be48f Fix checked-completed icon visibility in dark theme
PR #17946.
2022-10-29 12:14:46 +08:00
Faisal A. F. Rahman
0f2cc92ba2 NSIS: Update Indonesian translation
PR #17890.
2022-10-28 11:55:05 +08:00
Chocobo1
07bb1df74f Merge pull request #17942 from Chocobo1/icons
Update icon guidelines
2022-10-28 11:54:26 +08:00
Vladimir Golovnev
c29a6079bf Don't forget to create stop_condition column
PR #17935.
2022-10-26 18:25:52 +03:00
Chocobo1
dfb56ce31c Update icon guidelines 2022-10-26 11:42:39 +08:00
Chocobo1
5a8027ae1f Remove unused resources 2022-10-26 11:42:39 +08:00
Vladimir Golovnev
bb2caabd61 Correctly destroy startup resume data storage
PR #17930.
2022-10-25 11:37:51 +03:00
Chocobo1
14e4bc7eea WebUI: use proper comparison for numbers
Closes #17920.
PR #17926.
2022-10-25 12:46:02 +08:00
xavier2k6
9fb8f765e8 GHA CI: Bump libtorrent version(s)
* https://github.com/arvidn/libtorrent/releases/tag/v2.0.8
* https://github.com/arvidn/libtorrent/releases/tag/v1.2.18

PR #17924.
2022-10-25 12:44:57 +08:00
Chocobo1
fe0be98fde Merge pull request #17918 from Chocobo1/portForwarding
Avoid redundant lookups in port forwarder
2022-10-25 12:44:23 +08:00
BallsOfSpaghetti
fdba525e62 Introduce a 'change listen port' cmd option
Closes #17789.
PR #17862.
2022-10-25 12:43:38 +08:00
Chocobo1
dfdaa706bd Move code around 2022-10-24 00:34:25 +08:00
Chocobo1
1a782a9362 Avoid redundant lookups in port forwarder 2022-10-24 00:34:25 +08:00
Chocobo1
5f2d807861 Ensure ongoing storage moving job will be completed when shutting down
Discussion: https://github.com/qbittorrent/qBittorrent/pull/17885#issuecomment-1282467041
2022-10-23 17:55:58 +08:00
Nathan Lewis
f2dd1e6456 Add a "Use proxy for hostname lookup" option
Add a UI option for "Use proxy for hostname lookup" option and plumb
it into libtorrent's settings_pack.proxy_hostnames option.  This is
available for SOCKS5 and HTTP proxies, and defaults to true, which
is the previous functionality.  Hostname lookups can be forced to be
local by unchecking this option, which can aid compatibility with
certain non-compliant proxy servers.

Closes #17902.
PR #17904.

Co-authored-by: Nathan Lewis <saturn@saturn49.dyndns.org>
2022-10-23 15:31:02 +08:00
Chocobo1
155e73df16 WebUI: remove unused include
Closes #15761.
PR #17895.
2022-10-23 12:33:45 +08:00
Vladimir Golovnev
05b7194bf7 Correctly set "stop condition" on force recheck invoked
PR #17915.
Closes #17913.
2022-10-22 17:43:17 +03:00
Maksim Derbasov
597444c527 Make GeoIPDatabase interface safer
PR #17899.
2022-10-21 13:31:37 +08: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
106adf135c Handle all types of alerts on shutdown
There might be alerts already queued in buffer waiting to be handled at
the time of pausing the session, so don't skip over them.
2022-10-18 14:31:57 +08:00
Chocobo1
dcfd367ff8 Merge pull request #17885 from Chocobo1/shutdown
Revise "save resume data" handling on shutdown
2022-10-18 14:27:07 +08:00
Chocobo1
67ee43fac1 Merge pull request #17878 from Chocobo1/webui
WebUI: handle drag and drop events
2022-10-18 14:26:35 +08:00
Chocobo1
a325ab8d6e Delay saving session statistics
Pausing the libtorrent session should be scheduled before this.
2022-10-17 13:53:55 +08:00
Chocobo1
c94152c47c Reuse alert dispatcher
Instead of using a specific alert handler in `SessionImpl::saveResumeData()`, reuse the generic
one.
2022-10-17 13:53:54 +08:00
Chocobo1
a44bca3f07 Revise "save resume data" handling on shutdown
When shutting down, instead of waiting for all types of alert from
libtorrent, now it only waits for specific alert types. This potentially
help shorten the shutdown waiting time.
2022-10-17 13:53:27 +08:00
thalieht
698284f00e Allow to set torrent stop condition in WebUI
PR #17876.
2022-10-15 11:06:56 +08:00
Chocobo1
3b9d68f344 WebUI: handle drag and drop events
This allows user to drag and drop .torrent files and URL links onto the
main window and will open the respective dialog.
Dropping folders are not supported due to technical reasons.

Closes #6038.
2022-10-14 14:30:26 +08:00
tristanleboss
e028d8085b Add a "Moving" status filter
Because sometime (when your save and download path are on different drives, when your disk drive is super busy, ...) move operations can stack up, I add this "Moving" status filter so you can see in a blink of the eye which torrents are in a move state.

PR #17810.
2022-10-14 13:12:51 +08:00
Chocobo1
af1c97e2ea WebUI: filter file selection to bittorrent files
Note that the user can still overwrite the selection filter and select
other files.
2022-10-13 14:32:00 +08:00
Chocobo1
b95d97d07b WebUI: simplify attribute usage
The `multiple` attribute is a boolean value and its presence equals to
`true`.
2022-10-13 14:31:58 +08:00
schnurlos
17a5bd03c5 NSIS: update German translation
Adding Windows 10 requirement.
PR #17860.
2022-10-12 13:49:19 +08:00
Ícaro
ada594faf3 NSIS: update Portuguese BR translation
PR #17857.
2022-10-12 13:48:27 +08:00
Vladimir Golovnev
4f0990dc29 Use 'fail if exist' strategy on automatic move
Prevent existing files overwriting when torrent is moved automatically (e.g. when moved from incomplete to final save path).

PR #17855.
2022-10-11 10:05:21 +03:00
Chocobo1
f66ec4430d Merge pull request #17858 from Chocobo1/infohash
Show N/A when there is no hash
2022-10-10 14:35:40 +08:00
Vladimir Golovnev
67357e9964 Allow to set torrent stop condition
PR #17814.

Closes #17792.
Closes #929.

(Actually it should close all issues about lack of ability to stop torrent after metadata downloaded or after files are initially checked.)

Also makes explicit the temporary start of the torrent in the case when recheck of the stopped torrent is performed.
2022-10-09 16:07:16 +03:00
Chocobo1
7eb97348de GHA CI: add missing Qt module 2022-10-09 15:24:30 +08:00
Chocobo1
0279b80b46 Don't use hardcoded URL scheme list
This is to avoid the list being outdated.
2022-10-09 14:12:02 +08:00
Chocobo1
d3936c07c7 Capitalize header title
This is the only one not properly capitalized.
2022-10-09 14:12:02 +08:00
Chocobo1
aa022400f7 Use Path internal representation for internal value in model
The internal value is used for sorting comparisons and not displayed
to the user, so make a shortcut.
2022-10-09 14:12:01 +08:00
Chocobo1
66795d533a Show 'N/A' when there is no hash
This is to follow 'General' tab which show 'N/A' when there is no hash.
2022-10-09 14:12:01 +08:00
Chocobo1
ce7d8dee28 Merge pull request #17829 from Chocobo1/focus
Set proper focus on widget
2022-10-09 13:48:13 +08:00
Chocobo1
1f799689ed Support 'file exists' situation
The lt::status_t::file_exist is returned when lt::move_flags_t::fail_if_exist is used, which means the whole move operation failed. So hanlde this condition correctly (even if the fail_if_exist isn't used in the code base currently).

PR #17853.
2022-10-09 13:47:52 +08:00
sledgehammer999
3463442631 Merge pull request #17835 from RockyTDR/patch-1
NSIS: Update Dutch translation
2022-10-08 20:06:02 +03:00
sledgehammer999
c35ca52b00 Merge pull request #17834 from maboroshin/master
NSIS: Update Japanese translation
2022-10-08 20:05:25 +03:00
sledgehammer999
6d501c2e6e Merge pull request #17828 from PriitUring/NSIS-Estonian
NSIS: Update Estonian translation
2022-10-08 20:04:27 +03:00
tristanleboss
a71d7e6557 Add infohash and download path columns
PR #17799.
2022-10-08 11:43:52 +08:00
Chocobo1
30c2f9d9f3 Merge pull request #17830 from Chocobo1/trackers
Fix wrong 'tracker error' count
2022-10-06 12:32:16 +08:00
Andrei Stepanov
544f9675c6 NSIS: Update Russian translation
PR #17827.
2022-10-06 06:36:55 +03:00
Thomas De Rocker
0c76321a6a Update dutch.nsi
Translate new strings and polish existing strings
2022-10-05 19:40:40 +02:00
maboroshin
10349b84d6 Update japanese.nsi 2022-10-06 01:45:07 +09:00
Chocobo1
6fa4305aba Fix wrong 'tracker error' count
This happens when a torrent contains some tracker URLs that share the same domain.
Closes #17808.
2022-10-05 14:43:52 +08:00
Chocobo1
d9af207a11 GHA CI: add missing cmake flag for Qt6 2022-10-05 13:17:54 +08:00
vlakoff
ad59eb4dfc Revert "Consider brackets within wildcard as regular characters"
The implementation appeared to be broken.

This reverts #16965.
PR #17820.
2022-10-05 12:43:43 +08:00
Priit Uring
874b015b20 NSIS: Update Estonian translation 2022-10-05 00:16:26 +03:00
Chocobo1
21aabfdcb5 Clean up code 2022-10-05 00:58:57 +08:00
Vladimir Golovnev
e7370d1a0f Don't pollute move queue by torrents w/o metadata
There's really nothing to move if the torrent still doesn't have metadata.
Additionally, such torrents in the queue can lead to unexpected behavior
when reloading the torrent after metadata is received.

PR #17823.
2022-10-04 19:41:36 +03:00
Chocobo1
855f727451 Set proper focus on widget
And also allow keyboard tabbing to the Browse button.
Fix up 6ab35512da.
2022-10-04 16:54:20 +08:00
Chocobo1
3b0ac0962e Merge pull request #17817 from Chocobo1/modules
GHA CI: only install required Qt components
2022-10-04 13:08:03 +08:00
sledgehammer999
617dedc464 Merge pull request #17812 from sledgehammer999/nsis_refactor
NSIS refactoring
2022-10-03 14:39:44 +03:00
Chocobo1
8b4a0da235 GHA CI: bump Qt version to 6.4.0 2022-10-03 13:04:28 +08:00
Chocobo1
dcc5206e3d GHA CI: only install required Qt components
So it won't waste time download/install unused Qt components.
2022-10-03 13:04:24 +08:00
Chocobo1
9a81cbf4c0 Improve column updates granularity
PR #17806.
2022-10-03 11:56:48 +08:00
xavier2k6
d96ed5f4a4 GHA CI: Bump Windows/macOS Qt6 version to 6.4.0
Suppressed gnu-zero-variadic-macro-arguments warning on macOS (Qt6 only).
PR #17801.
2022-10-03 11:56:08 +08:00
sledgehammer999
102b6c32eb NSIS: Refactor configuration to ease installer creation via scripting 2022-10-02 12:59:40 +03:00
sledgehammer999
2af1e1874e NSIS: Require Windows 10 1809 for Qt6 builds
Also refactor the config.nsi with more defines that control the build.
Closes #17783
2022-10-02 12:54:36 +03:00
sledgehammer999
680455a21b NSIS: Drop hardcoded qt's translation filenames 2022-10-02 12:54:35 +03:00
Vladimir Golovnev
b568cdb1aa Correctly load state of use download folder
PR #17807.
Closes #17793.
2022-10-02 08:46:27 +03:00
Chocobo1
bc0d906adc Merge pull request #17786 from Chocobo1/selection
Fix torrent content checkboxes not updated properly
2022-10-01 14:00:49 +08:00
Chocobo1
2b385e5f92 WebUI: don't disable combobox for file priority
Closes #17794.
PR #17797.
2022-10-01 12:49:02 +08:00
Vladimir Golovnev
616057a433 Improve session statistics handling
PR #17779.
2022-09-29 06:49:34 +03:00
Chocobo1
9a20aa51de Fix torrent content checkboxes not updated properly
And reduce emitting redundant 'data updated' signals.

Closes #17144, #17764.
2022-09-29 00:00:48 +08:00
Chocobo1
6c8b31420c Remove unused functions 2022-09-27 14:52:52 +08:00
Chocobo1
0514cb304d Fix coding style 2022-09-27 14:52:52 +08:00
Vladimir Golovnev
0a4ee60ea0 Avoid blocking call when save resume data
PR #17755.
2022-09-25 16:40:16 +03:00
Chocobo1
caa30e41d8 Merge pull request #17765 from Chocobo1/filterbar
Fix 'Filter Sidebar' size restored incorrectly
2022-09-25 12:37:50 +08:00
Chocobo1
dc76a175ad WebUI: allow string to be translated
Closes #17759.
2022-09-24 15:29:14 +08:00
Chocobo1
92768c36aa Fix 'Filter Sidebar' size restored incorrectly
And with a bit of code clean up.
Closes #17756.
2022-09-24 15:29:12 +08:00
Chocobo1
2a3a4bff70 Merge pull request #17737 from Chocobo1/logview
Use proper color for highlighted text in log widget
2022-09-23 13:31:04 +08:00
Andrew
cacfe4f3ca Fix "Open destination folder" delay on Windows
Replaced QDesktopServices by native Windows function
to open destination folder due to QDesktopServices issues on Windows.
The issues are described in #17482 and even more detailed in #17025.

Closes #17482.
PR #17723.
2022-09-23 13:30:31 +08:00
Chocobo1
37150520e1 Use proper color for highlighted text in log widget
The color is either from qbt theme pack or desktop environment.

Note that Windows default theme do not use highlighted text color.
Other themes (either OS default or qbt themes) are closer to native
look when highlighted text color is in action.
2022-09-21 01:04:11 +08:00
Chocobo1
3aadb63d80 Simplify code
Don't use replacement placeholder and use string append which is faster.
2022-09-21 00:42:15 +08:00
Chocobo1
0e0b8d1027 Revive dark theme detection
The code was removed in 199d770e15 and now revived.
2022-09-21 00:42:15 +08:00
sledgehammer999
5e4a94e6b6 Bump to 4.5.0beta1 2022-09-18 20:13:29 +03:00
sledgehammer999
db7850e218 Sync translations from Transifex and run lupdate 2022-09-18 20:13:29 +03:00
Chocobo1
1dcfd7bb59 Improve docker documentation
Clarify that some paths should be full paths.

Related #17729.
PR #17736.
2022-09-18 13:10:24 +08:00
Chocobo1
b28704a6ec Merge pull request #17725 from Chocobo1/downloadsDone
Clean up 'recursive download' related code
2022-09-16 12:07:36 +08:00
Chocobo1
0c6e56a150 Merge pull request #17713 from Chocobo1/trackers
Revise 'Add trackers' dialog
2022-09-16 12:06:22 +08:00
sledgehammer999
d71ff734a9 Merge pull request #17705 from sledgehammer999/gplv2_vs_gplv3
Copyright and license updates
2022-09-15 11:19:23 +03:00
Chocobo1
90652d3555 WebAPI: fix wrong behavior for shutdown action
Qt6 has changed implementation for `QCoreApplication::quit` and therefore it is not suitable
anymore.

Closes #17709.
PR #17720.
2022-09-15 11:56:00 +08:00
Chocobo1
f8a2fbc4c5 Clean up 'recursive download' related code
Don't load .torrent files too early, otherwise qbt might emit a dubious error log message if the
.torrent file is invalid.
2022-09-15 00:15:53 +08:00
Chocobo1
80759f9e69 Reorder operations in 'torrent finished' handler
Avoid redundant data fetch.
Remove debug messages.
2022-09-15 00:12:11 +08:00
Chocobo1
e692a191ed Revise 'Add trackers' dialog
* Now it allow user to add tracker to different tier.
* The downloaded trackers are now displayed as is (without modifying).
* Now the dialog remember dialog size and last used URL.

Closes #17692.
2022-09-14 01:20:30 +08:00
Chocobo1
4e06a9629a WebUI: alert when HTTPS settings are incomplete
Closes #17696.
PR #17701.
2022-09-13 13:00:11 +08:00
sledgehammer999
b3334e5fac Binary distributions are GPLv3+ licensed 2022-09-13 01:33:08 +03:00
Chocobo1
4e326229da Rename action 2022-09-12 23:25:36 +08:00
sledgehammer999
021222b407 Merge pull request #17654 from hugok79/patch-1
Update org.qbittorrent.qBittorrent.desktop
2022-09-12 16:39:46 +03:00
Chocobo1
6c60fa5161 Don't reorder URLs when copied from the clipboard
Also process URLs in the same order as from the text edit widget.
Closes #17693.
PR  #17700.
2022-09-12 12:22:45 +08:00
sledgehammer999
cd405ffc32 Remove duplicate information
This information exists in git's commit history and in the AUTHORS file.
2022-09-12 02:26:35 +03:00
sledgehammer999
537b1c1ea9 Update AUTHORS file 2022-09-12 02:26:34 +03:00
Chocobo1
257914b0d5 Merge pull request #17684 from Chocobo1/subnet
Allow to use subnet notation in reverse proxy list
2022-09-10 13:05:06 +08:00
Chocobo1
5cfaaa5d1a Add tooltips 2022-09-08 14:44:18 +08:00
Chocobo1
109c45bb95 Allow to use subnet notation in reverse proxy list
Closes #17475.
2022-09-08 14:44:18 +08:00
Chocobo1
851374e517 Rename function 2022-09-07 14:11:23 +08:00
Chocobo1
4094a4c448 Simplify functions 2022-09-07 14:11:02 +08:00
Tyler Dunn
987e1b544a Don't autofill background color on macOS
PR #17669.
2022-09-06 09:44:18 +08:00
Vladimir Golovnev
5cf6b1cbde Handle more torrent conflicts
PR #17668.
This is a continuation of #17576.
Handles the case when you add hybrid torrent by v1-only magnet link and this torrent is already known by its full hybrid info hash (i.e. by both v1 and v2 info hashes).
2022-09-05 06:22:42 +03:00
Vladimir Golovnev
4318de6dc5 Add ability to run external program on torrent added
PR #17646.
2022-09-04 07:51:50 +03:00
summer
459d1cf82c Allow to pause a checking torrent from context menu
PR #17611.
2022-09-04 12:03:10 +08:00
Chocobo1
48d52d9ab7 Merge pull request #17670 from Chocobo1/i18n
Make strings translatable
2022-09-04 12:00:36 +08:00
Hugo Carvalho
16a99e687f Update org.qbittorrent.qBittorrent.desktop 2022-09-03 14:47:22 +01:00
Chocobo1
fb37b0c147 Suppress warning
Seems `lupdate` tool cannot correctly recognize the class/context of `tr()` here, so specify the
class/context manually.
2022-09-03 15:26:40 +08:00
Chocobo1
9877ff330e Make strings translatable 2022-09-03 15:23:00 +08:00
Tyler Dunn
6f88609d60 Avoid string lookup when setting row color
PR #17665.
2022-09-03 14:58:53 +08:00
Tyler Dunn
6263c4786b Allow 'Export .torrent' tooltip to be translatable
Closes #17660.
PR #17664.
2022-09-03 14:58:23 +08:00
Chocobo1
3061f6cf5b GHA CI: treat compile warnings as errors
PR #17651.
2022-09-02 13:09:43 +08:00
Hugo Carvalho
cc8c1a5748 Update org.qbittorrent.qBittorrent.desktop
Sort language codes alphabetically
2022-09-01 13:31:48 +01:00
Vladimir Golovnev
ca897a8a35 Cache download/upload limit values
PR #17640.
2022-09-01 06:54:51 +03:00
Vladimir Golovnev
77dd8bd27b Parse torrent info separately from resume data
PR #17639.
2022-09-01 06:54:12 +03:00
Vladimir Golovnev
fe34749cfe Proactively append extension to incomplete files
PR #17631.
2022-09-01 06:53:29 +03:00
Vladimir Golovnev
646322b2a2 Let Qt handle system tray icon availability
PR #17519.
2022-08-31 08:02:44 +03:00
Chocobo1
670b381df7 Merge pull request #17616 from Chocobo1/webui
Make WebUI images self-contained
2022-08-29 13:09:21 +08:00
sledgehammer999
ddf4b94bc6 Sync translations from Transifex and run lupdate 2022-08-29 00:48:24 +03:00
Vladimir Golovnev
794a92f911 Make qBittorrent compatible with libtorrent master
PR #17604.
2022-08-28 11:38:28 +03:00
Chocobo1
f6e2715f4a Apply forward declaration
Follow up 525692759d.
PR #17621.
2022-08-28 13:25:38 +08:00
Chocobo1
082e6f8830 Apply i18n translation only to built-in WebUI 2022-08-27 13:55:05 +08:00
Chocobo1
ee38124db7 Optimize symbolic links checking 2022-08-27 13:55:04 +08:00
Chocobo1
e06e1d9911 Throw error exception properly 2022-08-27 13:55:04 +08:00
Chocobo1
3851e76179 Remove special handling of icons 2022-08-27 13:55:04 +08:00
Chocobo1
d693f97a46 Use natural sort in WebUI 2022-08-27 13:55:04 +08:00
Chocobo1
ca274635d5 Make WebUI images self-contained 2022-08-27 13:55:04 +08:00
Vladimir Golovnev
525692759d Split Session class into interface/implementation parts
PR #17579.
2022-08-27 08:01:24 +03:00
Chocobo1
e5491645e4 Merge pull request #17593 from Chocobo1/remove
Use proper verb when referring to torrent removal
2022-08-26 12:06:10 +08:00
Chocobo1
9f511a47e8 Adjust Edit menu of WebUI to follow GUI 2022-08-25 13:32:07 +08:00
Chocobo1
7b0644cdcd Use proper verb when referring to torrent removal 2022-08-25 13:32:07 +08:00
Vladimir Golovnev
7527343629 Handle some torrent conflicts
PR #17576.
2022-08-23 07:47:20 +03:00
Chocobo1
d173216941 Merge pull request #17578 from Chocobo1/webui
Fix icon in WebUI being trimmed
2022-08-23 10:54:02 +08:00
Chocobo1
d28b5f7834 Rephrase confirm deletion dialog
Closes #14309.
PR  #17586.

Co-authored-by: xavier2k6 <42386382+xavier2k6@users.noreply.github.com>
2022-08-22 11:36:13 +08:00
Chocobo1
04f6ee79c3 Improve icon readability at small size
https://github.com/qbittorrent/qBittorrent/pull/17578#pullrequestreview-1079562121

Co-authored-by: Nowshed H. Imran <nowshed.imran@gmail.com>
2022-08-21 20:47:07 +08:00
Chocobo1
b046b40668 Fix icon in WebUI being trimmed 2022-08-20 13:27:48 +08:00
Chocobo1
0a289e15b4 Merge pull request #17544 from Chocobo1/test
Add unit testing for Path class
2022-08-19 14:44:44 +08:00
Chocobo1
ce8b51e7ef Merge pull request #17568 from Chocobo1/ci
GHA CI: bump "Install Qt" action version
2022-08-19 14:42:29 +08:00
Chocobo1
df5ea9b675 GHA CI: bump setup-python to v4 2022-08-19 12:59:13 +08:00
Chocobo1
ff7fe7c107 GHA CI: bump "Install Qt" action version 2022-08-18 12:26:26 +08:00
Coool
ac6af55335 NSIS: update Latvian
PR 17529.
2022-08-18 11:39:53 +08:00
Chocobo1
001c3906b5 Merge pull request #17563 from Chocobo1/webapi
Restrict more WebAPI endpoints to POST method only
2022-08-18 11:37:59 +08:00
Minseo Lee
0d5d6db0ee NSIS: update Korean
PR #17547.
2022-08-17 12:48:22 +08:00
Chocobo1
72941b10bb Use proper request method 2022-08-16 11:26:47 +08:00
Chocobo1
d6c92704a1 Restrict more WebAPI endpoints to POST method only 2022-08-16 11:26:05 +08:00
Jesse Smick
ba511e07b4 WebUI: Improve pieces bar drawing algorithm
PR #17336.
2022-08-15 12:05:35 +08:00
Chocobo1
aa6b29fe7e Set HTTP method restriction on WebAPI actions
PR #17548.
2022-08-15 11:56:59 +08:00
Chocobo1
f5836c9fc9 Add unit testing for Path class 2022-08-14 13:31:22 +08:00
Chocobo1
d7d1a90de6 Fix wrong parent path 2022-08-14 13:31:21 +08:00
Chocobo1
16482c507b Fix drive letter validness check 2022-08-14 13:31:21 +08:00
Chocobo1
5abd72d42a Add comments about "UNC path" support 2022-08-12 12:56:58 +08:00
Chocobo1
2fa5ad982d Improve absolute/relative path detection 2022-08-12 12:56:57 +08:00
Chocobo1
43df7d0cd4 Improve path validness test 2022-08-12 12:56:56 +08:00
Chocobo1
17d40855d2 Merge pull request #17535 from Chocobo1/ci
GHA CI: switch to Ubuntu latest stable version
2022-08-12 12:27:57 +08:00
Chocobo1
c924fe7950 GHA CI: update boost to 1.80 2022-08-11 15:20:25 +08:00
Chocobo1
908f345e22 GHA CI: switch to Ubuntu latest stable version 2022-08-11 12:11:20 +08:00
bovirus
858eea1e9e NSIS: Update Italian language
PR #17098.
2022-08-11 12:03:05 +08:00
Chocobo1
06c704c740 Revise quote behavior
Now the behavior of double quotes aligns more as with issuing commands from shell/command line.
Related: https://github.com/qbittorrent/qBittorrent/pull/17453#issuecomment-1203372027

PR #17515.
2022-08-10 13:19:34 +08:00
Vladimir Golovnev
916e53c260 Show progress dialog on second instance run
PR #17516.
2022-08-09 19:12:12 +03:00
xavier2k6
3f94a68e62 Sync nonstd/expected with upstream
* Used commit: `95b9cb015fa17baa749c2b396b335906e1596a9e` (Release v0.6.2)
* Source: https://github.com/martinmoene/expected-lite/releases
PR #17508.
2022-08-09 11:22:45 +08:00
Vladimir Golovnev
5c96f16e3d Merge pull request #17498 from glassez/fix-windows-race 2022-08-07 13:23:03 +03:00
xavier2k6
8e33d99901 Update ax_boost_base.m4 to latest version
Upstream: https://github.com/autoconf-archive/autoconf-archive/blob/master/m4/ax_boost_base.m4
PR #17196.
2022-08-07 14:38:55 +08:00
Vladimir Golovnev (Glassez)
d27dd85dfd Correctly replace desktop integration menu 2022-08-06 19:40:04 +03:00
Vladimir Golovnev (Glassez)
15515200ee Avoid race conditions between dialogs on startup 2022-08-06 15:01:35 +03:00
Vladimir Golovnev
7f40602da9 Fill in initial data in add_torrent_alert handler
libtorrent < 2.0.7 has a bug that add_torrent_alert is posted too early
(before torrent is fully initialized and torrent extensions are created)
so we have to fill initial torrent data in add_torrent_alert handler.

PR #17491.
2022-08-06 06:09:35 +03:00
Chocobo1
33e6ca6778 Redesign Version class
PR #17484.
2022-08-06 11:06:16 +08:00
summer
54b50c3a8a Do not inhibit system sleep/auto shutdown for torrents stuck at downloading metadata
PR #17481.
2022-08-04 13:10:58 +08:00
Chocobo1
fa3d98aa37 Add keyboard shortcut to Download URL dialog
Closes #17436.
PR #17490.
2022-08-04 13:03:38 +08:00
Vladimir Golovnev
e24aaa4ce1 Show startup progress dialog
PR #17389.
2022-08-03 07:14:26 +03:00
Chocobo1
aed492b881 Merge pull request #17471 from Chocobo1/cmake
Improve constructor of Version class
2022-08-02 13:50:56 +08:00
Chocobo1
a4c2363f43 Improve constructor of Version class
Now we can write `Version<int, 3, 1>(1)` and provide only 1 parameter
instead of all 3 parameters at once at the constructor. Note that for
this instance of `Version` 3 numbers were specified but only 1 is truly
mandatory.

The added code are required to specify conditions of the template
instantiation for the compiler.
2022-08-01 14:53:55 +08:00
Vladimir Golovnev
0056a61db3 Clear RSS parsing error after use
PR #17465.
2022-08-01 08:15:16 +03:00
Vladimir Golovnev
6d1573f901 Prevent multiple session refreshes from being enqueued 2022-08-01 08:14:09 +03:00
清靈語
ef297dd8e6 Revise Docker document
Currently Docker Inc. recommends installing Docker Desktop instead of the CLI.
docker-compose has been deprecated, replaced by docker compose.

PR #17448.
2022-08-01 13:10:47 +08:00
Chocobo1
958929aa77 Improve command for running test
It enables `make check` command to build tests and run it
altogether.
2022-07-31 15:20:34 +08:00
Vladimir Golovnev
1c0479a795 When duplicate torrent is added set metadata to existing one
PR #17454. 
Closes #907.
2022-07-31 08:53:26 +03:00
Nowshed H. Imran
748226be29 Rename Icons according to the actions
Fixes #17357.
PR #17366.
2022-07-31 13:31:38 +08:00
Chocobo1
27e1a8ad80 Merge pull request #17453 from Chocobo1/i18n
Fix empty string parameter was omitted
2022-07-30 14:30:12 +08:00
Chocobo1
0802b6d506 Fix empty string parameter was omitted
`QProcess::splitCommand()` will omit empty strings like `""` so provide
our own replacement.

Closes #13124.
2022-07-30 00:17:31 +08:00
Vladimir Golovnev
29f8b4b786 Don't merge trackers by default
PR #17446.
2022-07-29 15:40:40 +03:00
Chocobo1
2ebdf6060d Translate app help text 2022-07-29 11:13:59 +08:00
brvphoenix
b98e7cb69f Fix reply data can't be decompressed correctly
If the "Accept-Encoding" is not manually specified, it will be
automatically set to the supported encodings by QT and the reply data
will also be automatically decompressed in this case. Setting
"Accept-Encoding" manually will disable the "autodecompress" feature
before QT 6.3.0. Although QT 6.3.x has different behaviors, let QT
specify the "Accept-Encoding" and we will always obtain the decompressed
data.

The macro "QT_NO_COMPRESS" defined when QT is compiled will disable
the zlib support. We can manually address this exceptions.

PR #17438.
2022-07-29 11:03:21 +08:00
summer
2071ec0c96 Fix peer count issue when tracker responds with zero figure
Sometimes tracker may respond with 0 for num_complete and num_incomplete and we should display that instead of deducing the peer count from peer list. We should only fallback to peer list if tracker does not respond with any information. In such cases num_incomplete and num_complete is set to -1 by libtorrent.

PR #17432.
2022-07-27 13:09:06 +08:00
Chocobo1
36bc77e2e2 Merge pull request #17416 from Chocobo1/icon
Split code to smaller functions
2022-07-26 12:47:21 +08:00
Chocobo1
88556078be Merge pull request #17412 from Chocobo1/stat
Improve free disk space reporting
2022-07-26 12:45:10 +08:00
Chocobo1
27a07e20f5 Split code to smaller functions 2022-07-25 01:22:33 +08:00
Chocobo1
5d1115f591 Remove compile-time conditional
This checking should be universally applied and not limited to certain OS.
2022-07-25 01:18:42 +08:00
Chocobo1
88d9e82fc9 Improve free disk space reporting
For non-existent directories (which will be created on demand) `Utils::Fs::freeDiskSpaceOnPath`
will return invalid value so instead query its parent path.
2022-07-25 01:18:42 +08:00
Chocobo1
50b01ed45d Revise function for checking "same file" 2022-07-25 01:18:37 +08:00
Chocobo1
243d130667 Clean up code 2022-07-24 18:07:52 +08:00
Chocobo1
e33f73d08e Avoid performance impact over network or removable drives 2022-07-24 12:58:24 +08:00
Chocobo1
f505d742d8 Merge pull request #17392 from Chocobo1/validatePath
Fix path validator
2022-07-24 09:54:30 +08:00
Chocobo1
727d20cc92 Simplify implementation
This also enable each platform to provide its own optimal implementation of it.
2022-07-23 22:41:26 +08:00
Chocobo1
3567ae3529 Merge pull request #17407 from Chocobo1/addtorrent
Fix "Add torrent dialog" spill-over on smaller screens
2022-07-23 12:20:55 +08:00
Chocobo1
a9906e5d2a Fix validation text doesn't update on mouse click selection 2022-07-22 21:27:00 +08:00
Chocobo1
6ab35512da Fix browse icon cannot be selected/focused via keyboard 2022-07-22 21:27:00 +08:00
Chocobo1
cfcbe3d6e1 Use less intimidating icon for intermediate state 2022-07-22 21:27:00 +08:00
Chocobo1
39c0c1a088 Simplify operations 2022-07-22 21:27:00 +08:00
Chocobo1
f7ae010274 Rename interface 2022-07-22 21:27:00 +08:00
Chocobo1
4fd5037c10 Avoid redundant operation
The default is the same as the one specified here.
2022-07-22 21:27:00 +08:00
Chocobo1
3fe09aa673 Fix path validator
And revise tooltip message.

Closes #11152.
2022-07-22 21:26:57 +08:00
Chocobo1
3a6858a277 Adjust height to hide scrollbar by default 2022-07-22 13:23:19 +08:00
Chocobo1
c287c7bb01 Revise action capitalization 2022-07-22 13:23:19 +08:00
Chocobo1
99061d92c1 Fix "Add torrent dialog" spill-over on smaller screens
Done by adding an QScrollArea to the layout.

Closes #17387.
2022-07-22 13:23:19 +08:00
Vladimir Golovnev
5b269a782a Prevent tray menu from being accessed after destruction
PR #17400.
2022-07-21 09:30:05 +03:00
xavier2k6
71e53a4628 Raise minimum libtorrent version to 2.0.7
PR #17396.
2022-07-21 12:21:48 +08:00
Chocobo1
275387a972 Don't show validation result dialog on every key input
Instead of showing dialog, now it relies on icon to show the validation
result.

PR #17391.
2022-07-21 12:19:58 +08:00
Chocobo1
e68e3b516e Improve performance of "filesystem line edit" widgets
Also prevent unnecessary querying on the filesystem by omitting
calling setRootPath().
2022-07-21 02:27:48 +08:00
summer
3f7376f26b Add transfer list refresh interval settings to WebUI
Specially useful for qbt-nox users
PR #16713.

Co-authored-by: An0n <79678786+an0n666@users.noreply.github.com>
2022-07-19 11:14:45 +08:00
summer
0e3ce019e4 Update libtorrent to 2.0.7 & 1.2.17 in GHA CI
PR #17385.
2022-07-19 11:13:47 +08:00
Dmitry Vodopyanov
f20f479a4b Improve sender field in mail notifications
Problem statement: user sees its email address in email notification,
while it is better to have sender field app-personalized, like it did
in Nextcloud: they send notifications from user's email address and
add alias 'Nextcloud' to it.

This patch adds alias 'qBittorrent' to qBittorrent email notifications,
so user sees more user-friendly email notification.

PR #17374.
2022-07-18 13:22:30 +08:00
Chocobo1
e95066a37c Merge pull request #17367 from Chocobo1/pr_17005
Split the OS cache settings into Disk IO read/write modes
2022-07-17 16:14:58 +08:00
Chocobo1
e281b667c6 Properly release settings class before further operations
Fix up d3e7e8a630.

PR #17376.
2022-07-17 12:41:18 +08:00
Chocobo1
ce0e92e12a Merge pull request #17363 from Chocobo1/pause
Add workaround for payload upload/download rate
2022-07-16 11:52:28 +08:00
Chocobo1
56bb379024 Add workaround for payload upload/download rate
The graphs are showing 0 for both payload upload & download rate but
torrent statistics aren't, so suppress it manually.
The workaround only applies to paused state for now.

Closes #17294.
2022-07-15 12:20:09 +08:00
Chocobo1
bafe4e909c Use switch() statement 2022-07-15 12:20:09 +08:00
Chocobo1
b6b0b54cdb Rename variable 2022-07-15 12:17:39 +08:00
xavier2k6
a9a45b9569 Sync flag icons with upstream
* Contains numerous flag fixes.
* Upstream commit: `494ace54e3c413dcebcb071f583b441b267c984f` - (Release v6.6.3)
* Update `AUTHORS` file with upstream `copyright/repo url change`

PR #17199.
2022-07-15 12:08:37 +08:00
Chocobo1
864d806ee8 Merge pull request #17359 from Chocobo1/testnaturalcmp
Add testing for various classes
2022-07-15 12:07:36 +08:00
summer
4cda5d89fb Clean up WebUI preferences
PR #17319.
2022-07-15 12:07:09 +08:00
summer
5b730ffb72 Split the OS cache settings into Disk IO read/write modes
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2022-07-14 18:37:38 +08:00
nmariusp
e2b140b8dd Remove meaningless checking for nullptr
Fix PVS-Studio issue "rss_autodownloader.cpp:111: warning: V668
There is no sense in testing the 'm_fileStorage' pointer against null,
as the memory was allocated using the 'new' operator.
The exception will be generated in the case of memory allocation error".

PR #17347.
2022-07-14 13:19:38 +08:00
Chocobo1
d2a29c2f87 Correctly remove incomplete settings file
PR #17362.
2022-07-14 13:05:08 +08:00
Chocobo1
60e62dc5ab Add testing for various classes 2022-07-13 18:05:14 +08:00
Chocobo1
4f1684c714 Bump libtorrent requirements to 2.0.6 2022-07-13 17:16:18 +08:00
Vladimir Golovnev
d3e7e8a630 Refactor SettingsStorage implementation
Remove redundant fragmentation of logic.

PR #17354.
2022-07-13 07:09:15 +03:00
Pino Toscano
437ddd3f76 Stop installing app icon in pixmaps location
Since the application icons are already installed in
the global XDG hicolor theme, simply stop installing the 128px one
in the pixmaps location.

PR #17342.
2022-07-12 13:14:55 +08:00
Chocobo1
0d715d879d Specify test files manually
So that cmake will detect file changes automatically and therefore we
don't need to re-invoke cmake manually.
2022-07-11 13:58:55 +08:00
Vladimir Golovnev
cfdf5cffac Show remote access info after it is available
PR #17329.
2022-07-11 08:38:45 +03:00
Chocobo1
d6314b30a2 Merge pull request #17341 from Chocobo1/tray
Revise behavior of initializing checkboxes
2022-07-11 12:39:05 +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
Chocobo1
8d73ab65b2 Don't needlessly hide Options dialog
The dialog should only close after all operations are done, not before.
2022-07-09 11:34:47 +08:00
Chocobo1
e54124fdb8 Add tooltip message when system tray icon isn't available
Also don't hide the sub-options as they are already in disabled state.
2022-07-09 11:34:47 +08:00
Chocobo1
e4fafb911a Revise behavior of initializing checkboxes
The checkboxes initial value should not depend on parent state and
should be restored anyway.
2022-07-09 11:34:43 +08:00
Chocobo1
2ef059807a Merge pull request #17333 from Chocobo1/logger
Revise classes startup sequence
2022-07-08 12:50:02 +08:00
Chocobo1
dba711d099 Use helper function for logging messages 2022-07-07 12:17:52 +08:00
Chocobo1
ec13bba4da Revise classes startup sequence
1. Initialize Logger class earlier so that it can record messages from other classes (for
   debugging purpose).
2. Deprioritize WebUI port adjustment. It is not a high priority in here.
3. Slightly deprioritize file logger initialization.
2022-07-07 12:16:48 +08: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
Chocobo1
286df8f560 Merge pull request #17311 from Chocobo1/memPrio
Work around application stuttering on Windows
2022-07-05 14:18:02 +08:00
Nowshed H. Imran
92afbd45e8 Remove option of using icons from system theme
PR #17292.
Closes #17150.
2022-07-05 12:32:35 +08:00
Chocobo1
d293c22a52 Try to recover missing tags
Tags can go missing from config/resume data. Try to recover them to avoid inconsistent behavior.

PR #17290.
2022-07-05 12:29:01 +08:00
summer
c660c9df8e Try to recover missing tags
Tags can go missing from config/resume data. Try to recover them to avoid inconsistent behavior.
2022-07-04 18:18:56 +06:00
Chocobo1
ed2eadaf56 Work around application stuttering on Windows
This is observed by unusual high page faults when the stuttering occurs.
With this workaround, the high page faults still occurs but the GUI remains responsive.
2022-07-04 18:38:23 +08:00
Chocobo1
fa26333a5b Move "memory priority" settings to Application class 2022-07-04 18:38:20 +08:00
Vladimir Golovnev
be7cfb78de Restore BitTorrent session asynchronously
Reduce the total startup time of the application and maintain sufficient responsiveness of the UI during startup due to the following:
1. Load resume data from disk asynchronously in separate thread;
2. Split handling of loaded resume data in chunks;
3. Reduce the number of emitting signals.

PR #16840.
2022-07-04 12:48:21 +03:00
Chocobo1
ec1d2cba40 Merge pull request #17305 from Kolcha/fix/open-dest-dir
Fix "Open destination folder" on macOS
2022-07-04 08:38:10 +08:00
Nick Korotysh
a93cd20e4d Open destination folders on macOS in separate thread
In some unknown way, the one line in Objective-C affects Qt's main
loop causing the crash in QApplication::exec() on processing next
event after that call.

Even crash doesn't happen exactly after this call, it will happen
on application exit. Call stack and disassembly are the same in
all cases.

But running that code in another thread solves the issue.
2022-07-02 09:16:22 +02:00
Chocobo1
25b3f2d1a6 Raise priority of the main "event loop" thread
The goal is to improve responsiveness of qbt when CPU resources are scarce.

Instead of lowering libtorrent threads priority, it is chosen to raise main event loop thread
priority to avoid getting messy with libtorrent internals.

Also on Windows, threads doesn't inherit thread priority from the parent thread and it always
use the default (normal) priority.

PR #17278.
2022-07-02 14:57:47 +08:00
Chocobo1
b44bdd21cb Merge pull request #17281 from Chocobo1/creator
Fix filename not populated correctly
2022-07-02 14:41:50 +08:00
Nick Korotysh
53ea1843ab Pass Torrent::contentPath() to MacUtils::openFiles()
it already provides absolute path, no additional manipulations
are required.
2022-07-01 23:23:26 +02:00
Chocobo1
34091176d5 Fix wrong root path generated on Windows
Fix cannot create torrent when the source file is at the root of a
drive.
Fix created torrent cannot be seeded when the source file is at the root
of a drive.

Fix up dd1bd8ad10.
Closes #17279.
2022-07-01 13:34:14 +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
summer
cc0a0b56ed Make working set limit available only on libtorrent 2.0.x builds
You can already control the cache size in libtorrent 1.2.x so it doesn't make sense to implement this limit for all use cases. Also there are some downsides to using working set size to limit memory usage such as unresponsive GUI when limit gets hit.

PR #17275.
2022-06-30 11:23:48 +08:00
sledgehammer999
0e989185ce Merge pull request #15769 from now-im/flow
Implement new icon/color theme
2022-06-28 23:23:25 +03:00
Chocobo1
aadf961184 Fix filename not populated correctly
Fix up dd1bd8ad10.
Related #17279.
2022-06-26 19:30:17 +08:00
summer
1abeac8811 Remove unnecessary force reannounce on interface alerts
This isn't necessary since it can cause issues by doing unnecessary reannounce during startup and network address refresh. This impact of this can be great if it happens on a regular basis and if someone has a lot of torrents.

PR #17261.
2022-06-26 07:26:21 +03:00
Vladimir Golovnev
f8a304abdc Implement base classes for application components
PR #17219.
2022-06-25 15:46:55 +03:00
Chocobo1
41a38428fc Merge pull request #17259 from Chocobo1/cleanup
Make use of chrono literals from std library
2022-06-25 13:23:27 +08:00
Mike Lei
d3850cf98f Improve WebUI progress bar rendering
PR #17258.
2022-06-24 13:18:33 +08:00
Chocobo1
02d906d3ae Initialize pointer to a default value 2022-06-23 21:31:16 +08:00
Chocobo1
6de72ecc77 Make use of chrono literals from std library 2022-06-23 21:31:16 +08:00
Chocobo1
2a5dbe840c Clean up coding style 2022-06-23 13:40:42 +08:00
Li Z
86b6bcc1d9 Fix incorrect "max outgoing port" setting
PR #17252.
2022-06-23 11:49:45 +08:00
Blackspirits
3023cff2b5 NSIS: Update Portuguese translations
PR #17222.
2022-06-20 13:09:17 +08:00
Chocobo1
f3a4764a1d Merge pull request #17233 from Chocobo1/log
Add shutdown logging
2022-06-20 13:08:46 +08:00
Chocobo1
0d46a108b8 Revise Statistics class 2022-06-19 15:51:19 +08:00
Chocobo1
8114c11d58 Add shutdown logging 2022-06-18 17:14:54 +08:00
Chocobo1
e3425cfa9e Defer closing logger instance
So that logger can still be used in shutdown stage.
2022-06-18 17:14:54 +08:00
Chocobo1
af78344e5d Use coarse timestamp format
Since format in milliseconds doesn't add additional value and is
slower than just seconds.
2022-06-18 17:14:42 +08:00
Vladimir Golovnev
a2121f2483 Improve RSS subsystem initialization
PR #17227.
2022-06-18 09:56:49 +03:00
Vladimir Golovnev
7d97905716 WebAPI: Add endpoint to set speed limit mode 2022-06-18 06:12:43 +03:00
Chocobo1
61adfea196 Fix garbage text appeared in log file
Fix up fed969ed64.
2022-06-18 04:18:27 +08:00
Chocobo1
3dd616f6ff Use proper method for manipulating text
`innerText` is too powerful for the job here, use a more
restricted/secure way to manipulate text.

Related: #17211.
PR #17212.
2022-06-17 13:00:32 +08:00
Prince Gupta
d5e6d161f2 Cache last traverse result while parsing file tree
PR #16376.
2022-06-15 20:14:53 +03:00
thalieht
d1515456bc Add checkbox for "Excluded file names"
PR #17206.
2022-06-15 13:16:01 +08:00
brvphoenix
7faa8b7a02 Don't use QCollator when it works on posix mode
PR #17204.
2022-06-14 13:22:30 +08:00
Chocobo1
5b0cbf9eb1 Merge pull request #17187 from Chocobo1/names
Fix wrong file names displayed in tooltip
2022-06-11 12:27:41 +08:00
xavier2k6
74db0576af Sync nonstd/expected with upstream
* Used  `commit: b78dd92cc92b0cfe4eedad823cfd411c13afeb66` (Release v0.6.0)
* Source https://github.com/martinmoene/expected-lite/releases/tag/v0.6.0

PR #17192.
2022-06-11 12:27:13 +08:00
xavier2k6
d0b13f0eb0 GHA CI: "file health" update pre-commit action to v3.0.0
* Update `pre-commit` action to `v3.0.0`
  https://github.com/pre-commit/action/releases
* Bump pre-commit-hooks to `v4.3.0`
  https://github.com/pre-commit/pre-commit-hooks.git

PR #17195.
2022-06-11 12:25:12 +08:00
Emil M George
29a964d5b7 Add support for custom SMTP ports
The port can be optionally specified by appending `:<port>` to the existing SMTP Server field in settings. If no port is specified, then the default port (25 for insecure or 465 for SSL) is used.

Closes #12212.
PR #17157.
2022-06-10 14:02:51 +08:00
mxtsdev
5e6174c087 Add file name filter/blacklist
Blacklist filtered file names from being downloaded from torrent(s).
Files matching any of the filters in this list will have their priority automatically set to "Do not download".
See Options > Downloads >Do not download.

Closes #3369.
PR #17106.
2022-06-10 13:37:46 +08:00
Nowshed H. Imran
199d770e15 Implement new icon/color theme
Co-authored-by: xavier2k6 <42386382+xavier2k6@users.noreply.github.com>
2022-06-09 18:18:14 +06:00
Prince Gupta
c47e29c7c8 Do RSS serializing on worker thread
PR #16357.
2022-06-09 15:16:37 +03:00
Chocobo1
fed969ed64 Avoid string encoding conversion
Use UTF-16 string literals to match QTextStream internal buffer
encoding.
2022-06-09 12:24:31 +08:00
Chocobo1
9cb686a6b7 Fix wrong file names displayed in tooltip
Also rename variable.
Closes #17179.
2022-06-09 12:24:31 +08:00
Chocobo1
eddeda7bab Remove usage of QTextStream
Other classes already provide rich methods so avoid another
layer of QTextStream which slow things down (slightly).

PR #17180.
2022-06-09 11:18:41 +08:00
Vladimir Golovnev
ca07540675 Fix rate calculation when interval is too low
PR #17155.
2022-06-08 08:51:48 +03:00
Chocobo1
fb5f563537 Merge pull request #17148 from Chocobo1/gui
Fix wrong dialog sizes on first start up
2022-06-05 13:36:41 +08:00
thalieht
2f9c5cdb22 Add "Filter files" field in new torrent dialog
PR #16344.
2022-06-04 12:57:50 +08:00
Chocobo1
fcf50820e8 Don't resize dialog with invalid sizes
This fixes wrong dialog sizes on first startup.
2022-06-03 16:07:36 +08:00
Chocobo1
3fd0241abb Set dialog properties at the caller site
Redundant `setModal(true)` are removed since the dialog is already opened via `open()`.
2022-06-02 23:53:30 +08:00
Vladimir Golovnev
ab0c82965c Avoid redundant checks of category names
PR #17130.
2022-05-31 10:42:40 +03:00
Kacper Michajłow
5173a56ebd Fix DHT/PeX/LSD status when it is globally disabled
Global status takes precedence over specific torrent private status.

PR #17126.
2022-05-31 12:45:28 +08:00
Chocobo1
9cd993d1da Merge pull request #17116 from Chocobo1/cleanup
Clean up usage of `static` keyword
2022-05-31 12:39:30 +08:00
Chocobo1
73faf67084 Clean up usage of static keyword
They are either misused or redundant, so remove it.
2022-05-30 13:25:34 +08:00
brvphoenix
fd51362545 Don't decompress the reply data for Qt 6.3
PR #17120.
2022-05-30 13:10:29 +08:00
sledgehammer999
56b99f4e19 Merge pull request #17125 from sledgehammer999/cmake_lupdate
Use CMake to update translation files
2022-05-29 20:46:15 +03:00
sledgehammer999
63cdfa2d85 Update CIs to correctly regenerate translations files 2022-05-29 02:49:57 +03:00
sledgehammer999
242874e705 Use CMake to update translation files
It uses lupdate directly.
Qt's `qt_add_lupdate()` cmake function doesn't help much.
First of all it is Qt6 only.
Secondly, our project is split into multiple targets but we need all
strings into a single .ts file per language.
Thirdly, it looks like it will skip source files that are added conditionally into the build
via cmake condition checking (eg DBUS source files). We need to gather all strings present
in the source files regardless of the build configuration.

On another note, this is a step towards reducing dependency on qmake/autoconf.
2022-05-29 02:49:57 +03:00
Vladimir Golovnev
a5caa807f5 Initialize torrent status using libtorrent extension
PR #17096.
2022-05-28 09:30:50 +03:00
Chocobo1
c2c17fd053 Revise icon cache look up
Find in `m_iconCache` first because it is cheaper than calling
`QIcon::fromTheme()`.
2022-05-27 16:23:19 +08:00
Chocobo1
f54cc5796e Move function into anonymous namespace 2022-05-27 16:23:19 +08:00
Chocobo1
a9f99aed48 Revise code 2022-05-27 16:23:18 +08:00
Chocobo1
7eaaa8f92a Turn static variable into class member 2022-05-27 04:01:37 +08:00
Chocobo1
ca9f5a18d4 Suppress type narrowing warnings 2022-05-27 04:01:34 +08:00
Vladimir Golovnev
4f62900cd3 Update torrent status filter counters consistently
PR #17097.
Closes #15981.
Closes #16490.
2022-05-26 19:55:00 +03:00
sledgehammer999
2c9e1d942b Merge pull request #17091 from sledgehammer999/ts_newlines_fix
Sync translations from Transifex and run lupdate
2022-05-25 20:44:11 +03:00
Vladimir Golovnev
4032393c0e Pause torrent in all "fastresume rejected" cases
PR #17087.
Addition to #17064.
2022-05-25 08:24:53 +03:00
xavier2k6
8e854062e8 Sync flag icons with upstream
Upstream commit 1f861ac27d8a3b46e78eaa8ac30d7de35279ab01
Upstream release v6.4.2

PR #17077.
2022-05-25 12:41:16 +08:00
sledgehammer999
cbf9c8ec1a Sync translations from Transifex and run lupdate 2022-05-25 00:16:57 +03:00
Priit Uring
494593c745 Update clipboard.js to v2.0.11
https://github.com/zenorocha/clipboard.js/releases

PR #17073.
2022-05-24 12:55:30 +08:00
sledgehammer999
3af832ec18 Sync translations from Transifex and run lupdate 2022-05-22 19:14:00 +03:00
Vladimir Golovnev
7e0cd223fd Revamp tracker entries handling
PR #17017.
2022-05-22 09:09:11 +03:00
Vladimir Golovnev
8c0cd09823 Handle all "fastresume rejected" cases consistently
PR #17064.
2022-05-22 07:23:52 +03:00
Chocobo1
f931fc5a85 Merge pull request #17057 from Chocobo1/build
Disable copy, move constructors when inheriting from QObject
2022-05-21 13:12:30 +08:00
Chocobo1
c8b4611d8d Disable copy, move constructors when inheriting from QObject 2022-05-19 19:07:23 +08:00
Chocobo1
7764169aa3 Disallow narrowing conversions in signal connection 2022-05-19 12:55:07 +08:00
Chocobo1
567dd3fabb Disable compiler specific extensions
The property is set to ON by default, now turn it off.
2022-05-19 12:55:05 +08:00
Chocobo1
8d3c19c599 Merge pull request #17031 from Chocobo1/net
Fix wrong GUI behavior in "Optional IP address to bind to" setting
2022-05-19 12:52:35 +08:00
vlakoff
b84333f8a1 Consider brackets within wildcard as regular characters
In glob patterns, square brackets have a special meaning, that may be unexpected by the users.

Thus we escape these brackets, so that the only remaining special characters are the * and ? wildcards.

PR #16965.
2022-05-18 08:33:14 +03:00
thalieht
acdd08e9a2 Consistently emit signal when file "ignored" state is changed
PR #17042.
Closes #17037.
2022-05-18 07:47:48 +03:00
Chocobo1
dbfd6a2368 WebUI: enforce coding style
Actually, not all of them but some that can be enforced by eslint.
The changes are made by eslint with minor manual tweaking.

PR #17046.
2022-05-18 11:37:05 +08:00
Chocobo1
5af96943e3 Merge pull request #17045 from Chocobo1/cleanup
Fix compilation with qmake
2022-05-17 13:14:29 +08:00
Hampton Ford
05325b135d Fix and improve the docs
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>

PR #17034.
2022-05-16 08:40:06 +03:00
Chocobo1
9d858d5cd7 Fix compilation with qmake
Fix up 7c35904062.
2022-05-16 01:15:19 +08:00
Chocobo1
e82c50ed73 Clean up code 2022-05-16 01:15:08 +08:00
Chocobo1
4ce98d57dd Fix wrong GUI behavior in "Optional IP address to bind to" setting
Previously the address field got erroneously reset to "All addresses"
when the network interface is down.
2022-05-14 18:42:13 +08:00
Chocobo1
114c6d36d1 Clean up code
Add const.
Move template implementation to .cpp file.
2022-05-14 18:30:10 +08:00
Chocobo1
538c88ced4 Improve logic when interfacing settings with combobox
PR #17023.
2022-05-13 12:13:04 +08:00
Chocobo1
7c35904062 Use stacktrace dialog when GUI is enabled
PR #17022.
2022-05-13 12:12:36 +08:00
Chocobo1
5c3c6b63ba Migrate to Boost.Stacktrace
PR #17014.
2022-05-12 11:06:05 +08:00
Coda
e698c09298 Allow to use POSIX-compliant disk IO type
This patch allows user to switch disk IO type between memory mapped files based type (default in libtorrent 2, and seems causing memory issues) and POSIX-compliant type which is more conservative on memory usage.

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru>

PR #16895.
2022-05-11 21:28:06 +03:00
Vladimir Golovnev
a048ea668f Use uniform way to export .torrent files
PR #17013.
2022-05-10 15:36:05 +03:00
Vladimir Golovnev
5af78ad2cd Preserve "skip hash check" when there is no metadata
When torrent is added without metadata libtorrent doesn't honor "seed mode" and doesn't save it in resume data so when metadata is available torrent will still check file hashes. This patch will add a logic that preserves originally enabled "seed mode" until the metadata is received.
PR #17009.
2022-05-10 15:34:38 +03:00
Vladimir Golovnev
338e89176d Mark all files as complete if torrent is in "seed mode"
Fixes regression of bcfa486.
Closes #16999.
PR #17008.
2022-05-10 15:29:46 +03:00
itlezy
a266599118 Add keyboard navigation keys
* Added keyboard navigation keys for context menu with `&`
* Added `CTRL+M` for force resume.

PR #16988.

Co-authored-by: itLezy <itLezy@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2022-05-10 11:34:43 +08:00
Chocobo1
80f624e4cc Merge pull request #17004 from Chocobo1/fixes
Improve compatiability with various platforms
2022-05-09 12:14:09 +08:00
Chocobo1
002d56d8b3 Fix type mismatch
msys2 was reporting the following error:
```
D:/a/qbittorent_msys2/qbittorent_msys2/src/qBittorrent/src/app/application.cpp: In member function 'void Application::applyMemoryWorkingSetLimit()':
D:/a/qbittorent_msys2/qbittorent_msys2/src/qBittorrent/src/app/application.cpp:777:36: error: no matching function for call to 'min(unsigned int, long unsigned int)'
  777 |     const SIZE_T minSize = std::min((64 * MiB), (maxSize / 2));
      |                            ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2022-05-08 16:48:29 +08:00
Chocobo1
be4a1e7fd7 Suppress wrong print specifier
By removing unimportant debug message.
2022-05-08 16:46:36 +08:00
Chocobo1
a0a45333f1 Don't use old style casts 2022-05-08 14:53:27 +08:00
Chocobo1
dba998fea0 Don't use hardcoded path for temp folder 2022-05-08 14:00:59 +08:00
Chocobo1
fe2b49cf81 Merge pull request #16992 from Chocobo1/compose
Add script for docker-compose
2022-05-07 11:26:03 +08:00
Chocobo1
c90f1511dc Merge pull request #16987 from Chocobo1/hardening
Improve docker script
2022-05-06 11:23:15 +08:00
Chocobo1
763d17281f Bump boost requirement to 1.71
This is a prerequisite for using boost stacktrace.
Note that this is not the first version that introduces boost stacktrace but the version that
should be stable enough.

PR #16986.
2022-05-06 11:20:34 +08:00
Chocobo1
1ae5339c33 Add script for docker-compose 2022-05-05 22:01:49 +08:00
Chocobo1
7562e0e870 Add support for search engine
Also mount /tmp as writable, this is required by qbt and not just for
the search engine functionality.
2022-05-05 19:52:10 +08:00
Chocobo1
0e456f33c1 Run qbt-nox as non-root
This is mainly to avoid downloaded files being owned by root which
requires another one or two commands to change the file ownership.
2022-05-05 13:39:52 +08:00
Chocobo1
6778d36454 Make the container filesystem read-only
It is not expected to modify the filesystem of the container.
Mounted volumes (-v) are not affected.
2022-05-05 13:39:27 +08:00
Chocobo1
bc54860ad6 Avoid using valid path for illustrative purpose
Otherwise docker will really create this example path on host machine
which is bad.
2022-05-05 11:51:21 +08:00
Chocobo1
4894578b72 Improve Docker build
* Improves code readability.
* Improve documentation.
* Fix "docker stop" doesn't terminate qbt gracefully which could lead to
  data corruption.
* Provide correct/working bittorrent listening port by default.
* Make use of qbt profile option instead of hacking environment
  variables.
* Simplify build steps.

PR #16976.
2022-05-05 11:02:57 +08:00
Tom Piccirello
fb7f7d0c75 Add support for exporting .torrent from WebUI
PR #16968.
2022-05-04 12:13:24 +08:00
Tom Piccirello
48fa4e116c Fix Docker legal notice when using existing config
If the user is using a pre-existing config, don't update the legal notice.

PR #16974.
2022-05-04 12:12:15 +08:00
Chocobo1
e9d3928fe0 Store WebUI port setting in human readable number
Previously it was wrapped in QVariant type.

PR #16977.
2022-05-04 12:11:17 +08:00
Chocobo1
2a6f02fa29 Fix empty selection in WebUI language combobox
This mostly happens with a clean install.

PR #16978.
2022-05-04 12:10:06 +08:00
summer
ce0e5be7ce Increase limit of maximum number of articles per feed
Closes #16690.
PR #16698.

Co-authored-by: An0n <79678786+an0n666@users.noreply.github.com>
2022-05-03 10:59:47 +08:00
Tom Piccirello
a8b6a40f13 Separate docker image data and config dirs
PR #16972.
2022-05-03 10:58:37 +08:00
Chocobo1
88a91e0769 Merge pull request #16971 from Chocobo1/dialog
Move stacktrace dialog to gui folder
2022-05-03 10:56:41 +08:00
Chocobo1
21f4676b16 Rename method 2022-05-02 12:35:53 +08:00
Chocobo1
bb2a874fd5 Reset widget property to default
This property wasn't been customized.
2022-05-02 12:35:38 +08:00
summer
56667e717b Prevent the new update box from blocking input on other dialogues
PR #16678.
2022-05-01 16:18:22 +03:00
Chocobo1
caaaa05710 Move conditionals to the bottom 2022-05-01 14:24:56 +08:00
Chocobo1
d69e6bb7aa Move stacktrace dialog to gui folder 2022-05-01 14:24:39 +08:00
Chocobo1
a1903e5d67 Delete unreachable code 2022-05-01 13:55:26 +08:00
Chocobo1
64d8db0c93 Move system signal related functions to its own file
And revise "signal safe print" function.
PR #16953.
2022-05-01 12:32:51 +08:00
summer
7b608fd0c9 Reduce the number of hashing threads by default
This seems to be the culprit responsible for slower hash rate in RC2_0 releases.
https://github.com/qbittorrent/qBittorrent/issues/16043#issuecomment-1113774868

PR #16951.
2022-05-01 12:30:25 +08:00
Chocobo1
19cbffb5e2 Remove artificial max limits from "Torrent Queueing" related options
Closes #16936.

PR #16942.
2022-04-30 12:26:18 +08:00
Chocobo1
c5ea6b0502 Merge pull request #16941 from Chocobo1/msvc
Fix nogui compilation for Windows
2022-04-30 12:25:24 +08:00
Chocobo1
639ed40314 Disable Linux-specific function when compiling for Windows 2022-04-29 13:49:31 +08:00
Chocobo1
c5cbda0bbe Avoid splitting code over ifdef boundary
By removing unimportant debug message.
2022-04-29 13:49:31 +08:00
Chocobo1
59e37210f3 Use correct type for comparisons
`_write()` actually returns `int` type.

And fix wrong function parameters.

Closes #16938.
Closes #16944.
2022-04-29 13:49:31 +08:00
Chocobo1
9351f66c26 Add support for exporting .torrent data to buffer
Related: https://github.com/qbittorrent/qBittorrent/pull/16886#discussion_r855882018
PR #16931.
2022-04-27 12:29:00 +08:00
Vladimir Golovnev
7432c4dbfe Merge pull request #16922 from glassez/avoid-blocking
Avoid some blocking calls to libtorrent
2022-04-27 07:06:23 +03:00
Vladimir Golovnev (Glassez)
1069bea273 Cache native torrent info to avoid extra blocking calls 2022-04-25 09:25:45 +03:00
Vladimir Golovnev (Glassez)
c740d105c9 Don't force update torrent status 2022-04-25 08:32:49 +03:00
Vladimir Golovnev (Glassez)
66a5a9863f Fill torrent status with initial values when reload 2022-04-25 08:32:44 +03:00
Vladimir Golovnev (Glassez)
7ca47b8916 Delay event processing until status updated 2022-04-25 08:31:50 +03:00
Vladimir Golovnev (Glassez)
bcfa4866fe Cache indexes of completed files
This avoids extra blocking calls to libtorrent.
2022-04-25 08:31:39 +03:00
Amanuense-del-diavolo
de8377ab53 added Dockefile and entrypoint.sh
It uses the latest available version for libtorrent and builds both libtorrent and qBittorrent with Cmake + ninja

The legal notice must be accepted trought an environment variable called LEGAL and passed to docker when the container is run, to set it true one must set "LEGAL=accept"

PR #16828.
2022-04-25 11:39:25 +08:00
xavier2k6
b85b1e8834 Update grunt dependency
Use `*` so we don't need to care about its version anymore.
PR #16917.
2022-04-25 11:38:12 +08:00
Chocobo1
eba5a48abd Merge pull request #16886 from Chocobo1/export
Add "Export .torrent" action
2022-04-24 12:43:13 +08:00
Chocobo1
a90ade0446 Add "Export .torrent" action 2022-04-23 15:11:09 +08:00
xavier2k6
0b86eb9b4c Update clipboard.js to v2.0.10
PR #16918.
2022-04-23 12:39:06 +08:00
Vladimir Golovnev
359c4fef9d Avoid dereferencing null pointers
PR #16896.
Closes #16884 and similar issues.
2022-04-19 13:52:56 +03:00
Chocobo1
71b1cb3b9c Remove unused header 2022-04-19 11:35:51 +08:00
xavier2k6
b740cc23d3 GHA CI: Update dependencies
Update `libtorrent` version(s) to `2.0.6` & `1.2.16` in `GHA CI`
- https://github.com/arvidn/libtorrent/releases/tag/v2.0.6
- https://github.com/arvidn/libtorrent/releases/tag/v1.2.16

Update `Boost` version to `1.79.0`
- https://www.boost.org/users/history/version_1_79_0.html

Bump `pre-commit-hooks` version to `4.2.0`
- https://github.com/pre-commit/pre-commit-hooks/releases/tag/v4.2.0

Update `Qt6` version to `6.3.0`
- https://www.qt.io/blog/qt-6.3-released
- https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.3.0/release-note.md

Note: used `aqtinstall 2.1.0` with `jurplel/install-qt-action` for support of `Qt 6.2.1+`
(this requirement can be removed on official release of `jurplel/install-qt-action v3`)

PR #16888.
2022-04-19 10:32:56 +08:00
Vladimir Golovnev
613e9866aa Merge pull request #16876 from glassez/blocking
Avoid some blocking calls to libtorrent

Under some conditions (when libtorrent is doing heavy work), blocking calls can wait quite a long time, thereby suspending the main application thread. In some cases, we can avoid this, since we have enough data to make the job without call to libtorrent. Although in some cases it may require a little more work to be done in the main thread, but overall responsiveness still benefits greatly in the end, especially when the libtorrent working thread is heavily loaded.
2022-04-16 19:27:41 +03:00
Chocobo1
bc937d38a2 Allow to set "working set limit" on non-Windows OS
PR #16874.
2022-04-16 11:36:58 +08:00
Vladimir Golovnev (Glassez)
35fcf39fc8 Add additional trackers without extra blocking call 2022-04-15 11:45:10 +03:00
Vladimir Golovnev (Glassez)
bd45dc5d0f Avoid some blocking calls to libtorrent 2022-04-14 15:22:32 +03:00
Vladimir Golovnev
7377974731 Improve path extension handling
PR #16867.
2022-04-14 09:43:07 +03:00
Requi
669b67e666 WebAPI: return correct status
Fix web API returning Not Found instead of Forbidden.

When not having a session the API would return "Not Found" instead of "Forbidden" when trying to access a non-public endpoint.

PR #16866.
2022-04-14 08:26:19 +03:00
Chocobo1
a2b85ba1fd Provide interface for Application class
PR #16864.
2022-04-14 12:04:58 +08:00
Chocobo1
dc22109fa7 Merge pull request #16863 from Chocobo1/run
Remove redundant function
2022-04-13 12:05:58 +08:00
Vladimir Golovnev
4471a6377e Have separate API controller instances per session
PR #16848.
2022-04-12 13:39:35 +03:00
Chocobo1
3f762a416d Use proper method for deferred calls 2022-04-12 16:23:39 +08:00
Chocobo1
a59a6ce8e4 Remove redundant function
This helper function is useless after using `Path` class.
2022-04-11 13:07:53 +08:00
Chocobo1
189514c6de Fix wrong v2 hash string displayed in WebUI
Previously `0000...` was erroneously displayed when v2 hash is absent,
now it correctly shows the `N/A`.

PR #16846.
2022-04-10 12:46:24 +08:00
Vladimir Golovnev
dded874350 Correctly apply content layout when "Skip hash check" is enabled
PR #16825.
2022-04-06 14:01:41 +03:00
Chocobo1
e42fa0e027 Merge pull request #16820 from Chocobo1/comparisons
Move comparison operator out of class
2022-04-06 13:35:34 +08:00
Vladimir Golovnev
33ffe95294 Correctly populate trackers filter list
PR #16814.
2022-04-05 07:28:00 +03:00
Vladimir Golovnev
0657238ad1 Don't forget to create 'download_path' field
PR #16468.
2022-04-05 07:27:11 +03:00
Vladimir Golovnev
4efece4ab8 Use an appropriate method to show modal dialog
PR #16809.
2022-04-05 07:26:17 +03:00
Chocobo1
b9b2ed64f9 Assign temporary data to a variable
This is mainly to avoid dangerous code pattern: getting an iterator on a
temporary object. Previously `data()` returns a const reference so the
code wasn't doing any harm.
2022-04-05 11:49:32 +08:00
Chocobo1
16bc0531f4 Simplify code 2022-04-05 10:39:23 +08:00
Chocobo1
39c34078d6 Move comparison operator out of class 2022-04-04 16:32:14 +08:00
Chocobo1
9318f05e2b Merge pull request #16801 from Chocobo1/int
Migrate away from unsigned integer types
2022-04-04 13:13:36 +08:00
sledgehammer999
95f3073e6f Merge pull request #16745 from sledgehammer999/drop_qt_translations_folder
Drop qt translations folder
2022-04-04 01:56:56 +03:00
Chocobo1
6f4a9390ba Fix wrong conversion to QVariant
It was converted to bool-like type which is wrong.
2022-04-03 13:34:29 +08:00
Chocobo1
0eb6967bb2 Migrate away from unsigned integer types
Signed integers should be preferred in these cases.
2022-04-03 13:34:29 +08:00
Chocobo1
2854630b1c Use signed integer type for counters 2022-04-03 13:33:55 +08:00
Chocobo1
bbd781c420 Omit redundant cast 2022-04-03 13:01:44 +08:00
Chocobo1
f7cfdfcf63 Merge pull request #16784 from Chocobo1/webui
WebUI: show correct location path
2022-04-03 12:54:38 +08:00
Chocobo1
af7c32d3aa WebUI: remove temporary element 2022-04-02 17:26:26 +08:00
Chocobo1
0d334369f0 WebUI: show correct location path
The `path` might contains '&' (delimit character) so it must be
encoded.
Closes #15976.
2022-04-02 17:26:26 +08:00
Chocobo1
08f3630f01 WebUI: make various dialog resizable
And enlarge dialog default width.
2022-04-02 17:26:24 +08:00
Yurii Kolesnykov
2b17838820 Remove outdated info about nightly builds
Closes #16790.
PR #16791.
2022-04-02 13:59:35 +08:00
Chocobo1
0b0338a9cb Merge pull request #16794 from Chocobo1/qmake
Use qmake built-in variable to specify C++ version
2022-04-02 12:33:29 +08:00
Chocobo1
a24f2ae884 GHA CI: bump "setup vcpkg" action version 2022-04-01 15:49:21 +08:00
Chocobo1
ec5b0b5403 Use qmake built-in variable to specify C++ version 2022-04-01 15:35:22 +08:00
Vladimir Golovnev
df2d449f9b Revamp content layout handling
Apply content layout only if desired file names aren't provided.
Remove helpers with confusing signatures.
Don't remove root folder twice.

PR #16724.
Closes #16259.
2022-04-01 09:35:45 +03:00
Chocobo1
eecd221d40 Merge pull request #16767 from Chocobo1/ci
GHA CI: work around error when installing Qt
2022-03-30 12:21:34 +08:00
Chocobo1
3951b891c1 GHA CI: work around error when installing Qt
This is to (temporarily) work around CI errors at jurplel/install-qt-action.
Upstream issue: https://github.com/jurplel/install-qt-action/issues/130
2022-03-29 11:26:57 +08:00
Chocobo1
eab455422f Add missing header
Fix up 75c93d72be.
2022-03-29 11:19:37 +08:00
Chocobo1
75c93d72be Revise string literal usage
This commit covers src/gui folder.
PR #16757.
2022-03-29 10:41:17 +08:00
sledgehammer999
6842e8263d qmake: Bump MACOSX deployment target to 10.15 2022-03-29 01:52:26 +03:00
sledgehammer999
f35d94d98e Update instructions about NSIS packaging
Include a helper a script to gather valid Qt translations for packaging.
2022-03-29 01:52:25 +03:00
sledgehammer999
01206a0e2e Delete Qt translations files 2022-03-29 01:52:24 +03:00
sledgehammer999
cf9e3193bc qmake: Use installed Qt's translations for packaging 2022-03-29 01:52:24 +03:00
sledgehammer999
f5239ffb0b CMake: Use installed Qt's translations for packaging 2022-03-29 01:52:23 +03:00
Chocobo1
746fe7ba09 Merge pull request #16738 from Chocobo1/qstring
Improve function interface
2022-03-28 12:28:28 +08:00
Chocobo1
7c1a986e61 Implement stringable interface for Version type 2022-03-26 13:58:25 +08:00
Chocobo1
c6b772da11 Improve function interface
`SettingsStorage` methods require `QString` so make `SettingValue` follow it.
`Path::operator+` can use `QStringView` to accept wider audience.
2022-03-26 12:41:02 +08:00
An0n
11cfe38d1c Fix WebUI crash due to missing tags from config
Tags can be missing from config but set inside .fastresume. May happen due to corrupted/deleted config.
Closes #11906.
PR #16711.
2022-03-26 11:56:18 +08:00
Chocobo1
4ca6de2b54 Revise string literal usage
PR #16703.
2022-03-26 11:53:50 +08:00
Chocobo1
e1abcc684a Merge pull request #16705 from Chocobo1/path
Use proper type to represent a path
2022-03-25 13:00:11 +08:00
Chocobo1
bbd936fdfa Don't use explicit memory management
And avoid dangling pointers.
2022-03-24 14:44:38 +08:00
Chocobo1
f58eed13d0 GHA CI: use Qt6 for Windows builds
PR #16696.
2022-03-24 12:19:07 +08:00
Chocobo1
8a708fd97e Use proper type to represent a path 2022-03-23 22:04:05 +08:00
An0n
bf8d993743 Change Downloaded to Times Downloaded in trackers tab
PR #16677.
2022-03-23 12:57:45 +08:00
Vladimir Golovnev
c029122a8e Avoid integer overflow when calculating working set size 2022-03-23 07:56:59 +03:00
Sam James
54327d579b CMake: fix systemd directory help text
The option is case sensitive.
PR #16695.

Signed-off-by: Sam James <sam@gentoo.org>
2022-03-23 12:56:14 +08:00
Chocobo1
6c10aa33e1 Provide interface for serialization to string type
PR #16685.
2022-03-23 12:55:41 +08:00
sledgehammer999
b7c098c5e6 Sync translations from Transifex and run lupdate 2022-03-22 15:47:05 +02:00
Vladimir Golovnev
c18c42e866 Merge pull request #16686 from glassez/set-location
Fix "Set location" to be really applied
2022-03-22 13:12:43 +03:00
Vladimir Golovnev (Glassez)
386f99cb1d Fix "Set location" to be really applied 2022-03-21 11:58:37 +03:00
Vladimir Golovnev (Glassez)
a4b606c6e9 Fix compilation issues due to inappropriate QString usage 2022-03-21 11:50:32 +03:00
AbeniMatteo
baa8d2c326 Add option to toggle filters sidebar
PR #15409.
2022-03-21 12:41:06 +08:00
Chocobo1
e1ca0f3ff9 Merge pull request #16669 from Chocobo1/literal
Use QString literals
2022-03-21 12:09:43 +08:00
Vladimir Golovnev
ca2be2f499 Prevent Digest32 shared data from being detached
Delayed hash string generation should not cause detaching of shared data.

PR #16664.
2022-03-20 12:26:13 +03:00
Vladimir Golovnev
5960e7dda6 Prevent crash when open torrent destination folder
Uses the same workaround as Qt does to call ShellExecute() when you use QDesktopServices::openUrl().
PR #16670.
Closes #16423.
2022-03-20 11:08:27 +03:00
Chocobo1
efc04645b7 Use QString literals
It covers src/webui and enables `QT_NO_CAST_FROM_ASCII`.
2022-03-20 13:33:40 +08:00
Chocobo1
f888fb4ac7 Remove unused code 2022-03-19 15:57:37 +08:00
Chocobo1
e71e97cb68 Merge pull request #16652 from Chocobo1/literal
Use QString literals
2022-03-18 14:09:29 +08:00
Chocobo1
1b4c5fd34d Remove unused variable 2022-03-18 12:48:37 +08:00
Chocobo1
802ec5a14e Use QString literals
This patch covers src/gui and some leftovers from previous commit.
2022-03-18 12:46:01 +08:00
Chocobo1
5341478036 Merge pull request #16647 from NotTsunami/hscroll
Add horizontal scrolling for tracker list and torrent content
2022-03-18 12:43:32 +08:00
Chocobo1
7694b21dff Enlarge "speed limits" icons
And make use of QStyle pixelMetric().
PR #16630.
2022-03-18 12:27:45 +08:00
Tyler Dunn
cf061b7d30 Allow buttons to be focusable
This improves accessibility.
PR #16648.
2022-03-17 12:51:47 +08:00
Chocobo1
7fffb6526c Remove redundant properties
And revise tooltip messages.
PR #16651.
2022-03-17 12:50:08 +08:00
NotTsunami
dd5b16831c Unify coding style 2022-03-16 21:45:24 -04:00
Vladimir Golovnev
b3ca2ea179 Merge pull request #16573 from glassez/resume-data
Prevent loading resume data with inconsistent ID
2022-03-16 20:30:04 +03:00
NotTsunami
b5d67f90e4 Add horizontal scrolling for tracker list and torrent content 2022-03-15 15:05:47 -04:00
Vladimir Golovnev (Glassez)
ce42f7c9f1 Properly handle metadata download for an existing torrent 2022-03-15 18:17:24 +03:00
Chocobo1
02869d7428 Avoid unnecessary lookups
Fix up 30319e51e5.
PR #16629.
2022-03-15 12:33:12 +08:00
Aleksandr Cupacenko
67b35b76ac Fix C++ word breaking
Fixes #13805.
PR #16636.
2022-03-14 12:27:44 +08:00
Chocobo1
baebabbfd8 Merge pull request #16639 from Chocobo1/hash
Avoid redundant hashing
2022-03-14 12:26:55 +08:00
Chocobo1
154ee1a73e Use hashing helpers provided by Qt6 2022-03-13 17:37:54 +08:00
Chocobo1
b3fb6bd990 Avoid redundant hashing
The return type of `std::hash()` is larger (or equal) than what
`qHash()` requires so we can omit hashing it again.
2022-03-13 17:37:54 +08:00
Chocobo1
926d51839f Update function signature for Qt6 qHash()
Since the `qhash()` signature has changed in Qt6.
2022-03-13 16:05:11 +08:00
Chocobo1
8de966ea88 Merge pull request #16585 from Chocobo1/qstring
Use QString literals
2022-03-12 12:49:08 +08:00
Chocobo1
85b0a40a0e Merge pull request #16587 from jagannatharjun/tracker-filter
Optimize torrent filters in GUI
2022-03-12 12:48:49 +08:00
Chocobo1
88fe94bd6a Remove obsoleted functions from Utils::Gui namespace
`widget` parameter is kept for now to avoid major disruption for other PR.
Also add comments for loading svg images.

PR #16613.
2022-03-11 13:40:58 +08:00
Aleksandr Cupacenko
1b53c590f2 Allow blank lines in multipart form-data input
Fixes #11298.
PR #16579.
2022-03-11 13:40:22 +08:00
Chocobo1
2ee5b35f48 Use proper image loading path for SVG icons 2022-03-11 00:11:30 +08:00
Chocobo1
f0dd7b7dae Use QString literals
This patch covers src/app and src/base folders.
Follow up of ab64ee872b.
2022-03-11 00:11:30 +08:00
Chocobo1
f08c0afbea Update NSIS French translation
PR #16562.

Co-authored-by: RqndomHax <paul.codepro@gmail.com>
2022-03-10 12:32:53 +08:00
Chocobo1
5a417c6a29 Merge pull request #16584 from Chocobo1/pr_16548
Allow setting the number of maximum active checking torrents
2022-03-09 10:10:15 +08:00
Chocobo1
9f32e6e50d Fix wrong parentheses
Fix up 294ea17222.
2022-03-08 13:58:02 +08:00
An0n
801cfdbc24 Allow setting the number of maximum active checking torrents
This is to allow re-checking of multiple torrents simultaneously. This will benefit users who
have multiple disks or SSD.
Closes #15296.

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2022-03-08 13:24:12 +08:00
xavier2k6
889d994dbc Remove unnecessary UI properties from "IP Filter Refresh" button
PR #16575.
2022-03-08 13:22:23 +08:00
Chocobo1
97c28e1e51 Merge pull request #16594 from Chocobo1/alert
Add option for enable/disable performance warnings from libtorrent
2022-03-08 13:19:54 +08:00
Prince Gupta
ad6e2b4b94 Create hash string of Digest on demand
most of the time hash string is not needed and InfoHash is often used as
temporaries for torrent searching in handling of torrent alerts. This
improves the creation time of Infohash
2022-03-08 01:14:36 +05:30
Prince Gupta
da12daffee Cache tracker item in TrackerFilterList 2022-03-08 01:12:06 +05:30
Prince Gupta
30319e51e5 Improve Status Filter
replaces quadratic update operation with linear
2022-03-08 01:12:06 +05:30
Chocobo1
294ea17222 Provide upstream documentation link for performance warning 2022-03-07 13:26:37 +08:00
Chocobo1
fad954df18 Add option for enable/disable performance warnings from libtorrent 2022-03-06 21:05:17 +08:00
Prince Gupta
25be00931a Optimize tracker insertion in TrackerFiltersList 2022-03-06 12:04:01 +05:30
Prince Gupta
cd9ed1706d Improve torrent event handling in TrackerFiltersList 2022-03-06 12:04:01 +05:30
Chocobo1
b034b86be8 Merge pull request #16574 from xavier2k6/update_actions
GHA CI: Update multiple workflow `actions`
2022-03-06 13:00:09 +08:00
An0n
aa189a7fc6 Disable force reannounce when it is not possible
Closes #12080.
PR #16551.
2022-03-06 12:59:31 +08:00
xavier2k6
074cbdad28 GHA CI: Update upload-artifact action to v3 2022-03-04 23:13:36 +00:00
Vladimir Golovnev (Glassez)
cbc0ef860b Prevent loading resume data with inconsistent ID 2022-03-04 09:22:56 +03:00
Chocobo1
ab64ee872b Use QString literals
The plan is to define `QT_NO_CAST_FROM_ASCII` eventually.
PR #16561.
2022-03-04 13:25:22 +08:00
xavier2k6
a63515b8f4 GHA CI: Update stale action to v5 2022-03-02 19:44:46 +00:00
xavier2k6
4dcd6df136 GHA CI: Update setup-python action to v3 2022-03-02 19:41:43 +00:00
xavier2k6
cea1bbde23 GHA CI: Update checkout action to v3 2022-03-02 19:39:35 +00:00
Aleksandr Cupacenko
2c8447853b Focus save path when Manual mode is selected initially
Closes #15972.
PR #16536.
2022-03-02 13:27:22 +08:00
Chocobo1
116664285d GHA CI: Don't cancel CI builds on non-pull-request branches
Fix up 2652c73a4f.
PR #16558.
2022-03-02 13:26:13 +08:00
Vladimir Golovnev
213b18e33b Merge pull request #16531 from glassez/save-path
Correctly handle changing of global save path
2022-03-01 19:59:35 +03:00
Vladimir Golovnev
299f981441 Allow to limit max memory working set size
PR #16485.
2022-03-01 16:42:25 +03:00
An0n
7ea827f8d3 Add right click menu for status filters
This will allow users to perform action on all torrents with a single click instead of having to select all with ctrl+A or other cumbersome ways. Basically it copies the function found in tracker/category filters.

Closes #13398.
PR #16547.
2022-03-01 13:18:48 +08:00
An0n
c2af5c6a3f Allow setting priority for partially downloaded multi-file torrent
Currently you can't directly change the priority of a partially completed multi file torrent. You'll have to start downloading those files and then change their priority.

Closes #10994.
Closes #8673.
PR #16546.
2022-03-01 12:53:39 +08:00
thalieht
63812ca951 Don't use hack to make the first column movable
PR #16545.
2022-03-01 12:50:10 +08:00
Aleksandr Cupacenko
98bdfcef65 Fix scrolling to the lowermost visible torrent
Fixes #3221.
PR #16543.
2022-03-01 12:49:40 +08:00
Chocobo1
ac97ed685f Add tuning options related to performance warnings
Related: #16462.
PR #16538.
2022-03-01 12:44:48 +08:00
Vladimir Golovnev (Glassez)
c5ff9b353c Allow to disable Automatic mode when "temp" path changed 2022-02-28 09:41:44 +03:00
Vladimir Golovnev (Glassez)
04c1988665 Correctly handle changing of global save path 2022-02-28 09:04:37 +03:00
Chocobo1
36c14ca587 Merge pull request #16539 from Chocobo1/ci
GHA CI: install boost library manually
2022-02-28 12:43:58 +08:00
Chocobo1
0c118bed61 GHA CI: disable uploading built artifacts for macOS
The binary aren't usable universally because users are required to
install related libraries.
2022-02-27 15:45:27 +08:00
Chocobo1
6c6474291e GHA CI: install boost library manually
libtorrent 2.0.5 has build issues with boost >= 1.78.
2022-02-27 15:45:26 +08:00
xavier2k6
7fa89c9ba4 GHA CI: Update "WebUI" setup-node action to v3
PR #16532.
2022-02-27 12:49:38 +08:00
Aleksandr Cupacenko
d2aad3a3ca Rename content tab "Size" column to "Total Size"
Closes #7348.
PR #16526.
2022-02-27 12:48:11 +08:00
Aleksandr Cupacenko
ca09b0491e Enable shortcut folders for the Open and Save directory dialogs
PR #16527.
2022-02-26 22:24:50 +03:00
Aleksandr Cupacenko
2e08ae82b1 Enable Combobox editor for the "Mixed" file download priority
Fixes #1544.
PR #16522.
2022-02-26 12:53:41 +08:00
Chocobo1
2652c73a4f GHA CI: cancel outdated in-progress workflow runs
This will only cancel outdated workflow runs on PR branches and won't affect other normal repo
branches.
PR #16511.
2022-02-25 13:34:28 +08:00
Chocobo1
a21bff1dbd Merge pull request #16483 from Chocobo1/preference1
Convert to QString literals
2022-02-22 14:15:49 +08:00
Chocobo1
14fc3dc9b3 Suppress conversion warning 2022-02-21 13:58:51 +08:00
Chocobo1
5cb295341c Convert to QString literals 2022-02-21 13:58:51 +08:00
Chocobo1
b854c3b00e Unify log messages format
This improves readability and may allow users to match log message with
better accuracy.
Now log message is consisted of 2 parts:
The first part is a short sentence describing the event. It should avoid
writing out the specifics of the event as it will be described in the
next part of the message. The sentence should use correct tense of the
event.
The second part consist of `Name: Value` pairs which will provide
sufficient info for the event.

Note that none of the message parts is mandatory, one of them can be
omitted when the resulting log message is clear enough.

PR #16437.
2022-02-21 13:07:04 +08:00
Vladimir Golovnev
2d3ff6a97c Use std::optional to represent "any value" filters
PR #16460.
2022-02-20 13:17:34 +03:00
Chocobo1
c627ed4b6f GHA CI: exclude checking for GUI i18n files
And bump hooks version along the way.
PR #16484.
2022-02-20 13:43:57 +08:00
Vladimir Golovnev
70ec183fca Merge pull request #16444 from glassez/path-has-ext
Improve performance of checking path extension
2022-02-19 07:08:54 +03:00
Vladimir Golovnev (Glassez)
1e45b7f50b Add fast way of removing suggested extension 2022-02-18 11:37:51 +03:00
Vladimir Golovnev (Glassez)
293479a1f2 Improve performance of checking path extension 2022-02-18 11:37:51 +03:00
Juanjo Jiménez
7b8962a796 Update NSIS translations for "Spanish" and "Spanish International"
PR #16455.
2022-02-18 11:28:43 +08:00
Chocobo1
852a14992c Add literal operator to efficiently construct QString in Qt5
PR #16448.
2022-02-18 11:28:04 +08:00
Kevin Cox
37e6a9ebc2 Fix UI crash when torrent is in non-existent category.
This checks that `category_list[categoryHash].torrents` is truthy before dereferencing it. In some cases the API response will have a torrent in a category that doesn't exist resulting in the check to return `undefined` which is not `null`. This broadens the check so that it will create the category even if null.
PR #16432.
2022-02-17 12:20:54 +08:00
Vladimir Golovnev
b3f5bf1583 Try to recover missing categories
PR #16430.
2022-02-16 10:27:36 +03:00
sledgehammer999
a3a8c19dc2 Sync translations from Transifex and run lupdate 2022-02-14 19:28:07 +02:00
Chocobo1
bc94de5626 Merge pull request #16428 from Chocobo1/path
Improve Path constructor
2022-02-14 14:02:50 +08:00
Vladimir Golovnev
c3a64b3d6c Cache file priorities
Speedup access to file priorities by avoiding extra blocking call to libtorrent thread.
Improve the Torrent interface by hiding the asynchrony of file priority changes behind the scenes.

PR #16425.
2022-02-13 08:07:30 +03:00
Chocobo1
70eed10a34 Fix wrong size
Fix up cf96e6c642.
2022-02-12 16:54:38 +08:00
Chocobo1
56c3983885 Improve Path constructor performance 2022-02-12 16:54:38 +08:00
Vladimir Golovnev
78eaa49cd6 Correctly register PathList alias
PR #16411.
2022-02-10 08:12:33 +03:00
Chocobo1
2668a42f0c Merge pull request #16408 from Chocobo1/vararray
Use QVarLengthArray whenever applicable
2022-02-10 12:44:41 +08:00
Vladimir Golovnev
4a7f1116ac Improve tracker status handling
PR #16383.
2022-02-09 18:23:41 +03:00
Chocobo1
f12ce78b5c Remove hack for outdated IE 6 browser
The `mask()` isn't valid in CSS.
2022-02-09 19:00:28 +08:00
Chocobo1
610009fb7f Make Path::operator== a free function 2022-02-09 19:00:27 +08:00
Chocobo1
4cb075b168 Use "table look-up" method for reversing byte
This method takes constant time and is less prone to (CPU) pipeline stalling due to less
computation. Also it is slightly faster than the previous method.
2022-02-09 19:00:27 +08:00
Chocobo1
cf96e6c642 Use QVarLengthArray whenever applicable 2022-02-09 19:00:24 +08:00
Vladimir Golovnev
dd1bd8ad10 Implement class for handling filesystem paths
PR #15915.
2022-02-08 06:03:48 +03:00
Vladimir Golovnev
facfa26eed Allow to use Category paths in "Manual" mode
If the option is enabled any relative save path will be resolved against an appropriate Category path instead of Global default one.

PR #16330.
2022-02-02 09:24:09 +03:00
Prince Gupta
0012a3ede7 Optimize completed files handling
PR #16329.

Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru>
2022-02-01 08:29:54 +03:00
Vladimir Golovnev
b61a818a3f Merge pull request #16333 from thalieht/newdlg
Add Select All/None buttons in new torrent dialog
2022-01-31 15:38:33 +03:00
Chocobo1
a2c44dedce Fix crash when shutting down and clicked on system tray icon
Disconnect all signals of system tray icon when shutting down.

Closes #16324.
PR #16328.
2022-01-31 11:54:44 +08:00
thalieht
a8ad4f784a Fix "Free space on disk" in new torrent dialog
Always initialize it.
2022-01-30 18:52:18 +02:00
thalieht
78d69bcbf0 Add Select All/None buttons in new torrent dialog 2022-01-30 18:52:18 +02:00
Prince Gupta
414361a3db Improve tracker error handling
* Improve tracker error handling
* Fix typo in function name

PR  #16298.
2022-01-30 08:56:31 +03:00
Prince Gupta
1d4071d6d8 Don't rename file because of difference in path separator
PR #16317.
2022-01-30 08:54:37 +03:00
Vladimir Golovnev
47daf1b358 Allow to open incomplete files from content view
Fixes regression from f44341a8e2.

PR #16318.
2022-01-30 08:52:16 +03:00
Chocobo1
7a910a8cc1 Merge pull request #16256 from Chocobo1/bitarray
Speed up bitfields conversion
2022-01-28 11:59:57 +08:00
Vladimir Golovnev
9818c7b6a4 Open correct directory when clicked on Browse button
PR #16252.
2022-01-27 07:41:30 +03:00
Vladimir Golovnev
ca9e5e8531 Change torrent moving state when it is cancelled
PR #16267.
2022-01-27 07:40:17 +03:00
Chocobo1
aafee60033 Allocate memory on stack whenever feasible
The fast path gives another 20% speed up than the slower path.
2022-01-27 03:36:06 +08:00
Vladimir Golovnev
adf7c4ffb6 Merge pull request #16268 from glassez/fix-15955
Store hybrid torrents using "torrent ID" as basename
2022-01-26 15:17:31 +03: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
bc2ef5d726 Add confirmation for enabling Auto TMM from context menu
* Add confirmation for enabling Auto TMM from context 
* Add tooltip to Automatic Torrent Management context menu action

PR #16241.
2022-01-26 06:56:46 +03:00
Vladimir Golovnev (Glassez)
7a539d9890 Store hybrid torrents using "torrent ID" as basename 2022-01-25 11:39:32 +03:00
Vladimir Golovnev (Glassez)
c40408b337 Make Digest32 implicitly shared class 2022-01-25 10:18:23 +03:00
Chocobo1
4e2daf117b Speed up bitfields conversion
The old code took 3~5 times longer than the newer version.
2022-01-25 12:19:50 +08:00
Chocobo1
9553afc3c2 Merge pull request #16247 from Chocobo1/count_bits
Speed up piece relevance calculation
2022-01-25 12:11:36 +08:00
Vladimir Golovnev
26352c9eb4 Cache pieces info
PR #16238.
2022-01-25 06:05:16 +03:00
thalieht
62c167fc77 Add tooltip to Automatic Torrent Management context menu action 2022-01-24 18:32:43 +02:00
thalieht
03c774eae7 Add confirmation for enabling Auto TMM from context menu
Closes #16046
2022-01-24 18:32:43 +02:00
Chocobo1
53992bf0d5 Initialize class variable in initializer list 2022-01-24 13:47:34 +08:00
Chocobo1
ff99e5ac9a Speed up piece relevance calculation
For ~800 pieces, this roughly cuts the run time (of this function) in
half.
2022-01-24 12:04:26 +08:00
Prince Gupta
0cc318664d Improve Torrent content tree structure creation
Use QHash to cache folder items.
PR #16183.
2022-01-24 10:55:06 +08:00
Chocobo1
43c427b253 Merge pull request #16167 from Chocobo1/auto-resize
Add "Auto resize columns" functionality
2022-01-24 10:54:26 +08:00
Chocobo1
44c8d60a70 Remove unused parameter 2022-01-23 15:03:26 +08:00
Chocobo1
54252184ab Make use of std algorithms
Since the result code is shorter.
2022-01-23 15:03:26 +08:00
Chocobo1
7ae68b20e7 Add "Auto resize columns" functionality 2022-01-23 15:03:05 +08:00
Chocobo1
208234b934 Clean up code related to show/hide columns 2022-01-21 22:59:21 +08:00
thalieht
1729b9f29c Fix wrong closing brace position
Regression from 0086bf8958.
PR #16172.
2022-01-20 12:30:46 +08:00
Vladimir Golovnev
5d69334287 Don't start separate event loop for QFileDialog
It conflicts with QMenu on Qt6 that causes the crash.

PR #16158.
2022-01-20 07:22:16 +03:00
Vladimir Golovnev
4d54fb675f Correctly handle received metadata
It did not work correctly, since it assumed that 'lt::torrent_plugin' is created at an earlier stage and is able to track all changes in the torrent state, but in reality it turned out that it was created after the torrent moved to the `downloading_metadata` state, so we had to additionally handle it in the constructor.

PR #16121.
2022-01-16 16:06:15 +03:00
Chocobo1
e93de54eb5 Merge pull request #16099 from Chocobo1/errormsg
Revise error message
2022-01-15 12:01:55 +08:00
Vladimir Golovnev
43441d8291 Handle missing torrent alerts
PR #16085.
2022-01-14 15:18:18 +03:00
Chocobo1
d6dce1efe9 Add comment for new libtorrent build flag
Upstream change:
66def89089
2022-01-14 14:48:47 +08:00
Chocobo1
dca69f053a Remove outdated build configuration 2022-01-14 14:48:47 +08:00
Chocobo1
5ebbed8160 Revise error message
Remove the period mark at the end of error message since
`errc.message()` already contains one.
2022-01-14 14:48:41 +08:00
thalieht
3fdb330bd9 Restore all settings to the torrent list's context menu
Set location
Category
Sequential download
Download first/Last pieces first
Automatic Torrent Management

PR #16016.
2022-01-14 14:45:03 +08:00
Chocobo1
c05dbc451a GHA CI: build libtorrent with /guard:cf flag
qbt cmake script enables that flag already, so it make sense to build
dependencies with it too.
PR #16083.
2022-01-14 14:43:22 +08:00
Vladimir Golovnev
5f623e32c4 Correctly handle XML parsing errors
PR #16071.
2022-01-13 09:36:08 +03:00
thalieht
7c37c5c06f Update the torrent's download path field when changing category
In torrent options dialog while in Automatic Management Mode.
PR #16026.
2022-01-13 12:44:50 +08:00
Chocobo1
4d541ca969 Add Qt6 version to INSTALL file
PR #16054.
2022-01-13 12:39:15 +08:00
Chocobo1
e4a67183bd Update default value of "Type of service for peers"
Upstream change:
3d701c7380
PR #16036.
2022-01-12 11:53:07 +08:00
sledgehammer999
d25be686ee Merge pull request #16030 from sledgehammer999/migrate_proxy_enum
Migrate proxy settings
2022-01-12 02:51:57 +02:00
Vladimir Golovnev
a3be239a60 Keep "torrent info" alive while generating .torrent file
PR #16018.
2022-01-11 07:29:42 +03:00
Vladimir Golovnev
709a053c7c Merge pull request #16009 from glassez/dont-move-into-itself
Don't try to move storage into its current location
2022-01-11 07:26:22 +03:00
Vladimir Golovnev
d39c6bef4b Correctly handle Auto TMM in Torrent Files Watcher
PR #13690.
2022-01-11 07:25:30 +03:00
Vladimir Golovnev
84a8158aa2 Correctly track the root folder name change
PR #16004.
2022-01-11 07:24:24 +03:00
sledgehammer999
a7c5826e05 Migrate proxy settings
Q_ENUM_NS(ProxyType) was introduced in 4.4.0.
Before that wrapping QMetaEnum used the int value itself for loading/storing.

Closes #15994
2022-01-11 02:50:03 +02:00
Nicolas Fella
2da39e2fbb Mark as single window app in .desktop file
qBittorrent is a single-window application.
By marking it as such desktop environments know to not offer to open
a new window for it.
This is a new standard key intruduced in
3ea3bc26e2
PR #15996.
2022-01-10 13:31:53 +08:00
Chocobo1
d6e0164766 WebAPI: fix wrong key used for categories
Regression from 1c0f8b4289.
Closes #15969.
PR #15988.
2022-01-10 13:31:15 +08:00
Vladimir Golovnev (Glassez)
fbc85bed64 Move torrent immediately when "save path" is changed 2022-01-10 08:18:34 +03:00
Vladimir Golovnev (Glassez)
52b54fe154 Don't try to move storage into its current location 2022-01-09 21:14:49 +03:00
Vladimir Golovnev
f44341a8e2 Handle .!qB extension behind the scenes
PR #15920.
2022-01-08 08:45:50 +03:00
Chocobo1
9f6130cbaa Move new line character out of translation string
PR #15948.
2022-01-08 12:24:49 +08:00
Chocobo1
24d73f5822 Merge pull request #15947 from Chocobo1/remove
Remove TODO and NEWS files
2022-01-08 12:24:10 +08:00
thalieht
d3bdeaab3f Replace "seeding_duration" with "finished_duration" everywhere
Closes #10223.
PR #13601.
2022-01-07 15:22:51 +08:00
Chocobo1
b66f4b9322 Remove TODO and NEWS files
The contents are outdated and the files are not in use.
`configure.ac` is adjusted to suppress automake errors.
https://www.gnu.org/software/automake/manual/html_node/Strictness.html#index-Strictness_002c-foreign
2022-01-07 12:19:01 +08:00
Chocobo1
9dfe5f5f07 Sort entires 2022-01-07 12:18:03 +08:00
sledgehammer999
d6fc020ba7 Bump to 4.5.0alpha1 2022-01-06 20:47:06 +02:00
sledgehammer999
8397b118b7 Update Changelog 2022-01-06 20:37:49 +02:00
sledgehammer999
74dc000ac1 Sync translations from Transifex and run lupdate 2022-01-06 20:35:45 +02:00
sledgehammer999
9b61991523 Merge pull request #15926 from sledgehammer999/fix_migration
Correct the order of the migrated settings' mappings
2022-01-06 14:46:48 +02:00
sledgehammer999
702c79a92f Don't delete old config keys yet
It will allow users to go back to previous versions without
losing their settings.
2022-01-05 01:01:10 +02:00
sledgehammer999
a27822b557 Correct the order of the migrated settings' mappings 2022-01-04 16:48:17 +02:00
sledgehammer999
bdcb00a3b2 Merge pull request #15923 from sledgehammer999/misc_fixes
Misc fixes before v4.4.0
2022-01-04 16:40:37 +02:00
sledgehammer999
ac5a485651 Disambiguate the data type 2022-01-04 01:39:01 +02:00
sledgehammer999
e8c65388eb Bump copyright year 2022-01-04 01:39:00 +02:00
sledgehammer999
f2cbb61d49 Sync translations from Transifex and run lupdate 2022-01-04 00:39:43 +02:00
sledgehammer999
0a1c61d9d3 Merge pull request #15922 from glassez/fix-paths
Correctly concatenate path components
2022-01-04 00:17:54 +02:00
Chocobo1
01a0fff4c2 Add missing field initial value
Suppresses the following warning:
qBittorrent/src/base/bittorrent/categoryoptions.cpp: In static member function ‘static BitTorrent::CategoryOptions BitTorrent::CategoryOptions::fromJSON(const QJsonObject&)’:
qBittorrent/src/base/bittorrent/categoryoptions.cpp:44:59: warning: missing initializer for member ‘BitTorrent::CategoryOptions::DownloadPathOption::path’ [-Wmissing-field-initializers]
   44 |         options.downloadPath = {downloadPathValue.toBool()};
2022-01-03 23:42:48 +02:00
Chocobo1
bf9516d164 Simplify code
This version saves an `if` conditional.
2022-01-03 23:42:48 +02:00
Vladimir Golovnev (Glassez)
fdbf8cb0ee Correctly concatenate path components 2022-01-03 19:44:47 +03:00
Prince Gupta
7e8a176751 Support folder based UI Themes
Support folder based Themes in UIThemeManager.
Add option to select config.json as them file.

PR #15888.
2022-01-03 09:11:12 +03:00
Vladimir Golovnev
61504ae3b1 Merge pull request #15793 from glassez/save-path
Redesign "Incomplete folder" feature
2022-01-02 22:25:00 +03:00
Chocobo1
dd76525372 Merge pull request #15911 from Chocobo1/pair
Replace Qt functions with std counterparts
2022-01-02 13:34:31 +08:00
Vladimir Golovnev (Glassez)
1c0f8b4289 Redesign "Incomplete folder" feature
Change "Incomplete/temp folder" term with "download folder".
Allow to set "download folder" per torrent (in manual mode) and per category (in automatic mode).
2022-01-01 20:58:49 +03:00
Chocobo1
63043b4927 Replace min, max, clamp functions with std counterparts 2022-01-01 15:22:07 +08:00
Chocobo1
3ea4c66d41 Replace QPair with std::pair 2022-01-01 15:22:07 +08:00
Chocobo1
781d7fbf1a Merge pull request #15884 from Chocobo1/migrate
Migrate "setting key mappings" to upgrade code
2021-12-25 14:05:52 +08:00
Chocobo1
e7ebbffbfd Set appropriate migration version number for new installations 2021-12-24 14:50:06 +08:00
Chocobo1
39f054eef6 Migrate "setting key mappings" to upgrade code 2021-12-24 14:50:06 +08:00
Chocobo1
7a620c794d Fix garbage message when reporting error
PR #15883.
2021-12-24 12:28:22 +08:00
Chocobo1
cc13f3e10d GHA CI: Don't upload built artifacts for dynamic linking builds
As those won't work on testers system unless they install *all* and
same version of the dependent libraries too.

PR #15870.
2021-12-21 12:26:50 +08:00
Vladimir Golovnev (Glassez)
b0e41abf5a Allow to set placeholder for FileSystemPathEdit 2021-12-20 08:56:33 +03:00
Vladimir Golovnev
5347897b7d Merge pull request #15852 from glassez/torrent-info
Improve torrent content handling
2021-12-20 08:54:46 +03:00
Vladimir Golovnev (Glassez)
6f8fae9a7b Apply selected layout to displayed torrent content 2021-12-19 16:16:16 +03:00
Vladimir Golovnev (Glassez)
62b50d1475 Make TorrentInfo immutable 2021-12-19 16:16:16 +03:00
Vladimir Golovnev
2fb0c86f1e Add "Show torrent options" double-click action
PR #15853.
Closes #15837.
2021-12-19 09:01:20 +03:00
Chocobo1
aedd997604 Don't expire connection when there are data in buffer
For writing, this ensures expire handler won't be executed in a small
time window, that is after `m_socket->write()` and before
`QIODevice::bytesWritten()` signal.
For reading, this let the socket to have the chance to process the
received data instead of dropping it.

PR #15849.
2021-12-18 12:28:30 +08:00
Chocobo1
aa3da942cb Use correct URL scheme when https is enabled
Closes #15844.
PR #15847.
2021-12-17 11:49:11 +08:00
Chocobo1
87e1a14a4b Merge pull request #15831 from Chocobo1/server
Improvements for WebAPI server
2021-12-16 13:38:05 +08:00
Chocobo1
00f6bb7c82 Merge pull request #15829 from Chocobo1/trayIcon
Simplify tray icon related code
2021-12-15 12:51:37 +08:00
Chocobo1
cca93c2be2 Show GUI lock icon after system tray icon is initialized 2021-12-14 14:41:17 +08:00
Chocobo1
ad9d0608d4 Avoid needless string-bytes conversion
This saves a few microseconds.
2021-12-14 13:52:34 +08:00
Chocobo1
3c5688c6f6 Reserve enough buffer space according to response content size 2021-12-14 13:52:34 +08:00
Chocobo1
ece92a886a Restart idle timer on sending network response 2021-12-14 13:52:33 +08:00
Chocobo1
85777ea491 Simplify tray icon related code 2021-12-13 15:56:20 +08:00
Chocobo1
b8a84dbd83 Disable system tray icon menu when app is exiting 2021-12-13 15:56:16 +08:00
Chocobo1
35c31906b7 GHA CI: don't let lupdate scan boost library
As it produces superflous warnings.
2021-12-13 15:08:36 +08:00
Chocobo1
1fa940876f Remove redundant UI cleanups
Just exiting the application will handle all of them automatically.
2021-12-13 15:08:25 +08:00
Chocobo1
c652123145 Merge pull request #15811 from Chocobo1/configVersioning
Introduce versioning on main configuration file
2021-12-12 12:53:28 +08:00
Chocobo1
1c52fff1cc Unify value loading paths
The idea is to try load every intermediate value from the base case and
then convert them to their respective type.
2021-12-11 01:45:49 +08:00
Chocobo1
261f08b90e Sort WebUI language selection values 2021-12-11 01:45:49 +08:00
Chocobo1
2d48581570 Move main window setting to its own section 2021-12-11 01:45:49 +08:00
Chocobo1
b8a7ecfe69 Introduce versioning on main configuration file 2021-12-11 01:45:49 +08:00
Chocobo1
cbc2de6b85 Use proper method for checking value existence 2021-12-09 15:57:01 +08:00
xavier2k6
9d2bb67834 GHA CI: Update libtorrent version(s)
PR #15819.
2021-12-09 12:32:52 +08:00
Vladimir Golovnev
3d7ff9765a Make meaning of "torrent root path" consistent
PR #15816.
2021-12-09 06:12:47 +03:00
Chocobo1
28f2def21f Remove redundant layer of QVariant in Preferences class
PR #15812.
2021-12-07 12:17:37 +08:00
Chocobo1
0ee303789a GHA CI: include translation file generation in test
PR #15814.
2021-12-07 12:17:15 +08:00
Chocobo1
6ccc92020c Disable "add peers" menu items instead of hiding it
Menu item in disabled state can show tool tip to help user understand
why it is unavailable.
Related issue: #15785.
PR #15787.
2021-12-06 13:54:38 +08:00
Chocobo1
e3fe66d3ec Store enum type in settings directly
Affected settings will be migrated to new keys so nothing should break.

PR #15800.
2021-12-06 13:53:52 +08:00
OctopusET
ab5605d54b Use proper string for Korean language
PR #15799.
2021-12-01 12:06:05 +08:00
Chocobo1
a7a90613c2 Merge pull request #15796 from Chocobo1/clazy
Fix defects found by clazy
2021-11-30 12:02:33 +08:00
Chocobo1
19d95ebd10 Add comment for qHash implementation requirements
As clazy report false-positive on this.
2021-11-29 01:28:49 +08:00
Chocobo1
0e1849346b Avoid iterating over a temporary variable 2021-11-29 00:31:03 +08:00
Chocobo1
0f34e3bed9 Don't use deprecated Q_ENUMS
See: https://doc.qt.io/qt-5/qobject-obsolete.html#Q_ENUMS
2021-11-29 00:31:03 +08:00
Chocobo1
c8b66b25e8 Avoid potential container detachment
Suppress clazy warning:
warning: Don't call QList::operator[]() on temporary [-Wclazy-detaching-temporary]
2021-11-29 00:31:03 +08:00
Chocobo1
e6f07a6fe4 Use implicit copy-constructor generated by compiler
This also suppresses the following clang warning:
warning: definition of implicit copy assignment operator for 'Version<unsigned short, 2>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
2021-11-29 00:30:17 +08:00
Chocobo1
51469f8fa2 Store Qt6 table header states under a different key
Follow up 22abbc1d41.
PR #15774.
2021-11-23 11:02:07 +08:00
Chocobo1
d78b2a569f Fix handling when Content-Length field is absent
Closes #15754.
PR #15757.
2021-11-21 11:48:49 +08:00
Chocobo1
ec6c970775 Merge pull request #15762 from Chocobo1/artifact
GHA CI: Use prebuilt Qt library
2021-11-21 11:47:50 +08:00
Chocobo1
67c45efff7 GHA CI: Use prebuilt Qt library 2021-11-20 14:33:12 +08:00
Chocobo1
a54772bf35 Appveyor CI: Upload built artifacts 2021-11-20 14:33:12 +08:00
Chocobo1
166be2a94d Merge pull request #15749 from Chocobo1/ci
GHA CI: Simplify commands
2021-11-19 12:31:16 +08:00
Chocobo1
7150d05399 GHA CI: Simplify commands 2021-11-18 00:20:58 +08:00
Chocobo1
36a6e22f27 Appveyor CI: Setup build environment directly
vcvars64.bat is just a link to vcvarsall.bat with parameter `x64`.
2021-11-18 00:20:26 +08:00
Chocobo1
dc13eaed1f Revert "Use percentage notation for alpha-values in CSS"
This reverts commit 864dca1b67.
Upstream change: https://github.com/stylelint/stylelint-config-standard/pull/212
PR #15745.
2021-11-18 00:19:27 +08:00
xavier2k6
001bd60d36 CI: Update AppVeyor image to Visual Studio 2022
PR #15727.
2021-11-16 19:02:07 +03:00
Chocobo1
b063042988 Apply download priority immediately in torrent content view
Apply the new priority after picking it via drop-down menu.

Fixes #14667, #15238.
PR #15739.

Co-authored-by: a-sum-duma <68896601+a-sum-duma@users.noreply.github.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2021-11-16 13:50:53 +08:00
a-sum-duma
fa1d49add5 Properly check if file priority changes
Current item priority is compared against new checkbox state. I believe the intention was to check if the priority changes before performing further actions. This PR fixes the issue - compare priority against new value that is about to be set rather then the checkbox state.

PR #15740.
2021-11-16 13:50:11 +08:00
Chocobo1
b45248bf99 Merge pull request #15452 from thalieht/autoTMM
Move some options from transfer list's context menu into "Torrent options" dialog
2021-11-10 12:39:59 +08:00
Chocobo1
dfe862dcd5 Merge pull request #15717 from Chocobo1/irc
WebUI: Remove IRC in about page
2021-11-10 12:28:53 +08:00
sledgehammer999
d4ddeaa917 Sync Changelog entries between branches 2021-11-09 19:07:23 +02:00
Chocobo1
13a49866a7 WebUI: Revise about page
Follow GUI more closely.
2021-11-09 13:17:55 +08:00
Chocobo1
7e2aea92b0 WebUI: Remove IRC in about page
This follows the GUI change in 65a30bab3f.
2021-11-09 13:17:41 +08:00
Chocobo1
7db51b2f8d Add IRC link
https://en.wikipedia.org/wiki/Internet_Relay_Chat#URI_scheme

And also show the angle brackets in rendered markdown.
2021-11-09 12:12:49 +08:00
Chocobo1
ae1b963e0f Merge pull request #15682 from Chocobo1/qt6
Store Qt6 table header states under a different key
2021-11-09 11:23:04 +08:00
a-sum-duma
b29b7e0185 Add more download options to torrent search result right-click menu
PR #15654.
2021-11-09 06:11:47 +03:00
Chocobo1
71270260bf Reformat code 2021-11-08 13:34:21 +08:00
Chocobo1
22abbc1d41 Store Qt6 table header states under a different key 2021-11-08 13:34:21 +08:00
Chocobo1
32698fe0be Migrate away from low-level SettingsStorage class
Also add `QFlags<T>` support to `SettingsStorage`.
PR #15693.
2021-11-08 13:23:33 +08:00
thalieht
16f8d6a936 Allow deselecting radio buttons in "Torrent options" for mixed torrents 2021-11-06 12:47:53 +02:00
thalieht
046d6f3bc1 Move a few torrent context menu actions into "Torrent options" dialog
Automatic torrent management
Save path
Category
Download in sequential order
Download first and last pieces first

closes #15447, closes #14064
2021-11-06 12:47:53 +02:00
Chocobo1
e33c4086b9 GHA CI: Revise artifact folder layout
Now qbittorrent binaries will be placed in its own folder and cmake
related artifacts will be in another.

PR #15683.
2021-11-06 11:11:47 +08:00
Andrei Stepanov
51d754a53e Optimize PNG images losslessly with FileOptimizer
PR #15662.
2021-11-05 12:59:25 +08:00
Chocobo1
49976bcd83 Merge pull request #15648 from Chocobo1/lockfile
Create lock file in config folder instead of temp folder
2021-11-03 12:15:22 +08:00
Losiki
f991d2bdb4 Update Update Simplified Chinese translation
PR #15653.
2021-11-02 17:54:18 +03:00
xavier2k6
e6ff23885e Sync flag icons with upstream
Upstream commit e0577caf317aa721b62c5a4788b13572cc163252 (Release v4.1.4)
PR #15657.
2021-11-02 11:10:50 +08:00
Chocobo1
7aa859a442 Don't use deprecated statfs64() on macOS (#15661)
Co-authored-by: Nick Korotysh <kolchaprogrammer@list.ru>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2021-11-02 10:41:09 +08:00
Chocobo1
180deb867a Use char array directly
This eliminates the possibility of reassigning the pointer to another
address.
2021-11-01 14:08:49 +08:00
Chocobo1
a5c531f0a4 Create lock file in config folder instead of temp folder
Some linux distros seem to alter TMPDIR environment variable and
therefore hamper qbt ability to find the lock files. So use config
folder instead of TMPDIR folder to create/locate the lock files.
Note that this change will also make qbt become one instance per-user
instead of one instance per-system.

Closes #15646.
2021-11-01 14:08:49 +08:00
a-sum-duma
5dd70b88d3 Fix torrent content sorting
Fix improper sorting of the list of files contained by a torrent.
Always load all torrent content data so that the files list can be sorted properly.
Load torrent content only when needed. Don't load the list of files contained by a torrent if the list widget is not visible.

PR #15604.
2021-11-01 11:45:48 +08:00
sledgehammer999
40f2718265 Sync translations from Transifex and run lupdate 2021-10-31 12:29:34 +02:00
sledgehammer999
ddd106655d Merge pull request #15622 from sledgehammer999/revert_nsis_bengali
Revert "NSIS: Add Bengali translation"
2021-10-31 12:07:49 +02:00
Vladimir Golovnev
cc61ad01b6 Explicitly set "added time" when adding new torrent
Don't overwrite "added time" with possibly incorrect value.
Explicitly set "added time" when adding new torrent.

PR #15644.
2021-10-31 12:08:19 +03:00
sledgehammer999
8a44c1f6d5 Bump to 4.4.0rc1 2021-10-31 02:56:25 +03:00
sledgehammer999
e370cbb06b Sync translations from Transifex and run lupdate 2021-10-31 02:52:52 +03:00
Likol Tung
cb0c2e3b9c Fix WebUI reverse proxy section doesn't work
As title. because load with incorrect key.
Also moving proxy list label to left, screenshot: https://imgur.com/Rz038uW
PR #15634.
2021-10-29 11:50:09 +08:00
sledgehammer999
80360cc79a Revert "NSIS: Add Bengali translation"
This reverts commit 8085db6ba9.
2021-10-25 00:46:34 +03:00
Chocobo1
559a979536 GHA CI: Add Qt6 builds
PR #15610.
2021-10-24 00:57:50 +08:00
Chocobo1
5e88537809 Merge pull request #15611 from Chocobo1/webui
Suppress WebUI CSS warnings
2021-10-24 00:57:20 +08:00
Chocobo1
8b60baea99 Remove unused CSS properties 2021-10-22 14:45:37 +08:00
Chocobo1
ac61c33d1c Use modern color notation in CSS 2021-10-22 14:43:13 +08:00
Chocobo1
3088f04e6f Use standard CSS properties instead of vendor specifics 2021-10-22 14:43:13 +08:00
Chocobo1
864dca1b67 Use percentage notation for alpha-values in CSS 2021-10-22 14:43:12 +08:00
Chocobo1
15320018f0 Use shorthand for CSS properties 2021-10-22 14:43:05 +08:00
Chocobo1
6226dd5b80 Add quotes to URL in CSS files
Better add quotes: https://stackoverflow.com/a/34383157
2021-10-22 14:43:05 +08:00
Chocobo1
aafc1064d9 Disable CSS selector naming rule 2021-10-22 14:42:12 +08:00
xavier2k6
fb2fbc875d GHA CI: Use macOS-latest VM image
PR #15589.
2021-10-22 12:16:11 +08:00
Nowshed H. Imran
8085db6ba9 NSIS: Add Bengali translation
PR #15602.
2021-10-22 05:52:11 +03:00
Vladimir Golovnev
4f20769a6c Use respective subcategory for "watched" torrents
Assign respective Subcategory of configured Category to torrents
if Automatic Torrent Management Mode is set for Watched folder.

PR #15603.
2021-10-22 05:51:11 +03:00
SiderealArt
090199f9de NSIS: Update Traditional Chinese translation
PR #15595.
2021-10-20 07:15:09 +03:00
Chocobo1
cd3635985e Merge pull request #15567 from Chocobo1/qt6
Fix Qt6 compiling issues
2021-10-15 11:55:13 +08:00
Chocobo1
8a7179195f Suppress remove null widget warning
And improve text format for translation work.
2021-10-14 00:25:30 +08:00
Chocobo1
e45e29b431 Avoid type specifier mismatch
Qt5 uses `int` and Qt6 uses `qsizetype`, so use the stream version of
`qDebug()` to avoid specifying types.
2021-10-14 00:24:41 +08:00
Chocobo1
ca28fc27dc Disable deprecated Qt functions
Also Qt6 by default set these attributes to our preferred value.
2021-10-13 12:00:21 +08:00
Chocobo1
08b2cde8e8 Let infohash v2 text be mouse selectable
And drop unused property.
2021-10-13 11:59:44 +08:00
Chocobo1
489d88e02a Suppress conversion warning
This fixes MSVC warning C4305: 'argument': truncation from 'double' to 'float'.
`QColor::setAlphaF()` parameter has been changed to `float` in Qt6.
2021-10-12 15:37:45 +08:00
Chocobo1
dff39ffd20 Fix typo
https://doc.qt.io/qt-6/qmake-variable-reference.html#qt-major-version
2021-10-12 14:16:53 +08:00
Chocobo1
3c948ef063 Merge pull request #15562 from Chocobo1/precommit
GHA CI: Switch to pre-commit framework for checking file health
2021-10-12 11:33:16 +08:00
Chocobo1
7087565d92 Fix typo 2021-10-11 22:17:17 +08:00
Chocobo1
3467358663 GHA CI: Switch to pre-commit framework for checking file health
Now users are able to run the same checks on their local development
environment.
https://pre-commit.com/
2021-10-11 22:17:10 +08:00
Chocobo1
45a1c25a29 Merge pull request #15467 from xavier2k6/Python_URL
Update python installer URL for Windows
2021-10-11 12:47:00 +08:00
Chocobo1
70a11a12b3 Merge pull request #15549 from Chocobo1/api
WebAPI: Use specific number to represent non-existing values
2021-10-11 12:38:38 +08:00
Vladimir Golovnev
5d5b0d572e Merge pull request #15536 from glassez/expected
Don't use output parameters for error handling
2021-10-10 15:04:55 +03:00
Chocobo1
7c8eadfddf Revert "WebUI: group trackers by hostname"
This functionality wasn't ever correctly implemented and couldn't be
done without considerable effort, so revert it for now.
This reverts commit 4ac25a50ed.
PR #15542.
2021-10-10 11:00:21 +08:00
Chocobo1
89ca0c537d Fix filename extension 2021-10-10 02:55:59 +08:00
xavier2k6
a92a6404cb Make Python minimum version requirement an argument 2021-10-09 10:45:26 +01:00
Vladimir Golovnev (Glassez)
78459fcb31 Don't throw exception in TorrentInfo::saveToFile() 2021-10-09 08:54:20 +03:00
Vladimir Golovnev (Glassez)
41fc0fd084 Don't use output parameters for error handling 2021-10-09 08:54:03 +03:00
Chocobo1
5c9655abc3 WebAPI: Use specific number to represent non-existing values
Closes #15545.
2021-10-09 12:31:15 +08:00
Chocobo1
3301797491 Merge pull request #15530 from Chocobo1/errmsg
Log error message in DownloadHandlerImpl class
2021-10-09 12:09:56 +08:00
Daniel Aleksandersen
eb5e1d34df WebUI: Add meta application name
Used for installable/pinned app installs.
PR #15539.
2021-10-09 12:06:44 +08:00
Daniel Aleksandersen
9e92e5995f WebUI: Set icon sizes attribute
Gives browsers more information to pick the best icon.
PR #15540.
2021-10-09 11:59:37 +08:00
Chocobo1
e96f2d7be0 Simplify comparison
From https://doc.qt.io/qt-5/qdatetime.html#operator-eq-eq:
>Since 5.14, all invalid datetimes are equal to one another and differ from all other datetimes.
2021-10-09 02:20:22 +08:00
Chocobo1
03cb51844b Remove redundant define
NOMINMAX is already defined in build scripts.
2021-10-08 11:11:02 +08:00
Chocobo1
6b06cc9216 Log error message in DownloadHandlerImpl class 2021-10-08 11:07:35 +08:00
Chocobo1
6b49323f05 Improve error message reporting 2021-10-08 11:01:48 +08:00
Chocobo1
4a11fab2b1 Add constexpr to Sample class functions 2021-10-08 01:04:58 +08:00
Vladimir Golovnev
c382191e75 Correctly iterate through the files of torrent
PR #15535.
2021-10-07 10:48:00 +03:00
luzpaz
4d480b8761 Fix various typos
Found via `codespell -q 3 -S *.ts`.
PR #15520.
2021-10-05 12:58:25 +08:00
Chocobo1
cd25562fd2 Merge pull request #15516 from Chocobo1/win_ci
GHA CI: build dependencies manually
2021-10-05 12:41:09 +08:00
Chocobo1
9a3d560d9e GHA CI: use larger cache for compiling
Previous default was 500MB and it couldn't fit all compile results in
it, enlarge it to 2GB. Note that 2GB isn't the actual size stored on the
server, it will be compressed again by zstd and will be a lot smaller.
2021-10-03 16:38:34 +08:00
Chocobo1
4924fb95f8 GHA CI: build dependencies manually
Now it builds boost, libtorrent manually and we have control over its
version.
Enable build matrix for libtorrent versions.
Reorganized the folder/file layout in built artifact.
2021-10-03 16:07:03 +08:00
Chocobo1
6de67fe81f Merge pull request #15511 from Chocobo1/pr
Put PR template into action
2021-10-03 12:53:19 +08:00
Vladimir Golovnev
bc71827c01 Improve torrent content handling
Hide .pad files.

PR #15468.
2021-10-02 21:42:58 +03:00
Vladimir Golovnev
a8ade3a04b Merge pull request #14465 from glassez/qt6
Allow to build with Qt6
2021-10-02 21:29:10 +03:00
Chocobo1
eca04e2e92 Revise "Opening PR" section in contributing guide 2021-10-02 23:38:38 +08:00
Chocobo1
763b9fc1da Put PR template into action 2021-10-02 15:04:23 +08:00
Vladimir Golovnev (glassez)
add75fbc77 Make complete type declarations available where needed 2021-10-02 09:23:50 +03:00
Vladimir Golovnev (Glassez)
86b1ac5d7c CMake: Allow to build with Qt6 2021-10-02 09:23:49 +03:00
Vladimir Golovnev (glassez)
b51197936b QMake: Don't use WinExtras module with Qt6 2021-10-02 09:23:15 +03:00
Jose M. Abuin
64609ce5cf Add missing double-click action
Closes #15422.
PR #15509.
2021-10-01 12:16:58 +08:00
Chocobo1
b81cbf9062 Merge pull request #15505 from Chocobo1/freebsd
Add detection for various OS
2021-10-01 11:52:48 +08:00
Chocobo1
e7e881e5d7 Merge pull request #15500 from Chocobo1/networkfs
Add remote filesystem magic numbers
2021-09-30 10:27:57 +08:00
Chocobo1
e236a76d5a Use case statement for host OS detection 2021-09-29 16:32:29 +08:00
Chocobo1
ad8a827c1f Add detection for Haiku in configure script
Patch taken from downstream:
https://github.com/haikuports/haikuports/blob/master/net-p2p/qbittorrent/patches/qbittorrent-4.3.1.patchset
2021-09-29 16:22:20 +08:00
Chocobo1
08ac33bc5c Add detection for OpenBSD in configure script
Patch taken from downstream:
http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/qbittorrent/qbittorrent/patches/patch-configure_ac
2021-09-29 16:22:15 +08:00
Chocobo1
5cf39a2970 Reuse code path
`buf.f_type` should be compatible across platforms.
https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man2/statfs.2.html
2021-09-27 22:40:25 +08:00
Chocobo1
1c9321d5a1 Add remote filesystem magic numbers 2021-09-27 22:22:36 +08:00
Chocobo1
97a8d865dc WebUI: revise hash function
In benchmark, using `Math.imul()` is about ~20% faster than floating
point multiplication.

PR #15475.
2021-09-27 13:54:28 +08:00
Chocobo1
982133d9b6 CI: Clean up scripts
* Remove redundant dependencies
* Replace ccache action provider
* Let coverity-scan script build with libtorrent v2.0.4.

PR #15483.
2021-09-23 12:38:52 +08:00
Chocobo1
d23935a269 Merge pull request #15484 from Chocobo1/perference
Clean up Preferences class
2021-09-23 12:38:12 +08:00
Chocobo1
1c343a444b Remove redundant const specifier 2021-09-21 17:19:38 +08:00
Chocobo1
1c9696b68e Suppress function unused warning 2021-09-21 17:18:50 +08:00
Chocobo1
ecd23d0abd Merge pull request #15459 from Chocobo1/i18n
Revise description wordings
2021-09-19 13:29:08 +08:00
Chocobo1
010d1b5ff8 Merge pull request #15419 from Chocobo1/file
Improve error detection when saving files
2021-09-19 13:28:47 +08:00
Chocobo1
46394a7c0f Combine stream statements 2021-09-18 12:59:08 +08:00
Chocobo1
fc86034fab WebUI: update authors page 2021-09-18 12:59:07 +08:00
Chocobo1
03012cc175 Revise description wordings 2021-09-18 12:59:07 +08:00
xavier2k6
8518333406 Replace GitHub markdown templates with GitHub forms
PR #15330.
2021-09-17 12:51:33 +08:00
Vladimir Golovnev
b2e0e25f1c Merge pull request #15451 from glassez/profile
Improve Profile handling
2021-09-15 19:11:22 +03:00
Chocobo1
9673be17cb Improve handling when writing to temporary files
Let QTemporaryFile remove incomplete written file when error occurs.
"XXXXXX" template is not strictly required according to Qt doc.
2021-09-15 23:25:27 +08:00
Chocobo1
fa8786e230 Flush manually when saving a file
This is to work around https://bugreports.qt.io/browse/QTBUG-75077
2021-09-15 23:15:33 +08:00
Chocobo1
21f72baae2 Use QSaveFile wherever applicable
expected.hpp was fetched from:
b803e3c07b/include/nonstd/expected.hpp
2021-09-15 21:54:44 +08:00
xavier2k6
4b78af268f Update python installer URL for Windows 2021-09-12 17:17:06 +01:00
jagannatharjun
a734199383 Fix startup with different profiles 2021-09-12 10:59:20 +03:00
Vladimir Golovnev (Glassez)
046b741700 Improve Profile handling
Add Profile::rootPath and Profile::configurationName properties.
2021-09-12 10:58:48 +03:00
Chocobo1
ce0b6f0d56 Merge pull request #15450 from Chocobo1/pr_15303
Fix code defects
2021-09-12 12:56:33 +08:00
Chocobo1
6de0622c1a Merge pull request #15444 from Chocobo1/guard
Prevent self-assignment in assignment operator
2021-09-12 12:56:17 +08:00
Jesse Smick
6229b81730 WebUI: Add pieces progress bar to General tab
Closes #15292.
PR #15418.
2021-09-12 12:55:41 +08:00
Chocobo1
c701379a2e Fix typo 2021-09-11 12:07:52 +08:00
Chocobo1
0783968121 Guard for null pointer 2021-09-11 11:54:01 +08:00
gxcreator
307f5e6e56 Initialize member fields 2021-09-11 11:53:41 +08:00
Chocobo1
cb29685a24 Use Qt macro to disable various constructors 2021-09-10 19:51:27 +08:00
Faisal Al-Munawar Fathur Rahman
dabba89682 Update Indonesian translation
PR #15436.
2021-09-10 09:05:40 +08:00
Chocobo1
2efd4f2a77 Prevent self-assignment in assignment operator 2021-09-09 21:42:46 +08:00
Vladimir Golovnev
90296b3ef0 Add "Skip hash check" option for watched folders
Closes #15388.
PR #15433.
2021-09-09 07:00:51 +03:00
smigii
8f02fe0cc6 Elide text from the right for all columns' header
Minimizing columns no longer truncates text from the left, now elides
text from the right for better readability. Done by setting header's
textElideMode to Qt::TextElideRight.

Fix issue #14419.
PR #15366.
2021-09-08 11:47:55 +08:00
Chocobo1
7a6edcdddb Fix broken behavior of "priority by shown file order"
Closes #15421.
PR #15423.
2021-09-07 11:47:13 +08:00
Chocobo1
81139c0098 Improve error detection when saving files 2021-09-05 12:20:22 +08:00
Chocobo1
6a6268c068 Merge pull request #15396 from jagannatharjun/downloadrequest
Fix invalid RSS feed icons
2021-09-05 12:11:57 +08:00
jagannatharjun
68133ec8e3 Correctly use fallback icons for RSS feed in GUI 2021-09-04 12:11:44 +05:30
jagannatharjun
314f92f2d8 Use DownloadRequest::destFileName for downloading RSS feed icons 2021-09-04 12:02:38 +05:30
jagannatharjun
8b5db328ec Add DownloadRequest::destFileName 2021-09-04 12:02:38 +05:30
Chocobo1
615b76f78c Prolong wait time for shutdown
The default was 90s[1], prolong to 30 mins.
From the discussion in [2], ~2k torrents took 5 mins to completely
shutdown. Here we wait at most 30 mins which scales to about 12k
torrents which should cover most use case (also note that 4.3.x series
is mentioned to have even shorter shutdown time).

[1] https://www.freedesktop.org/software/systemd/man/systemd-system.conf.html#DefaultTimeoutStartSec=
[2] https://github.com/qbittorrent/qBittorrent/issues/15381#issuecomment-912080617

PR #15414.
2021-09-04 13:20:35 +08:00
Prince Gupta
f2912c14ea Stick Unread row to top in RSS feed list
PR #15397.
2021-09-04 12:55:58 +08:00
Chocobo1
08f33d7e9e Fix WebUI crash when tracker URL is invalid
Closes #15391.
PR #15395.
2021-08-31 11:53:42 +08:00
xavier2k6
c034cb5985 Remove Windows Vista support from manifest
PR #15394.
2021-08-30 08:07:15 +03:00
Chocobo1
e3cd15dced Remove unnecessary UI properties in "Add new torrent" dialog (#15387)
Closes #15383.
2021-08-29 11:29:01 +08:00
JungHee Lee
8439d4e827 Update Korean NSIS translation (#15380) 2021-08-29 11:27:09 +08:00
sledgehammer999
2b501904cf Bump to 4.4.0beta3 2021-08-29 01:53:02 +03:00
sledgehammer999
ea986a1f1b Sync translations from Transifex and run lupdate 2021-08-29 01:51:47 +03:00
Chocobo1
b924357ea9 Specify Unicode for resource block (#15370)
The StringFileInfo block was using "1252 Multilingual", change it to
"1200 Unicode" for consistency.
https://docs.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-block

Closes #15364.
2021-08-26 11:30:53 +08:00
Vladimir Golovnev
b823d74ac3 Use "old file path" provided by libtorrent
Until libtorrent provided an "old_name" field in `file_renamed_alert` we relied
on a workaround with storing old file names to remove empty leftover folders.
PR #15356.
2021-08-23 07:29:50 +03:00
Chocobo1
d1e2019cd7 Merge pull request #15357 from a1346054/master
Fix minor licensing issue
2021-08-23 11:23:02 +08:00
Chocobo1
70573eba2c GHA CI: Use preinstalled vcpkg (#15355)
This will save maintenance work on the vcpkg version.

Also a few other improvements:
* Add quotes to path
* Sort command flags
* Avoid switching shell, always use powershell (the default shell)
2021-08-22 12:29:17 +08:00
a1346054
cf46653333 Fix typo 2021-08-21 16:02:05 +00:00
a1346054
8d3fcbd897 Use license file verbatim
The GPL part of COPYING file was distributed incomplete, it must be
distributed verbatim.

The file was obtained from:
https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
2021-08-21 16:00:19 +00:00
Chocobo1
1900538315 Merge pull request #15342 from Chocobo1/macos
GHA CI: Split "main CI" to multiple workflows
2021-08-20 03:43:24 +08:00
Chocobo1
a9feae6110 GHA CI: Split "main CI" to multiple workflows 2021-08-19 11:54:58 +08:00
Chocobo1
8d822f2cb4 Improve "last activity" calculation in WebAPI (#15339)
Co-authored-by: 秦风 <mayli.he@gmail.com>

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2021-08-19 11:16:34 +08:00
Chocobo1
c12e486f59 GHA CI: Use prebuilt library packages on macOS 2021-08-19 11:08:19 +08:00
Chocobo1
d0d0bed333 Merge pull request #15340 from Chocobo1/libt2
Support libtorrent v2.0.4 in CI
2021-08-19 10:54:01 +08:00
Chocobo1
8799321312 GHA CI: Use ccache 2021-08-18 23:06:02 +08:00
Chocobo1
00d2997971 GHA CI: Move global environment variables out 2021-08-18 23:06:02 +08:00
Chocobo1
69f7f233fd GHA CI: Remove OS variable from build matrix
It is meaningless to build on multiple linux versions as we only depend
on library versions, not OS versions.
Also remove redundant "shell default" section.
2021-08-18 23:06:02 +08:00
Chocobo1
793e8643bf GHA CI: Support libtorrent v2.0.4 2021-08-18 23:05:23 +08:00
Chocobo1
521ef8e28f Merge pull request #15321 from Chocobo1/ci
Clean up workflow files coding style
2021-08-15 12:24:21 +08:00
Chocobo1
7433d85418 Revise workflow steps name/description 2021-08-14 15:08:31 +08:00
Chocobo1
ba1cf12817 Capitalize workflow step names 2021-08-14 14:58:16 +08:00
Chocobo1
7dc7b95bfd Merge pull request #15306 from Chocobo1/icon
Minor UI revise
2021-08-14 12:12:49 +08:00
Chocobo1
59352e4ca7 Use nodejs lts version for CI
The exact nodejs version isn't critical here, just make sure it isn't
too outdated.
2021-08-13 12:23:16 +08:00
Chocobo1
011d026d76 Rename jobs 2021-08-13 12:23:16 +08:00
Chocobo1
89a8184ad2 Avoid using legacy backticks
https://github.com/koalaman/shellcheck/wiki/SC2006
2021-08-13 12:23:16 +08:00
Chocobo1
a23e10dff5 Split commands to multiple lines properly 2021-08-13 12:23:16 +08:00
Chocobo1
535603fac4 Use latest Ubuntu images
Jobs in those workflows has little to do with specific OS version, so
just use the latest.
2021-08-13 12:23:16 +08:00
Chocobo1
fb6282da57 Add proper indention to steps section
Following the style from the examples in https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idsteps
2021-08-13 12:23:15 +08:00
Chocobo1
23766cd01d Clean up Github workflows' name 2021-08-13 12:23:04 +08:00
sledgehammer999
44b2afb218 Merge pull request #15310 from Chocobo1/stale
Stale bot: Handle more PR per run
2021-08-11 17:29:45 +03:00
sledgehammer999
9e82e59fc8 Merge pull request #15315 from sledgehammer999/readme_chat
Change IRC channel to Libera.Chat
2021-08-11 17:27:50 +03:00
Chocobo1
e006538514 Fix cmake script (#15309)
Fix up 138c911ef4.
2021-08-11 13:26:15 +08:00
sledgehammer999
fad5dfa4f4 Change IRC channel to Libera.Chat
Unfortunately Freenode, after a takeover, decided to purge all their databases, thus
deleting all channel and user registrations, without a warning.
So if we're forced to re-register our stuff why not go where the cool kids are at?
2021-08-11 01:13:55 +03:00
a-raccoon
b737ee0240 Update README.md
Removed these two lines because they haven't been true in a very long time, and is no longer even possible.
```
You can also meet me (sledgehammer_999) on IRC:
`#qbittorrent on irc.freenode.net`
```
2021-08-11 00:37:03 +03:00
Chocobo1
9d9f774dad Handle more PR per run
Previously only about ~27 PR are scanned per run, this commit attempt
to handle all open PR at once.
2021-08-10 13:14:25 +08:00
Chocobo1
526ee9c9db Add tooltip to listening port spinbox 2021-08-10 12:24:50 +08:00
sledgehammer999
671eff324d Merge pull request #15298 from sledgehammer999/coverity_workflow
Run Coverity once per month
2021-08-09 21:18:12 +03:00
Chocobo1
a93cf04aca Use default values for inconsequential fields
Or when the default value is actually what we want.
2021-08-09 13:37:48 +08:00
Chocobo1
e93a67e644 Use default upper limits for ddns entries
The default is 32767 which is larger than the previous artificial limit.
2021-08-09 13:14:51 +08:00
Chocobo1
b29a52dfa8 Use the same icon for selecting folders/files
As stated in Qt doc, the `QStyle::SP_DialogOpenButton` is only for a
button within QDialogButtonBox which means it isn't suitable elsewhere.
2021-08-09 13:14:14 +08:00
Chocobo1
4ed99ba851 Introduce stale bot for PR (#15211)
Stale bot will mark stale PR with a tag and close them after a specified
interval of time.

* Draft PRs are not subject to this marking.
* PR with an assignee or milestone is not subject to this marking.
2021-08-09 11:26:04 +08:00
sledgehammer999
3e92e716b2 Merge pull request #15294 from sledgehammer999/accept_v2_infohash
Accept v2 infohashes for download
2021-08-08 12:29:04 +03:00
sledgehammer999
c6c8f6563d Run Coverity once per month 2021-08-08 12:24:19 +03:00
Chocobo1
138c911ef4 Add compile definition to indicate using of libtorrent 2.0 (#15297)
The compile definition is temporary which will be removed when qbt
ditches libtorrent 1.x.
2021-08-08 13:27:22 +08:00
sledgehammer999
e5fe6401a0 Accept v2 infohashes for download
Partially fixes #15287
2021-08-07 17:25:13 +03:00
Vladimir Golovnev
bed643e627 Delay processing of watched folders (#15282)
Fixes regression of #14882.
Closes #15272.
2021-08-07 12:33:29 +03:00
Mengyang Li
4ac25a50ed WebUI: group trackers by hostname (#15264)
Closes #13608.
2021-08-07 12:25:07 +08:00
Chocobo1
d9cf189ef6 Merge pull request #15281 from Chocobo1/lib
Update js libraries
2021-08-06 16:56:02 +08:00
Matthaiks
6e19878973 NSIS: Add Polish translation (#15262) 2021-08-06 12:16:46 +08:00
Chocobo1
9f9c4d6ed0 Ignore file heath for 3rd party libraries 2021-08-05 16:03:19 +08:00
Chocobo1
567848e94f Work around missing function error
The fix comes from older version of MochaUI.
2021-08-05 16:03:18 +08:00
Chocobo1
221cbcc1ac Update MochaUI to v0.9.7
Upstream: https://github.com/cdotyone/mochaui/blob/develop-0.9.8/Build/mocha.js
2021-08-05 16:03:07 +08:00
Chocobo1
dc2086dab4 Update clipboard.js to v2.0.8 2021-08-05 15:24:03 +08:00
Chocobo1
7be2a03c86 Update mootools to v1.6.0 2021-08-05 15:24:01 +08:00
Sylvain Finot
e87f8f5b93 Expose SSRF mitigation (#15247) 2021-08-04 11:28:36 +08:00
Chocobo1
11a063ea66 Merge pull request #15242 from Chocobo1/libt_version
Detect incompatible libtorrent v2 versions in build systems
2021-08-04 11:28:07 +08:00
sledgehammer999
1d26f4c5f7 Bump to 4.4.0beta2 2021-08-03 23:15:27 +03:00
sledgehammer999
8a09558ed8 Sync translations from Transifex and run lupdate 2021-08-03 23:14:08 +03:00
Daniel Aleksandersen
60b1e692b9 Disconnect comment links fom the WebUI (#15251) 2021-08-03 16:26:04 +08:00
Chocobo1
0a1865d0dd Don't use old style cast 2021-08-01 13:48:46 +08:00
Chocobo1
3d94c70c48 Adopt a subset of semantic versioning notation
https://github.com/npm/node-semver#ranges
https://semver.npmjs.com/
2021-08-01 13:48:22 +08:00
Chocobo1
7d7f967d5e Detect incompatible libtorrent v2 versions in build systems
Although the detection is working, the error message in autotools is not
perfect, i.e. it would only mention valid range for libtorrent v1 and it
shouldn't be a problem since v2 support isn't fully ready yet.
2021-07-31 16:59:37 +08:00
Chocobo1
ce554e6c77 Merge pull request #15229 from Chocobo1/port
Use spinbox special value to represent "Use any available port"
2021-07-30 15:19:08 +08:00
xavier2k6
5d151cca9d GitHub Actions CI: update workflow (#15245)
- update vcpkg to latest commit (includes updated BOOST)
2021-07-30 15:18:38 +08:00
Chocobo1
e47d90b5a6 Update pkg.m4 to latest version
Upstream: https://gitlab.freedesktop.org/pkg-config/pkg-config/-/blob/master/pkg.m4.in
2021-07-29 14:15:51 +08:00
AbeniMatteo
e4730191db Set default file priorities when not specified (#15190) 2021-07-29 12:20:03 +08:00
Chocobo1
49aab492e0 Use spinbox special value to represent "Use any available port"
WebAPI functionality is preserved (deprecated) for now and should be
removed in the future.
2021-07-29 11:50:52 +08:00
Chocobo1
2d4d246268 Remember last viewed page in Options dialog (#15230) 2021-07-28 11:11:00 +08:00
Chocobo1
09e558ae0b Revise checkbox label for "Use any available ports" functionality
Also reorder the checkboxes a bit.
2021-07-27 13:35:18 +08:00
Chocobo1
a3fd6633c4 Use default property for widgets 2021-07-26 12:20:46 +08:00
Vladimir Golovnev
1eb246c98b Merge pull request #15181 from glassez/qt5
Raise minimum Qt version to 5.15.2
2021-07-23 06:22:57 +03:00
Chocobo1
96e0c0df20 Improve handling for magnet URI (#15209)
This add support for magnets URI in v2 hash format.
2021-07-22 13:05:59 +08:00
thalieht
aa8f420681 Recognise v2 info-hashes in clipboard for "Add torrent link" dialog (#15206) 2021-07-20 14:30:37 +03:00
Tom Piccirello
7974b5a95c Support sorting Web UI tables via touch (#15205) 2021-07-19 14:28:04 +08:00
Vladimir Golovnev
ed4570cb4d Store minimal metadata for "restore torrent" purposes (#15191)
We can no longer save valid torrent files in the general case, because
for torrents of version 2, we need a full merkle tree to do it, but if
a torrent is added from magnet link, full merkle tree may not be available
even before the end of downloading all the data. Actually, we don't need
the full torrent file for the purposes of resuming the torrent, so we can
allow libtorrent to produce only a minimal part of the metadata as part
complete resume data, but we still want to store it in a separate file,
so we extract the resulting metadata from the complete resume data before
saving and merge it together before loading.
2021-07-19 07:59:06 +03:00
AbeniMatteo
01d851440b Add "Forced metadata downloading" state (#15185) 2021-07-17 21:33:14 +03:00
AbeniMatteo
e5943b64c1 Add filter "Checking" to side panel (#15166) 2021-07-16 14:08:10 +03:00
scootergrisen
933e56494c Update Danish translation (#15192) 2021-07-16 12:55:05 +08:00
Kristof Mattei
140e73be4e Use the URI's setData to set query data (#15187)
This allows the system to properly encode the '|', instead of passing
the '|' on in the URL, which is not allowed and breaks proxies such as
Authelia.

Then, for the purpose of generalization, I pushed this pattern through
to all places where we join items with a '|'.

This comes with the caveat that when we have individual components which
contain a '|' or any other character that is not allowed per the
HTTP standard, we still like to encode the individual components,
for example in the case of 3 strings, separated by a '|'.
If we don't do this we run into the risk that upon decoding URI finds
'|' in our original strings, which is something we don't want.

For example:
Sender:
````javascript
const arr = ["foo|1", "bar|2"];
const uri = new URI("test.html").setData(arr.join("|"));
````
Then on the receiving window, when it receives the uri and splits it, it
looks like this:
````javascript
const arr = new URI().getData('hashes').split('|');
// arr is now ["foo", "1", "bar", "2"]
````

This is why when we want to send a literal "|" we need to do
`encodeURIComponent` and `decodeURIComponent` manually on each item,
and THEN we join.

For example:
Sender:
````javascript
const arr = ["foo|1", "bar|2"];
const uri = new URI("test.html").setData(arr.map(encodeURIComponent).join("|"));
````

Receiver:
````javascript
const arr = new URI().getData('hashes').split('|').map(decodeURIComponent);
// arr is now ["foo|1", "bar|2"]
````

We don't need to with hashes as they are HEX, so no risk of any weird
characters in there.
2021-07-16 12:53:47 +08:00
Vladimir Golovnev (glassez)
960b9b855f CI: Use Qt-5.15.2 on AppVeyor 2021-07-15 10:56:50 +03:00
FranciscoPombal
1e1d55b26d CI: Use Qt 5.15.2 from third-party PPA on Linux 2021-07-15 10:56:50 +03:00
Vladimir Golovnev (glassez)
925bf7715c Disable functions deprecated in Qt 5.15.2 and earlier 2021-07-15 10:56:49 +03:00
Vladimir Golovnev (Glassez)
399d3ad85a Replace QStringRef with QStringView 2021-07-15 10:56:49 +03:00
Chocobo1
d923c03d52 Merge pull request #15186 from Piccirello/webui-table-keyboard-nav
Support navigating Web UI tables with arrow keys
2021-07-13 11:26:50 +08:00
Vladimir Golovnev
699b91ab8d Properly create "clean path" for watched folder (#15179) 2021-07-12 11:44:52 +03:00
AbeniMatteo
abd6eb2ff3 Add context menu to toggle content tab columns (#15164) 2021-07-12 13:57:17 +08:00
Thomas Piccirello
32f29e72c6 Support expanding/collapsing Web UI folders with arrow keys 2021-07-11 03:01:31 -07:00
Thomas Piccirello
e76bac4131 Support navigating Web UI tables with arrow keys
This allows navigating rows via up/down arrow keys.
2021-07-11 03:01:31 -07:00
Thomas Piccirello
8b94642ab1 Always set Web UI row id as a string
This helps ensure consistent behavior when performing rowId comparisons against strings.
2021-07-10 11:50:48 -07:00
Chocobo1
d3497148c5 Merge pull request #15176 from Chocobo1/tooltip
Add tooltip for more widgets
2021-07-09 16:48:58 +08:00
Vladimir Golovnev (glassez)
27baa55443 Raise minimum Qt version to 5.15.2 2021-07-09 07:41:13 +03:00
Chocobo1
fd3d4d479a Suppress type narrowing warning on MSVC
Fix up 45e31a153c.
2021-07-08 14:25:39 +08:00
Chocobo1
4b0a2d050a Display tooltip for all columns in torrent content widget
It is primary useful for showing long file names.
2021-07-08 14:23:30 +08:00
Chocobo1
d85c14864b Add tooltip for "client ID" column
Sometimes the client ID could be quite long and this patch helps showing
it.
2021-07-08 14:22:59 +08:00
Chocobo1
ee696e6f36 Merge pull request #15170 from Chocobo1/tooltip
Add tooltip for various columns
2021-07-08 13:01:59 +08:00
Chocobo1
6ccbd8472c Merge pull request #15161 from Chocobo1/helper
Use `underlying_type` member directly
2021-07-08 13:01:46 +08:00
Chocobo1
8ec26e9ea9 Don't use old style casts
Ref: https://github.com/qbittorrent/qBittorrent/runs/2996702005?check_suite_focus=true#step:8:298
2021-07-07 14:44:39 +08:00
Chocobo1
45e31a153c Reserve space for vector 2021-07-07 14:20:27 +08:00
Chocobo1
7c23d800e6 Use underlying_type member directly
`LTUnderlyingType` served as a intermediate type for libtorrent 1.1 and
1.2 and is obsoleted now.
Also add helper to convert to underlying type.
2021-07-07 14:19:17 +08:00
Chocobo1
4dbf6af733 Simplify initialization statement 2021-07-07 13:20:13 +08:00
Chocobo1
bdc03b1c75 Add tooltip for various columns
Those strings sometimes are quite long and having a tooltip would
save the action of resizing the column width to see the full message.
The WebUI already has it done for all columns.
2021-07-07 13:19:29 +08:00
AbeniMatteo
9bfc74a1bc Filter torrent info endpoint by tag (#15152) 2021-07-05 13:55:49 +08:00
Vladimir Golovnev
5d03917877 Use torrent info with hashes for creating .torrent file (#15138) 2021-07-04 09:29:34 +03:00
Vladimir Golovnev (Glassez)
d2f975a0f3 Don't forget to start "watch timer" 2021-07-02 08:34:31 +03:00
Chocobo1
eedd47860a Merge pull request #15142 from Chocobo1/warning
Use proper signed number type
2021-07-01 11:35:04 +08:00
sledgehammer999
6e59248ea6 Merge pull request #15093 from FranciscoPombal/bump_libtorrent
Raise minimum libtorrent version to 1.2.14 (2.0.4)
2021-06-30 22:39:53 +03:00
Chocobo1
365554d064 Use proper signed number type
This also suppress the compiler warning:
src/base/bittorrent/torrentimpl.cpp:228:36: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
2021-06-29 18:04:33 +08:00
Chocobo1
70d1cb86fd Disable move constructor where it is sensible 2021-06-29 14:49:45 +08:00
FranciscoPombal
ccb7c0d579 Raise minimum libtorrent version to 1.2.14 (2.0.4)
- Also update vcpkg to latest commit: includes libtorrent 1.2.14,
Qt 5.15.2, and Qt 6.1.1
2021-06-28 23:04:47 +01:00
sledgehammer999
fd9941e2d8 Merge pull request #15131 from FranciscoPombal/goodbye_travis
Remove TravisCI config
2021-06-28 21:48:30 +03:00
FranciscoPombal
2f89563fca Remove TravisCI config 2021-06-28 10:41:16 +01:00
sledgehammer999
261f601bd5 Merge pull request #15129 from adem4ik/patch-5
Remove excess space in torrentfileswatcher.cpp
2021-06-27 15:32:50 +03:00
Andrei Stepanov
5157e4965a Remove excess space 2021-06-27 13:01:03 +04:00
sledgehammer999
3ffd25f9e1 Bump to 4.4.0beta1 2021-06-26 21:05:44 +03:00
sledgehammer999
665ab34f25 Sync translations from Transifex and run lupdate 2021-06-26 21:03:43 +03:00
Vladimir Golovnev
37f227ae74 Provide v1 and v2 infohashes in UI (#15097) 2021-06-25 20:44:23 +03:00
Biswapriyo Nath
f6eb29d800 Add windows-clang support (#15115)
This allows to build with clang targeting x86_64-w64-windows-gnu.
2021-06-25 12:18:56 +08:00
HiFiPhile
f5315d9ba7 Add WebUI reverse proxy source IP resolution (#15047)
Co-authored-by: qix67
Co-authored-by: HiFiPhile <admin@hifiphile.com>
2021-06-23 09:01:36 +03:00
Vladimir Golovnev (Glassez)
124cc9621d Delete LoadTorrentParams when load torrent failed 2021-06-22 21:36:42 +03:00
Vladimir Golovnev (Glassez)
3faa7226e7 Handle exception when torrent file cannot be exported
Both `lt::create_torrent` constructor and `lt::create_torrent::generate()`
can throw an exception so we need to handle it to prevent the app from crashing.
2021-06-22 21:36:42 +03:00
Vladimir Golovnev (Glassez)
6070b41c9b Properly add torrent with new tags
First, an attempt is made to add new tags to the Session.
Closes #15105.
2021-06-18 06:29:15 +03:00
Vladimir Golovnev (Glassez)
50ddfea617 Remove lockfile only when last app instance is destroyed 2021-06-18 06:27:33 +03:00
tgregerson
e74ad86f14 Don't close tags menu when toggling items (#15098)
The issue was resolved by using QAction::toggled signal instead of
QAction::triggered. In QT 5.15+ the latter signal causes a QMenu
to close, whereas the former does not. Closes #13492.
2021-06-16 17:57:56 +03:00
Vladimir Golovnev (Glassez)
2bd2490539 Disable functions deprecated in Qt 5.14 and earlier 2021-06-16 17:56:40 +03:00
Vladimir Golovnev
5c0378a684 Merge pull request #15029 from glassez/qt-5.14
Raise minimum Qt version to 5.14
2021-06-14 16:48:15 +03:00
Dmitry Khlestkov
2bd5aca3a4 Keep sub-sorting order (#15074)
Fixes #15073
2021-06-14 11:57:50 +08:00
Kacper Michajłow
ccb59fbad3 Suppress C4267 conversion warnings (#13307)
- warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data

Caused by mismatch between size_type of std and Qt containers. It is safe to cast to int as all of those containers hold low number of objects.
2021-06-11 08:51:06 +03:00
Vladimir Golovnev (Glassez)
6c66d02aff Declare AbstractFileStorage destructor virtual 2021-06-10 09:19:04 +03:00
Vladimir Golovnev
9f03598259 Merge pull request #12574 from FranciscoPombal/contrib-it
Revise GitHub templates
2021-06-08 20:48:18 +03:00
FranciscoPombal
8191246c19 CI: Use Qt 5.14.2 from third-party PPA on Linux 2021-06-07 14:17:32 +01:00
FranciscoPombal
437769ac0b Revise GitHub templates
- Separate templates into bug report and feature request
- Add a checklist and guidance comments
- Add a PR template
- Add SUPPORT.md
2021-06-04 11:18:44 +01:00
sledgehammer999
f97a1103b1 TravisCI: Raise minimum Qt version to 5.14.2 2021-06-03 08:56:55 +03:00
Vladimir Golovnev (Glassez)
9b0c9be7dd AppVeyor: Update CI configuration
Build as 64-bit.
Use Qt 5.14.2.
Use libtorrent 2.0.3.
2021-06-03 08:56:55 +03:00
Vladimir Golovnev (Glassez)
97c7f3bc67 Raise minimum Qt version to 5.14 2021-06-03 08:56:41 +03:00
Chocobo1
2503271a45 Fix main window turns blank after restoring from tray (#15031)
When restoring from tray icon, although the window manager shows qbt
window but qbt itself didn't handle the event correctly, i.e. the
`show()` was missing and thus qbt did nothing and the window is blank.
Note that at this point the `visible` property is `false`.
After invoking `show()` qbt will start showing the contents and also
fire another showEvent where `visible` property is `true` and here is where
qbt should handle preparations for the window.

Fix #9510.
2021-05-31 12:19:22 +08:00
LoneDev
d335f263f3 Fix comment typo in algorithm.h (#15030) 2021-05-29 11:30:47 +08:00
Vladimir Golovnev
1c34635016 Merge pull request #14993 from glassez/file-error
Provide correct error description in "upload mode"
2021-05-28 08:55:53 +03:00
Vladimir Golovnev (Glassez)
b6a35e9477 Don't log any error when "queue" file doesn't exist 2021-05-27 18:27:41 +03:00
Vladimir Golovnev (Glassez)
6aa8251b98 Provide correct error description in "upload mode" 2021-05-27 18:27:40 +03:00
Chocobo1
3b4bf90a13 Merge pull request #15017 from Chocobo1/css_formatting
Format and lint CSS code
2021-05-27 14:36:57 +08:00
Francisco Pombal
0c71756009 CMake: fix MSVC __cplusplus (#13934) 2021-05-27 06:57:22 +03:00
FranciscoPombal
2f6abb8aa1 CMake: fix compiler identification checks 2021-05-26 09:46:08 +03:00
Chocobo1
42582e21f7 Merge pull request #15016 from Chocobo1/pr_13756
Update Mac icons for Big Sur
2021-05-26 11:46:06 +08:00
Chocobo1
af49a4dd5a Sort CSS properties 2021-05-25 13:20:38 +08:00
Chocobo1
b2081faf87 Remove redundant empty line 2021-05-25 13:20:37 +08:00
Chocobo1
f960934eb9 Merge same selector 2021-05-25 13:20:37 +08:00
Chocobo1
5522725f5d Remove duplicate property 2021-05-25 13:20:37 +08:00
Chocobo1
9f3d36bab0 Remove useless property
The `padding` will override the former `padding-top`.
2021-05-25 13:20:37 +08:00
Chocobo1
87e7085c22 Remove empty block 2021-05-25 13:20:37 +08:00
Chocobo1
d8eac56f5e Use stylelint for CSS linting 2021-05-25 13:20:37 +08:00
Chocobo1
c20557f690 Use cleaned icons
By running svgcleaner over qbittorrent_mac.svg.
2021-05-25 12:09:24 +08:00
Chocobo1
65bdc4cf43 Format CSS code with prettier 2021-05-25 11:26:58 +08:00
Chocobo1
ee79c196df Use prettier for formatting CSS code 2021-05-25 11:21:39 +08:00
17jiangz1
41682bfcbb Update Mac icons for Big Sur
Add Mac icon vector source.
2021-05-25 10:42:42 +08:00
sledgehammer999
34be8c9213 Merge pull request #14934 from sledgehammer999/translations
Update Qt translations and add new qbt translations
2021-05-23 21:59:29 +03:00
brvphoenix
aebb9f89d1 Remove the lockfile on exit (#14997) 2021-05-23 14:29:41 +08:00
Chocobo1
40f6201509 Merge pull request #14976 from Chocobo1/options
Add `connection_speed` to advanced settings
2021-05-23 14:27:34 +08:00
zhuangzi926
2e8e2b04a1 Announce to all trackers if IP changed (#15001)
Closes #14545.
2021-05-23 14:26:54 +08:00
Vladimir Golovnev
015780fc72 Merge pull request #14882 from glassez/fswatcher
Improve "Watched folders" feature
2021-05-22 18:54:09 +03:00
Chocobo1
c64e433a69 Remove unused parameter 2021-05-21 14:44:19 +08:00
Chocobo1
e21f46d824 Avoid data duplication 2021-05-21 14:38:06 +08:00
Chocobo1
ef79546508 Add connection_speed to advanced settings
Now we follow libtorrent current default value 30.
Closes #6973.

Also bump WebAPI version.
2021-05-21 14:37:57 +08: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
xavier2k6
365b1c6299 Update AppVeyor CI image to Visual Studio 2019 (#14983)
Update AppVeyor CI image to Visual Studio 2019
2021-05-19 14:42:42 +08:00
Vladimir Golovnev (Glassez)
9565b695ef Unify custom exceptions 2021-05-18 08:40:05 +03:00
Vladimir Golovnev (Glassez)
89cedd411e Allow add torrents with relative save path
The relative save path will be resoloved against the default one.
2021-05-18 07:43:53 +03:00
Anton
a51742b47c Add context menu for tabs in search widget (#14926)
In searchwidget you can close all opened tabs or selected tab using menu. Closes #5628.
2021-05-17 11:56:21 +08:00
An0n
ea3b897d5d Bump file pool size (#14966) 2021-05-14 08:57:01 +08:00
PriitUring
e432d67b3b Fix typo "Highlited" (#14956) 2021-05-12 05:00:19 +03:00
nonew-star
bd7dc8b5e7 NSIS: Update Swedish translation (#14950)
Remove redundant spaces.
2021-05-11 08:07:15 +03:00
nonew-star
a7ac700fe1 NSIS: Update Swedish translation (#14933)
Added a word.
2021-05-09 13:27:43 +03:00
Chocobo1
ff87958188 Merge pull request #14928 from Chocobo1/atomic
Fix potential data race
2021-05-09 11:48:18 +08:00
sledgehammer999
f308cd392b Merge pull request #14936 from sledgehammer999/bump_grunt_dependency
Update grunt dependency
2021-05-08 14:16:46 +03:00
sledgehammer999
e4bea17fb8 Update grunt dependency
This fixes CVE-2020-7729
2021-05-07 23:34:57 +03:00
sledgehammer999
2c47cfbe25 Add new languages
* Mongolian
* Persian
* Thai
2021-05-07 22:53:13 +03:00
sledgehammer999
b0685541d9 Add Turkish Qt translation 2021-05-07 21:55:10 +03:00
sledgehammer999
f097c15c61 Update Qt translations
Based on Qt 5.15.2
2021-05-07 21:42:21 +03:00
Vladimir Golovnev
511fa37c84 Merge pull request #14927 from thalieht/webui_translate
Make some strings in WebUI translatable
2021-05-07 21:10:27 +03:00
Chocobo1
a82ca6adb2 Fix potential data race
This case could be considered benign however it could still be an
undefined behavior to the compiler, so remove it.

Ref:
https://hacks.mozilla.org/2021/04/eliminating-data-races-in-firefox-a-technical-report/
2021-05-07 15:50:33 +08:00
Chocobo1
05e3e46f5a Throw the exact (same) exception 2021-05-07 15:49:19 +08:00
Chocobo1
6d399f0303 Fix typo 2021-05-07 15:49:19 +08:00
Chocobo1
ecebfc34fa Move initial values to header 2021-05-07 14:51:39 +08:00
xkrstudio
59b53f3db4 NSIS: Update Hungarian translation (#14906)
Add hungarian translation.
2021-05-06 21:28:04 +03:00
thalieht
e86916a7f9 Make some strings in WebUI translatable
Closes #14920
2021-05-06 20:49:35 +03:00
Vladimir Golovnev
11ae073c12 Merge pull request #14909 from FranciscoPombal/update_vcpkg
GitHub Actions CI: update workflow
2021-05-06 18:04:33 +03:00
Chocobo1
aec53b2849 Merge pull request #14905 from BouRock/patch-4
NSIS: Update Turkish translation
2021-05-06 10:38:15 +08:00
Chocobo1
0f42ab230e Merge pull request #14895 from maboroshin/patch-1
NSIS: Update Japanese translation
2021-05-06 10:37:32 +08:00
FranciscoPombal
211c92c387 GitHub Actions CI: update workflow
- update vcpkg to latest commit (includes updated libtorrent port)
- drop custom libtorrent port
- restore AppleClang workaround in the workflow file
- include install_manifest.txt in uploaded artifacts
- update actions to latest versions
- fix typos
2021-05-04 19:18:17 +01:00
Vladimir Golovnev
2f1ec09aef Merge pull request #14714 from FozzeY/no-parent-priority-menu-on-add
Show priority menu at top level if there is no other
2021-05-03 18:11:24 +03:00
Burak Yavuz
4561d844e4 NSIS: Update Turkish translation
Uninstall string added
2021-05-03 18:08:21 +03:00
maboroshin
3caa57358f NSIS: Update Japanese translation 2021-05-03 16:41:31 +09:00
sledgehammer999
94195d5339 Sync translations from Transifex and run lupdate 2021-05-02 18:32:42 +03:00
Chocobo1
c9a552c89c Merge pull request #14861 from Chocobo1/warnings
Initialize struct members by default
2021-05-02 11:26:30 +08:00
Vladimir Golovnev
6b123921a4 Merge pull request #14726 from glassez/save-resume
Allow to store "resume data" in SQLite database file
2021-05-01 14:38:30 +03:00
Vladimir Golovnev (Glassez)
383eaf44ac Implement DBResumeDataStorage class 2021-05-01 12:30:53 +03:00
Chocobo1
223d15802e Merge pull request #14693 from Chocobo1/tags
Revise tag related implementations
2021-04-28 11:42:08 +08:00
Chocobo1
bdf2f6c3e1 Initialize struct members by default
This is to suppress the following compilation warnings:
base/bittorrent/magneturi.cpp: In constructor ‘BitTorrent::MagnetUri::MagnetUri(const QString&)’:
base/bittorrent/magneturi.cpp:87:60: warning: missing initializer for member ‘BitTorrent::TrackerEntry::message’ [-Wmissing-field-initializers]
   87 |         m_trackers.append({QString::fromStdString(tracker)});
2021-04-27 11:48:13 +08:00
Chocobo1
fdc186c92f Revise tag related implementations
Fix #12690.
2021-04-27 11:47:52 +08:00
Chocobo1
ab6141edb7 Merge pull request #14813 from Kolcha/cmake_mac
Set correct minimum macOS version with CMake
2021-04-26 10:02:56 +08:00
Chocobo1
d0dcf53575 Merge pull request #14840 from jagannatharjun/pfix
Correctly draw progress background with stylesheet
2021-04-26 10:02:25 +08:00
jagannatharjun
ab906f17de Correctly draw progress background with stylesheet
fixes #14731
2021-04-24 18:04:34 +05:30
Nick Korotysh
28ef33b0a0 Improve Info.plist generation with CMake
- drop configure_file() and file(GENERATE) calls
- fill missed MACOSX_DEPLOYMENT_TARGET variable
2021-04-23 20:59:09 +03:00
Vladimir Golovnev
376dedebb1 Merge pull request #14816 from glassez/tracker-entry
Improve "tracker entries" handling
2021-04-22 19:03:49 +03:00
Vladimir Golovnev
137c6458f7 Merge pull request #14825 from glassez/upload-mode
Correctly handle "no enough disk space" error
2021-04-22 18:43:43 +03:00
Vladimir Golovnev (Glassez)
75e0990eb3 Provide tracker peers count via TrackerEntry
Don't expose additional accessor in Torrent interface.
2021-04-21 08:46:05 +03:00
Vladimir Golovnev (Glassez)
62a6c725d6 Don't overwrite tracker message
Use one of the tracker endpoint messages.
2021-04-21 08:45:09 +03:00
Vladimir Golovnev (Glassez)
d4554c2e5c Correctly handle "no enough disk space" error
If torrent failed to write, it stops downloading and goes to
"upload mode" instead of errored state so it just keeps seeding.
Now qBittorrent indicates this state as "errored" and allows
the user to manually bring the torrent out of this state.
2021-04-21 08:27:56 +03:00
Chocobo1
d6a398cf2c Merge pull request #14811 from Kolcha/bundle_name
Don't use executable name as CFBundleName value
2021-04-21 11:46:43 +08:00
Chocobo1
68e3bcbcda Merge pull request #14815 from Chocobo1/activity
Show "last activity" value under all circumstances
2021-04-21 11:44:44 +08:00
Chocobo1
6864e13e6f Show "last activity" value under all circumstances 2021-04-20 10:03:25 +08:00
Chocobo1
942fad1d6f Merge pull request #14788 from Felipefpl/patch-1
Update portugueseBR.nsi
2021-04-20 09:40:57 +08:00
Nick Korotysh
29e6b229ac Don't use executable name as CFBundleName value 2021-04-20 01:49:32 +03:00
Chocobo1
a4ce5d1687 Merge pull request #14810 from Chocobo1/info
Capitalize "peer flags" descriptions
2021-04-19 10:48:10 +08:00
Chocobo1
cb8d6a0939 Reorder peer flags
Now we group related flags nearby.
2021-04-18 12:46:07 +08:00
Chocobo1
e38128119c Capitalize "peer flags" descriptions
And use a helper function to build the descriptions.
2021-04-18 12:45:18 +08:00
Chocobo1
c7c7924d37 Merge pull request #14759 from Chocobo1/icons
Install vector program icon on Linux
2021-04-18 12:42:35 +08:00
Chocobo1
b5a24fd877 Merge pull request #14794 from zhuangzi926/pr-dyndns-register-url
Update dyndns register url
2021-04-17 11:44:51 +08:00
Vladimir Golovnev
e1ed5b73d0 Merge pull request #14795 from glassez/file-action
Allow to specify file indexes in `torrents/files` API
2021-04-17 06:17:38 +03:00
FozzeY
3e47d26e44 Show priority menu at top level if there is no other 2021-04-17 00:14:18 +03:00
Vladimir Golovnev
e0d17e496a Merge pull request #14783 from glassez/macutils
Don't use "Qt Mac Extras" module
2021-04-16 18:40:40 +03:00
Vladimir Golovnev (Glassez)
6cf99cd0f2 Allow to specify file indexes in torrents/files API 2021-04-16 09:30:07 +03:00
Chocobo1
31d84100cd Merge pull request #14792 from Chocobo1/qnotify
Fix D-Bus Notification `desktop-entry` field
2021-04-16 14:17:52 +08:00
Chocobo1
0eb39aa9e3 Perform installation step on Github Actions CI 2021-04-16 14:06:43 +08:00
Chocobo1
f457069881 Install vector program icon on Linux
The icon is copied from icons/qbittorrent-tray.svg as there is no way to
install a file and rename it in qmake.
2021-04-16 14:06:43 +08:00
Vladimir Golovnev
47eef78365 Merge pull request #14796 from iDolmatov/patch-1
Update russian.nsi
2021-04-16 08:49:50 +03:00
Долматов Алексей
eaaadf40c9 Update russian.nsi
Update uninstall strings.
2021-04-15 20:26:51 +03:00
zhuangzi926
c9e2da5f53 Update dyndns register url 2021-04-15 21:41:42 +08:00
Chocobo1
53b7956968 Clean up code
and remove unused parameters/variables.
2021-04-15 11:29:22 +08:00
Chocobo1
d13be829c3 Fix D-Bus Notification desktop-entry field 2021-04-15 11:24:28 +08:00
Chocobo1
e18b2ab437 Regenerate D-Bus notifications related code 2021-04-15 11:24:25 +08:00
Chocobo1
6777a615d4 Merge pull request #14786 from PriitUring/patch-1
Update estonian.nsi
2021-04-15 11:02:03 +08:00
Chocobo1
41f2375053 Merge pull request #14750 from kevtechXx/master
Add "Notification timeout" option
2021-04-15 11:00:34 +08:00
Felipe
f385bd2236 Update portugueseBR.nsi
An updated/fixed version of the installer language file.
2021-04-14 11:01:30 -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
PriitUring
bfd48f187a Update estonian.nsi
Changing translation of word "Uninstall" to more common local word "Desinstall".
2021-04-14 00:49:36 +03:00
Vladimir Golovnev
7662da52e6 Merge pull request #14758 from FliessendWasser/patch-2
Update german.nsi
2021-04-13 18:21:48 +03:00
kevtechxx
7722916fad Add "Notification timeout" option 2021-04-13 16:22:48 +02:00
Chocobo1
d82a1d7198 Merge pull request #14717 from Chocobo1/ncmp
Simplify natural sort classes interface
2021-04-13 14:22:25 +08:00
Henry Water
45925efe32 Update german.nsi
Line 32
Changing "zumindest" to "mindestens".
I even would go further to change the line into "[...] Windows 7 oder höher." ("[...] Windows 7 or higher."), as this seems to make more sense and we wouldn't have the hassle of discussing whether "zumindest" or "mindestens" fits better.

If you insist on a comment:
It is quite a cosmetic change, and a personal opinion as well. Imo "mindestens" fits more to the theme of general use - "zumindest" can be used in special places, as it isn't that common in e.g. regular conversations. What comes to my mind is "Best before", which is "Mindestens haltbar bis". It would be unusual to use "Zumindest haltbar bis". 😄

Finally it is up to you what to change.

CC: @schnurlos

Additionally I fixed line 10, where no need of a double-"mit" was.
Plus line 34, as requested!
2021-04-10 10:09:08 +02:00
Chocobo1
a64bb1a990 Simplify natural sort classes interface
Now the comparison function/class should be constructed before usage.
This change also make it easier to plug in into various containers which
will require a compare function type (such as std::set).
2021-04-10 14:18:18 +08:00
Chocobo1
650bf15db8 Merge pull request #14734 from Chocobo1/boost_system
Remove checking for Boost.System
2021-04-10 12:41:42 +08:00
Chocobo1
2b8e50b296 Merge pull request #14737 from jagannatharjun/revert
Revert "Change clamping of update interval of SpeedPlotView::Averager"
2021-04-09 11:34:03 +08:00
Chocobo1
2731eb1c05 Merge pull request #14738 from Chocobo1/nsis
Add new translatable string to all available languages
2021-04-09 11:33:13 +08:00
Vladimir Golovnev
f97aa05bdb Merge pull request #14736 from glassez/string-compare
Enclose strings in QLatin1String
2021-04-08 10:32:51 +03:00
Vladimir Golovnev (Glassez)
4a68df084e Enclose strings in QLatin1String 2021-04-08 06:56:40 +03:00
Chocobo1
83530b7adb Add new translatable string to all available languages
Also provide translation for Traditional Chinese.
Fix up a2ef09466f.
2021-04-08 11:52:38 +08:00
bovirus
a2ef09466f Enable translation for uninstaller link (#14660) 2021-04-08 11:39:03 +08:00
Chocobo1
7c9488105e Remove checking for Boost.System
Checking for Boost.System library is libtorrent responsibility as qbt
doesn't use it directly, i.e. it is not a direct dependency for qbt.
2021-04-08 11:26:16 +08:00
jagannatharjun
3f32b040dc Revert "Change clamping of update interval of SpeedPlotView::Averager"
This reverts commit 435bb34435.

To achieve what the reverted commit wants, the timing
would need to be taken iteratively rather that cumulatively

fixes #14735
2021-04-07 22:43:36 +05:30
sledgehammer999
21b3c61162 Merge pull request #14575 from sledgehammer999/license_clarification
Clarify that the license is GPLv2+
2021-04-07 14:02:59 +03:00
Chocobo1
5045fa6dcd Merge pull request #14652 from jagannatharjun/speed-plot-view-minor
Minor updates to Speed plot view
2021-04-06 11:40:01 +08:00
Chocobo1
c4a3d70500 Merge pull request #14703 from brvphoenix/fix-url
WebUI: Fix magnet url from the browser
2021-04-06 11:39:22 +08:00
jagannatharjun
435bb34435 Change clamping of update interval of SpeedPlotView::Averager
Don't clamp elapsed time of SpeedPlotView::Averager on resolution. Since
it may cause minor discrepencies across different Averagers with
different resolution for same speed update.
2021-04-04 21:49:57 +05:30
brvphoenix
bb9ca7f418 WebUI: Fix magnet url from the browser 2021-04-03 19:26:17 +08:00
Chocobo1
2e30ed17bd Merge pull request #14686 from Chocobo1/actions_master
Enable Github Actions CI for all branches by default
2021-04-03 13:21:20 +08:00
Chocobo1
0b3d088782 Merge pull request #14676 from Chocobo1/watcher
Revise folder monitoring functions in WebUI
2021-04-03 13:19:29 +08:00
Vladimir Golovnev
6514eaf565 Merge pull request #14688 from glassez/file-prio
Correctly forward declare file_prio_alert
2021-04-02 11:45:50 +03:00
Vladimir Golovnev (Glassez)
f8e7602d96 Correctly forward declare file_prio_alert 2021-04-02 08:29:23 +03:00
Vladimir Golovnev
565aef9637 Merge pull request #14630 from glassez/save-resume
Improve ResumeDataStorage
2021-04-02 06:48:32 +03:00
Chocobo1
82efb83c43 Enable Github Actions CI for all branches by default 2021-04-01 12:52:31 +08:00
Vladimir Golovnev
f29ff67585 Merge pull request #14673 from glassez/lt-version
Raise minimum libtorrent version to 1.2.13 (2.0.3)
2021-04-01 06:34:13 +03:00
Vladimir Golovnev
825bf8d61e Merge pull request #14657 from glassez/file-prio
Save "resume data" once file priority is changed
2021-04-01 06:32:17 +03:00
Vladimir Golovnev (Glassez)
1344b31535 Improve ResumeDataStorage 2021-03-31 11:56:36 +03:00
Chocobo1
9b8bddf7b2 Revise folder monitoring functions in WebUI
Closes #14241.
2021-03-31 12:04:22 +08:00
Chocobo1
8a087a876e Clean up code 2021-03-31 11:27:57 +08:00
Chocobo1
f8067aa592 Merge pull request #14645 from Chocobo1/links
Remove unnecessary URL encoding
2021-03-31 11:16:45 +08:00
skvenders
2b837381f3 Remove contributor
Remove contributor as requested: https://github.com/qbittorrent/qBittorrent/pull/14637#issuecomment-808894421
2021-03-31 11:07:01 +08:00
Vladimir Golovnev (Glassez)
cd6959b712 Save "resume data" once file priority is changed 2021-03-30 19:59:05 +03:00
Vladimir Golovnev (glassez)
3e5f8c64d4 Raise minimum libtorrent version to 1.2.13 (2.0.3) 2021-03-30 19:56:22 +03:00
Vladimir Golovnev
2d1c34d8e0 Merge pull request #14593 from glassez/qt6-compat
Make current codebase more compatible with Qt6
2021-03-29 14:00:23 +03:00
Chocobo1
48d532777a Merge pull request #14647 from Chocobo1/cursor
Move cursor to the next line of end of text
2021-03-29 12:50:31 +08:00
sledgehammer999
f6336a6056 Clarify that the license is GPLv2+
Regarding this license clarification there are 3 commits of interest
(commits A, B, C). Before commit A the COPYING file contained only the
text of the GPLv2 license, while all source files had a license block
at the top saying that they are under the terms of "GPLv2 or later". With
commit A there was a temporary change to GPLv3. The COPYING file contained
only the text of the GPLv3 license, while all source files had a license
block at the top saying that they are under the terms of "GPLv3 or later".
Then with commit B the COPYING file and the license block of the source
files was reverted to their state before commit A. Afterwards, with
commit C a license summary(or clarification) block was put at the top of
the COPYING file. This block indicated that the license was GPLv2 without
having the "or later" clause and it also included the OpenSSL exception.
However, the license block of each source file continued to contain the
"or later" clause which was not removed. The same license block continues
to exist in all current source files. Thus it is concluded that the ommision
of the "or later" clause with commit C in the COPYING file was accidental.
OR ALTERNATIVELY (OR IN ADDITION)
At the time commit C was made Christophe Dumez was not the sole contributor.
There is no record that the other contributors agreed with the supposed
GPLv2 only change or that there was a Contributor License Agreement,
transfering their rights to him. Thus making his license change decision
invalid/void/illegal.

Commit A: 54f9375b32
Commit B: 8df61db644
Commit C: 9835af4962
2021-03-29 00:08:14 +03:00
Vladimir Golovnev (Glassez)
cd7bdc8998 Use qsizetype instead of int where required by Qt6 2021-03-28 15:08:32 +03:00
Chocobo1
2b7b3c65cc Move cursor to the next line of end of text
Closes #13908.
2021-03-28 15:41:37 +08:00
Chocobo1
98e02a8fed Remove unnecessary URL encoding
Fix #14635.
2021-03-28 13:16:34 +08:00
Vladimir Golovnev (Glassez)
a93391e247 Drop QNetworkConfigurationManager usage 2021-03-27 19:44:34 +03:00
Vladimir Golovnev (Glassez)
102cc684dd Replace Qt Windows Extras features with native ones 2021-03-27 19:43:28 +03:00
Vladimir Golovnev (Glassez)
a230228441 Don't compare bool with int
In Qt6 QHash::remove() returns bool to indicate operation status.
2021-03-27 19:29:53 +03:00
Vladimir Golovnev (Glassez)
135cad576c Don't use removed QApplication attribute 2021-03-27 19:28:00 +03:00
Vladimir Golovnev (Glassez)
561fbf2cca Don't use removed QTextStream::setCodec()
QTextStream encodes as UTF-8 by default.
2021-03-27 19:25:32 +03:00
Vladimir Golovnev (Glassez)
a8127d6102 Use valid event type in QWidget::enterEvent() 2021-03-27 19:23:35 +03:00
Mike Tzou
2f28d3c7b6 Merge pull request #14624 from crackwitz/trackers-dialog-tab-fix
Fix tabChangesFocus attribute in "Edit trackers" dialog
2021-03-27 11:14:40 +08:00
Mike Tzou
e59c735331 Merge pull request #14590 from Chocobo1/npm
Add WebUI checking to CI
2021-03-26 09:52:32 +08:00
Mike Tzou
221014a2e3 Merge pull request #14619 from Chocobo1/sort
Sort invalid QDateTime values after valid values
2021-03-26 09:50:21 +08:00
Christoph Rackwitz
e2dbfa9ace Fix tabChangesFocus attribute in "Edit trackers" dialog 2021-03-26 00:07:09 +01:00
Chocobo1
121ff2b7be Apply code formatting 2021-03-26 00:27:52 +08:00
Chocobo1
45465e994e Add WebUI checking to CI 2021-03-26 00:27:52 +08:00
Chocobo1
af85a8a340 Add necessary curly brackets 2021-03-26 00:27:52 +08:00
Chocobo1
5fe0e9395f Don't use Object.prototypes builtins directly
See: https://eslint.org/docs/rules/no-prototype-builtins
2021-03-26 00:27:52 +08:00
Chocobo1
1f1cabd144 Remove unnecessary escape character 2021-03-26 00:27:51 +08:00
Chocobo1
c3bab70434 Remove extra semicolon 2021-03-26 00:27:51 +08:00
Chocobo1
1d6af22813 Add tools for js code formatting and linting
Due to eslint couldn't correctly resolve the context for the variables,
two eslint rules are disabled for now.
2021-03-26 00:27:12 +08:00
Chocobo1
a50798c78f Sort invalid QDateTime values after valid values
Closes #14607.
2021-03-25 23:17:06 +08:00
Vladimir Golovnev
379d41b6fb Merge pull request #14581 from glassez/save-resume
Implement BencodeResumeDataStorage class
2021-03-25 07:05:08 +03:00
Vladimir Golovnev (Glassez)
09da6828b8 Use complete types in container declarations
Qt 6 disallows to use incomplete types in container declarations
in some cases, e.g. in parameters of signals/slots.
2021-03-24 14:31:28 +03:00
Vladimir Golovnev
9f386afe9c Merge pull request #14586 from glassez/varhash
Don't cause QHash relayout while using reference to its node
2021-03-24 11:37:43 +03:00
Vladimir Golovnev (Glassez)
35dedd3d83 Implement BencodeResumeDataStorage class
Implement ResumeDataStorage class as base for all "resume data" storages.
Implement BencodeResumeDataStorage class and put all existing logic of
"resume data" loading/saving there.
2021-03-24 08:59:49 +03:00
Mike Tzou
45c0d5a823 Merge pull request #14587 from Chocobo1/monitor
Remove wrong parentheses in WebUI
2021-03-24 12:47:11 +08:00
Vladimir Golovnev
7bc5bfa140 Merge pull request #14583 from glassez/progress
Correctly draw progress bar in Qt 6
2021-03-24 07:23:53 +03:00
sledgehammer999
fda6def384 Sync translations from Transifex and run lupdate 2021-03-23 22:57:07 +02:00
Mike Tzou
4bf4d45389 Merge pull request #14504 from treysis/ipv6-outgoing-interfaces
Fix bad IPv6 address format for outgoingInterfaces
2021-03-23 18:58:22 +08:00
Mike Tzou
4e8eb2c996 Merge pull request #14570 from brvphoenix/decode
WebUI: Avoid decoding strings repeatedly
2021-03-23 18:58:01 +08:00
Chocobo1
e43a9de2f3 Make global functions immutable 2021-03-23 18:53:56 +08:00
Vladimir Golovnev (Glassez)
1a9e97ee3b Don't cause QHash relayout while using reference to its node 2021-03-23 13:17:36 +03:00
Chocobo1
901fca2d12 Remove wrong parentheses
Fix up 87ad8a1495.
2021-03-23 17:09:24 +08:00
Vladimir Golovnev (Glassez)
c23f8542b2 Correctly draw progress bar in Qt 6 2021-03-23 10:51:13 +03:00
treysis
0189606445 Fix bad IPv6 address format for outgoingInterfaces
Fixes https://github.com/qbittorrent/qBittorrent/issues/12892#issuecomment-792292336
2021-03-22 11:23:04 +01:00
Vladimir Golovnev
9b31496b22 Merge pull request #14576 from glassez/save-resume
Wrap "resume data" in LoadTorrentParams
2021-03-22 10:24:47 +03:00
Vladimir Golovnev
b9676ac3eb Merge pull request #14546 from glassez/regexp
Use QRegularExpression instead of deprecated QRegExp
2021-03-22 10:14:02 +03:00
Vladimir Golovnev (Glassez)
764aabc459 Wrap "resume data" in LoadTorrentParams 2021-03-22 07:56:17 +03:00
Vladimir Golovnev (Glassez)
61d2ff359b Use QRegularExpression instead of deprecated QRegExp
Now it follows closely the definition of wildcard for glob patterns.
The backslash (\) character is not an escape char in this context.
In order to match one of the special characters, place it in square
brackets (for example, [?]).
2021-03-22 07:50:47 +03:00
Mike Tzou
87ad8a1495 Merge pull request #14554 from thalieht/seeding_time_webui
Seeding time in WebUI
2021-03-22 12:08:18 +08:00
Vladimir Golovnev (Glassez)
5d889e4a8f Drop deprecated code 2021-03-21 13:53:12 +03:00
Vladimir Golovnev (Glassez)
b65a714d17 Save resume data when torrent has done checking 2021-03-21 13:53:05 +03:00
Vladimir Golovnev
ea1c4a8fc8 Merge pull request #14567 from glassez/desktop
Clean up the code
2021-03-21 12:57:46 +03:00
brvphoenix
5beb1b2cd0 WebUI: Avoid decoding strings repeatedly
Fix #14553
2021-03-21 02:09:53 -07:00
Mike Tzou
f55e0b6775 Merge pull request #14562 from Chocobo1/disable
Show progress bar in disabled state for paused torrents
2021-03-21 14:56:39 +08:00
thalieht
d124041726 Allow >100 days in WebUI function "friendlyDuration"
Because it's not only used for ETA.
2021-03-20 15:36:08 +02:00
Vladimir Golovnev
7a26a92edd Merge pull request #14520 from glassez/save-resume
Improve "save resume data" handling
2021-03-20 09:10:33 +03:00
Vladimir Golovnev (Glassez)
43c8ac0aa1 Don't use deprecated operators 2021-03-20 09:08:48 +03:00
Vladimir Golovnev (Glassez)
46e6ed480a Use correct return statement 2021-03-20 09:05:32 +03:00
thalieht
9f30aba2b3 Fix incorrect seeding time string in WebUI General tab 2021-03-19 15:29:08 +02:00
thalieht
560ecbc6c3 Add seeding time to the active time column in WebUI
Closes #14526
2021-03-19 15:29:08 +02:00
Vladimir Golovnev (Glassez)
8d9b6cca63 Include missing header 2021-03-19 13:59:04 +03:00
Vladimir Golovnev (Glassez)
3972597163 Include QDesktopWidget header only when needed 2021-03-19 09:23:20 +03:00
Chocobo1
b0d17221f2 Fix library requirements 2021-03-19 13:34:20 +08:00
Chocobo1
be2cdca1e9 Draw progress bar in disabled style 2021-03-19 13:34:20 +08:00
Mike Tzou
f6ab1d63e8 Merge pull request #14540 from jagannatharjun/remember
Remember sub sort column of transfer list
2021-03-19 13:24:24 +08:00
jagannatharjun
cf5e833898 Remember sub sort column of transfer list 2021-03-18 16:50:16 +05:30
Mike Tzou
6ed2e2694f Merge pull request #14543 from Chocobo1/cleanup
Simplify progress bar painting
2021-03-18 11:38:15 +08:00
Vladimir Golovnev
04827188f2 Merge pull request #14547 from glassez/codec
Don't use deprecated QTextCodec
2021-03-17 13:47:23 +03:00
Vladimir Golovnev (Glassez)
560239c918 Improve "save resume data" handling 2021-03-17 07:31:00 +03:00
Chocobo1
a78929dadf Simplify progress bar painting 2021-03-17 11:19:08 +08:00
Vladimir Golovnev (Glassez)
349cc54c69 Don't use deprecated QTextCodec 2021-03-16 19:10:10 +03:00
Vladimir Golovnev
a8ae97ba91 Merge pull request #14427 from glassez/qt-5.12
Raise minimum Qt version to 5.12
2021-03-14 20:43:39 +03:00
Mike Tzou
aad6b69f00 Merge pull request #14516 from Chocobo1/replace
Replace parameters in one step
2021-03-15 01:19:17 +08:00
Chocobo1
d74df935f4 Replace parameters in one step
This would avoid the unwanted effect of replacing parameter coming from
another parameter.
2021-03-14 14:03:42 +08:00
Vladimir Golovnev
5c8806b307 CI: Don't compile on Ubuntu 18.04 2021-03-13 15:51:07 +03:00
Vladimir Golovnev (Glassez)
a078633a32 Don't use deprecated features 2021-03-13 15:50:53 +03:00
Vladimir Golovnev (Glassez)
f022458383 Raise minimum supported Qt version to 5.12 2021-03-13 15:33:58 +03:00
Vladimir Golovnev
6139d0d65a Merge pull request #14525 from glassez/init-status
Initialize torrent status from add torrent params
2021-03-13 09:40:18 +03:00
Vladimir Golovnev
86a283b4ae Merge pull request #14503 from glassez/torrent-id
Improve "info hash" handling (step 2)
2021-03-13 09:39:56 +03:00
jagannatharjun
bb39a41e9e Update comment 2021-03-13 11:39:14 +05:30
Vladimir Golovnev
1568e98d43 Merge pull request #14537 from glassez/trackerentry
Properly show tracker status for "paused" torrents
2021-03-13 06:21:35 +03:00
Vladimir Golovnev (Glassez)
0c9ecd1d76 Properly show tracker status for "paused" torrents 2021-03-12 16:20:52 +03:00
Vladimir Golovnev (Glassez)
799e67bbca CI: Disable libtorrent2 deprecated functions on Travis 2021-03-12 12:43:14 +03:00
Vladimir Golovnev (Glassez)
561b597031 Improve "info hash" handling
Define "torrent ID" concept, which is either a SHA1 hash for torrents of version 1,
or a SHA256 hash (truncated to SHA1 hash length) for torrents of version 2.
Add support for native libtorrent2 info hashes.
2021-03-12 12:43:14 +03:00
Vladimir Golovnev (Glassez)
6d6908e625 Initialize torrent status from add torrent params 2021-03-11 20:01:34 +03:00
Vladimir Golovnev
4da4fb0676 Merge pull request #14479 from glassez/trackerentry
Improve tracker entries handling
2021-03-11 18:51:19 +03:00
Vladimir Golovnev (Glassez)
7a8c05dc7c Improve tracker entries handling 2021-03-10 19:54:34 +03:00
Vladimir Golovnev
d7bacdcbff Merge pull request #14518 from glassez/speedplot
Don't allow speed plot buffer to overflow
2021-03-10 19:33:22 +03:00
Vladimir Golovnev
73e927ff19 Merge pull request #14519 from glassez/add-torrent
Accept "share limits" when adding torrent using WebAPI
2021-03-10 19:32:41 +03:00
Vladimir Golovnev (Glassez)
e2c785b2d5 Accept "share limits" when adding torrent using WebAPI 2021-03-09 20:01:15 +03:00
Vladimir Golovnev (Glassez)
20e9952d98 Don't allow speed plot buffer to overflow 2021-03-09 19:52:10 +03:00
Vladimir Golovnev
0bf36ad031 Merge pull request #14505 from glassez/stacktrace
Look for qbittorrent.pdb in installation directory
2021-03-08 14:57:43 +03:00
Mike Tzou
f3435c5e35 Merge pull request #14493 from Chocobo1/tos
Expose ToS setting from libtorrent
2021-03-08 10:24:42 +08:00
Vladimir Golovnev (Glassez)
166ec74ff9 Look for qbittorrent.pdb in installation directory
Pass application directory as PDB search path in SymInitialize.
Otherwise it searches in application working directory so when you
run qBittorrent with working directory other than its installation
one it can't find qbittorent.pdb file and produces broken stacktrace.
2021-03-07 17:41:51 +03:00
Vladimir Golovnev
6b3c6c12ff Merge pull request #14466 from glassez/sha1hash
Improve "info hash" handling
2021-03-07 13:25:01 +03:00
Chocobo1
5161758193 Expose ToS setting from libtorrent
Closes #14420.
2021-03-07 15:32:07 +08:00
Vladimir Golovnev (Glassez)
bea32cfe38 Define template for classes that represent SHA hashes 2021-03-06 12:36:08 +03:00
Vladimir Golovnev (Glassez)
8cfd803222 Drop implicit conversions between InfoHash and QString 2021-03-06 12:35:42 +03:00
Chocobo1
9a567721a8 Add missing semicolon 2021-03-06 14:44:10 +08:00
Mike Tzou
3a49c8f2da Merge pull request #14491 from Chocobo1/travis
Fix TravisCI macOS builds
2021-03-06 11:49:06 +08:00
Chocobo1
12938799a6 Remove unused lambda capture 2021-03-05 22:18:08 +08:00
Chocobo1
89807fb55f Specify Qt version in TravisCI build script
In homebrew `qt` package is referring to Qt6 instead of Qt5.
2021-03-05 20:38:36 +08:00
Mike Tzou
891a24c6ba Merge pull request #14484 from Chocobo1/abort
Properly stop torrent creation if aborted
2021-03-05 14:44:41 +08:00
Mike Tzou
752b45083c Merge pull request #14472 from Chocobo1/progressbar_draw
Correctly draw the background of progress bar
2021-03-05 14:43:52 +08:00
Chocobo1
f00f552369 Properly stop torrent creation if aborted
Closes #11346.
2021-03-04 14:54:02 +08:00
Chocobo1
5c2b81d78f Correctly draw the background of progress bar
Closes #12271.
2021-03-02 21:53:46 +08:00
Vladimir Golovnev
a2b0531d5f Merge pull request #14189 from glassez/libtorrent-1.2.12
Raise minimum libtorrent version to 1.2.12 (2.0.2)
2021-03-01 20:43:28 +03:00
Mike Tzou
752eb58ec0 Merge pull request #14423 from jagannatharjun/true-stable
Support sub-sorting in Transferlist
2021-03-01 12:26:17 +08:00
Vladimir Golovnev
7373b60522 Merge pull request #14432 from brvphoenix/rss
WebUI: Properly decode strings
2021-02-25 12:58:29 +03:00
brvphoenix
59f0961594 WebUI: Properly decode strings 2021-02-24 21:48:21 +03:00
jagannatharjun
b776f98df8 Support sub-sorting in Transferlist 2021-02-25 00:15:32 +05:30
Mike Tzou
7400284cff Merge pull request #14437 from Chocobo1/mime
Improve detection of filename extension of audio/video files
2021-02-23 12:35:17 +08:00
Vladimir Golovnev
da87eb7b4c Merge pull request #14428 from mkopec/menuicons
Add an option to disable icons in menus
2021-02-22 07:10:50 +03:00
Chocobo1
e1f9083c81 Improve detection of filename extension of audio/video files 2021-02-21 17:38:21 +08:00
Michał Kopeć
614376ed64 Add an option to disable icons in menus 2021-02-20 18:12:02 +01:00
Mike Tzou
529dd6e3a8 Merge pull request #14405 from Chocobo1/funding
Enable sponsor button on Github
2021-02-15 12:00:59 +08:00
Chocobo1
acb1bc0c0e Enable sponsor button on Github 2021-02-14 13:53:23 +08:00
Mike Tzou
8233f60569 Merge pull request #14372 from ojura/patch-1
Systemd: wait for mounting of local filesystems
2021-02-13 13:49:20 +08:00
Vladimir Golovnev
4ae2160372 Merge pull request #14054 from jagannatharjun/speedplotview
Make SpeedPlotView averager time aware
2021-02-12 06:58:45 +03:00
Mike Tzou
1df2dd9593 Merge pull request #14371 from Chocobo1/units
Fix potential out-of-bounds access
2021-02-11 13:15:01 +08:00
Juraj Oršulić
d53a1d1412 Systemd: wait for mounting of local filesystems 2021-02-10 12:08:47 +01:00
Mike Tzou
de9b43984a Merge pull request #14368 from zzandland/revise-apply-button-options
Refactor apply button logics on options dialog
2021-02-10 12:35:35 +08:00
Chocobo1
4a0b36a50b Use std::optional to return results 2021-02-10 12:25:26 +08:00
Chocobo1
fffe5e7003 Fix potential out-of-bounds access 2021-02-10 12:25:15 +08:00
Vladimir Golovnev
0bac639a04 Merge pull request #14327 from zzandland/add-category-automated-rss-downloader
Add category button on AutomatedRSSDownloader
2021-02-10 06:40:23 +03:00
Si Yong Kim
0d0d0a7c23 Add empty name error handling on new category dialog 2021-02-08 21:27:26 -08:00
Mike Tzou
c8e8a44747 Merge pull request #14363 from Chocobo1/queue_pos
Revise getter function for torrrent queue position
2021-02-09 12:24:14 +08:00
Si Yong Kim
173f8b093f Refactor apply button logics on options dialog 2021-02-08 09:02:12 -08:00
Chocobo1
e46c88580a Revise getter function for torrrent queue position
This addresses https://github.com/qbittorrent/qBittorrent/pull/14335#issuecomment-774667836

The WebAPI is not affected as a workaround is added.
2021-02-08 14:24:16 +08:00
Mike Tzou
e6033c952e Merge pull request #14351 from Chocobo1/avail
Show proper string when torrent availability is not available
2021-02-08 12:12:22 +08:00
Vladimir Golovnev
3dfd0ff3b3 Merge pull request #14354 from glassez/missing-files
Improve handling of "missing files" torrents
2021-02-08 06:34:15 +03:00
Vladimir Golovnev
dd65f35e5a Merge pull request #14353 from glassez/rename
Allow change-case-only file renaming on Windows
2021-02-08 06:33:17 +03:00
Chocobo1
0d550c9bce Apply "Hide infinity values" to ETA column 2021-02-07 16:08:20 +08:00
Chocobo1
2aeb8b9390 Apply "Hide infinity values" to "Down/Up Limit" columns 2021-02-07 16:08:20 +08:00
Chocobo1
afa2fc0ba9 Apply "Hide zero values" to "Time Active" column 2021-02-07 16:08:20 +08:00
Chocobo1
6a45919b25 Clean up coding style 2021-02-07 16:08:20 +08:00
Chocobo1
e4f7d607e1 Show proper string when torrent availability is not available 2021-02-07 16:08:20 +08:00
Si Yong Kim
0690ef31d1 Add category button on AutomatedRSSDownloader on GUI
Closes #7629
2021-02-06 05:13:57 -08:00
Vladimir Golovnev (Glassez)
c3f02d833c Restart "missing files" torrents after changing location 2021-02-06 14:59:51 +03:00
Vladimir Golovnev (Glassez)
e273ac3a0d Allow "missing files" torrents to save more resume data 2021-02-06 14:30:33 +03:00
Vladimir Golovnev (Glassez)
459d02abc8 Allow change-case-only file renaming on Windows 2021-02-06 11:33:46 +03:00
Mike Tzou
f5e8b26a55 Merge pull request #14335 from Chocobo1/sort
Use stable sorting in transfer list
2021-02-06 11:02:30 +08:00
Mike Tzou
2d27083509 Merge pull request #14340 from Chocobo1/cmake
Use built-in function for configuring file contents
2021-02-06 11:01:10 +08:00
Vladimir Golovnev
ce482c20cb Merge pull request #14307 from dyumin/let_system_sleep_if_there_are_errored_active_torrents
Don't inhibit system sleep if all active torrents are errored
2021-02-05 14:13:15 +03:00
Chocobo1
c2f149cca3 Use built-in function for configuring file contents 2021-02-05 10:20:03 +08:00
Chocobo1
ab0e1ec6e8 Use stable sorting in transfer list 2021-02-05 10:01:28 +08:00
Mike Tzou
5e4f548321 Merge pull request #14336 from Chocobo1/actions
Don't trigger Github Actions CI builds after editing a PR's opening post
2021-02-05 09:25:27 +08:00
PriitUring
e53634ecef NSIS: Add Estonian translation
This file was previously not translated.
PR #14331.
2021-02-04 12:35:52 +03:00
Chocobo1
03e7019182 Simplify CI script directives 2021-02-04 16:15:57 +08:00
Chocobo1
82b0bc63a3 Don't trigger Github Actions CI builds after editing a PR's opening post
After dropping "edited" keyword, it is the same as the default.
2021-02-04 16:14:10 +08:00
Mike Tzou
04275e7d5d Merge pull request #14318 from Chocobo1/sorting
Reuse existing code for sorting
2021-02-03 12:52:35 +08:00
Mike Tzou
7a471ea6b2 Merge pull request #14311 from zzandland/remove-hungarian-translator
Update translator tab on About
2021-02-02 12:11:08 +08:00
Chocobo1
45874fa333 Reuse existing code for sorting
This makes the behavior of sorting by TR_SEED_DATE consistent.
2021-02-01 13:51:04 +08:00
Si Yong Kim
74a5c6e745 Add hyperlink to Transifex on translator list
Closes #12609
2021-01-30 15:45:13 -08:00
Si Yong Kim
cfafe90fe0 Remove Hungarian translator email 2021-01-29 08:44:47 -08:00
dyumin
12d396ffc5 Treat errored torrents as finished 2021-01-29 12:36:25 +03:00
Mike Tzou
dc39b9e643 Merge pull request #14274 from Chocobo1/updater
Improve behavior when using ProgramUpdater class
2021-01-29 11:37:32 +08:00
Chocobo1
e6a8c02745 Prolong checking interval for program updates 2021-01-28 16:52:04 +08:00
Chocobo1
88d695f7af Improve behavior when using ProgramUpdater class
This is mainly to avoid involving of `sender()` function.
2021-01-28 16:52:04 +08:00
Vladimir Golovnev (Glassez)
b673e0c219 CI: Use custom vcpkg libtorrent port 2021-01-28 11:47:08 +03:00
Chocobo1
5c819f7242 Revise version comparison 2021-01-27 11:42:06 +08:00
Chocobo1
40bd2039d4 Clean up coding style 2021-01-27 11:42:04 +08:00
Mike Tzou
53f29613c2 Merge pull request #14292 from jagannatharjun/fix-double-click
Disable expand on double click in TorrentContentTreeView
2021-01-26 12:14:55 +08:00
jagannatharjun
3371709472 Disable expand on double click in TorrentContentTreeView
We hook our own actions on double click. Fixes #14269
2021-01-25 13:35:22 +05:30
Vladimir Golovnev
50c009265e Merge pull request #14275 from glassez/webapi-version
Bump WebAPI version
2021-01-24 12:23:05 +03:00
Alex
e169c0ce5e Update Portuguese BR NSIS translation (#12376) 2021-01-24 12:10:47 +08:00
slrslr
f04d4b10e4 Translating new phrases (#12318)
* Update Czech NSIS translation

Co-authored-by: slrslr <czautohits@gmail.com>
2021-01-24 12:07:40 +08:00
jagannatharjun
f3e4338efc Add a 3-Hour graph 2021-01-23 18:30:39 +05:30
jagannatharjun
c8979a6a49 Make SpeedPlotView averager time aware
Previously SpeedPlotView assumed speed is updated per second but the
default value was 1500ms and that can be further changed by the
user, this caused a lot of duplicate data in the calculation of the
graph points. Now Averager averages based on the target duration, resolution
and also takes into account when actually data has arrived.

Also improved resolution of 6-hour graph, previously it was same as 12-hour graph
2021-01-23 18:30:39 +05:30
Vladimir Golovnev (Glassez)
5b495e2f51 Bump WebAPI version 2021-01-23 13:55:09 +03:00
Mike Tzou
42637a642b Merge pull request #14256 from Chocobo1/tr
Don't let "program update" dialog steal focus
2021-01-22 11:47:43 +08:00
Vladimir Golovnev
2375e7c100 Merge pull request #14257 from an0n666/Validate-HTTPS-Tracker
Validate HTTPS Tracker Certificate by default
2021-01-21 14:54:28 +03:00
Chocobo1
ae1b852821 Enlarge "speed limit" icon slightly 2021-01-21 12:22:15 +08:00
Chocobo1
44e4dd3700 Don't let "program update" dialog steal focus
And also avoid creating an unnecessary event loop.
Closes #14250.
2021-01-21 12:22:08 +08:00
an0n666
24d7d599f1 Validate HTTPS Tracker Certificate by default 2021-01-20 13:33:10 +06:00
Chocobo1
d85a41ad75 Disable translation of program name 2021-01-20 11:30:33 +08:00
Mike Tzou
478ddfe102 Merge pull request #14242 from xavier2k6/Change-qBittorrent-Updater-window-title
Change title of "version update" dialog box
2021-01-20 11:21:40 +08:00
Mike Tzou
198f832c3d Merge pull request #14237 from crackwitz/master
Allow tab to escape the text box in "Edit trackers" dialog
2021-01-20 11:17:28 +08:00
Mike Tzou
f0b78ffc04 Merge pull request #14233 from Chocobo1/menu
Add ability to prioritize selected items by shown file order
2021-01-20 11:15:52 +08:00
Vladimir Golovnev
a445311705 Merge pull request #14240 from glassez/drop-ext
Drop extension from generated content folder name
2021-01-19 14:59:40 +03:00
Christoph Rackwitz
1fe1fa9eac Allow tab to escape the text box in "Edit trackers" dialog 2021-01-19 12:44:27 +01:00
Chocobo1
6258652c7b Remove redundant variable declarations 2021-01-19 12:16:10 +08:00
Chocobo1
28d31b9d5b Add ability to prioritize selected items by shown file order
Closes #2834.
2021-01-19 12:15:48 +08:00
xavier2k6
75426cc498 Change qBittorrent Updater window title 2021-01-18 14:01:13 +00:00
Vladimir Golovnev (Glassez)
ae29e8bbab Drop extension from generated content folder name
Try to detect whether generated content folder name contains extension
and drop it to avoid possible conflicts between file/folder names.
2021-01-18 10:37:19 +03:00
Mike Tzou
2b9c7e04a4 Merge pull request #14229 from Chocobo1/ext
Improve detection of file extension string
2021-01-18 12:43:54 +08:00
sledgehammer999
d1aba56096 Sync translations from Transifex and run lupdate 2021-01-17 23:20:45 +02:00
Chocobo1
3985d58d3c Move menu actions out of .ui files
This is to move related code together.
2021-01-17 14:47:55 +08:00
Chocobo1
1479b61214 Simplify code for checking free disk space
`QStorageInfo::bytesAvailable()` is guaranteed to return `-1` for an
invalid path.
https://doc.qt.io/qt-5/qstorageinfo.html#bytesAvailable
2021-01-17 11:51:33 +08:00
Chocobo1
15a249eb54 Improve detection of file extension string 2021-01-17 00:10:18 +08:00
Vladimir Golovnev
08b3d6bbb0 Merge pull request #14210 from glassez/fix-webui
WebUI: Correctly represent torrent content structure
2021-01-13 20:37:25 +03:00
Vladimir Golovnev (Glassez)
710c5e2c31 WebUI: Correctly represent torrent content structure 2021-01-12 16:13:48 +03:00
Mike Tzou
17fa615bd3 Merge pull request #14198 from Chocobo1/search
Add README.md to searchengine folder
2021-01-12 13:08:58 +08:00
Chocobo1
6bfed97710 Add README.md to searchengine folder 2021-01-11 15:11:36 +08:00
Vladimir Golovnev (Glassez)
f9e286123f Raise minimum libtorrent version to 1.2.12 2021-01-10 14:38:58 +03:00
sledgehammer999
613fd1bcf0 Merge pull request #14162 from Chocobo1/flags
Disable compiler flags
2021-01-09 14:08:55 +02:00
Chocobo1
52ce52d466 Unify "github actions" artifacts naming scheme 2021-01-09 12:59:08 +08:00
Chocobo1
cede5ac9d2 Migrate away from deprecated Qt functions
`QString QDateTime::toString(Qt::DateFormat format = Qt::TextDate)` will
be removed in Qt6.
2021-01-09 12:59:08 +08:00
Chocobo1
89559eae2b Disable clang "range loop analysis" compiler warning
See: https://github.com/qbittorrent/qBittorrent/pull/13915#issuecomment-739449084
2021-01-09 12:59:07 +08:00
Mike Tzou
d7fb2e6403 Merge pull request #14176 from Chocobo1/pack_src_2
Add script for generating project tarball
2021-01-09 12:51:46 +08:00
Vladimir Golovnev
e3119b457c Merge pull request #14179 from lbilli/patch-1
On Linux use legacy 'data' directory only as a fallback
2021-01-08 22:15:34 +03:00
sledgehammer999
ae27a5b7b7 Merge pull request #14171 from sledgehammer999/copyright_attribution
Correct copyright attribution
2021-01-07 18:37:43 +02:00
Chocobo1
302cb27e98 Add script for generating project tarball 2021-01-07 23:31:05 +08:00
lbilli
2d3481b9a9 On Linux use legacy 'data' directory only as a fallback 2021-01-07 10:04:08 -05:00
sledgehammer999
9b67e988db Correct copyright attribution
These files were created and edited in their entirety in commit 8db4bde15d
As far as I can tell they were almost entirety rewritten from their original state.
The old copyright attribution is restored and the new author is added too.
2021-01-07 13:39:15 +02:00
Vladimir Golovnev
15f1fdddd9 Merge pull request #14166 from glassez/cleanup-class-names
Remove redundant suffix from TorrentHandle class name
2021-01-07 14:34:01 +03:00
Chocobo1
24fa9e32b0 Set source character sets to UTF-8
This suppress warning C4819.
https://docs.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=msvc-160
2021-01-07 11:51:24 +08:00
Vladimir Golovnev (Glassez)
0b4fef19f6 Remove redundant suffix from TorrentHandle class
Originally, it was just a wrapper for libtorrent::torrent_handle class, so it mimicked its name.
It was then transformed into a more complex aggregate, but the name was retained (just by inertia).
Unlike libtorrent::torrent_handle class in whose name "handle" means the pattern used,
it does not matter for qBittorrent classes and just eats up space in the source code.
2021-01-06 16:28:17 +03:00
Vladimir Golovnev
35731b96dc Merge pull request #14157 from jagannatharjun/content-search
Correctly set items flags in TorrentContentModel
2021-01-06 14:19:29 +03:00
Mike Tzou
b79a1b5755 Merge pull request #14145 from Chocobo1/define
Generate version header when configuring project
2021-01-06 11:38:55 +08:00
sledgehammer999
1561f6f09f Merge pull request #14156 from sledgehammer999/copyright_2021
Bump copyright year
2021-01-06 01:40:46 +02:00
jagannatharjun
36d7fce909 Correctly set items flags in TorrentContentModel
Only set editable flag on item's where editing is handled in the delegate

closes #13515
2021-01-05 23:04:27 +05:30
sledgehammer999
b8d6058b28 Bump copyright year 2021-01-05 14:27:09 +02:00
Vladimir Golovnev
8771e1a339 Merge pull request #14138 from glassez/add-torrent
Use single parameter to accept torrent source
2021-01-05 09:17:08 +03:00
Vladimir Golovnev
7b657c942d Merge pull request #14137 from glassez/std-optional
Use std::optional for optional parameters
2021-01-05 09:16:20 +03:00
Vladimir Golovnev (Glassez)
531ae501ad Use std::optional<bool> instead of custom TriStateBool 2021-01-04 23:10:24 +03:00
Vladimir Golovnev (Glassez)
d0cac421bb Change parseBool() to return optional bool value 2021-01-04 23:10:24 +03:00
Vladimir Golovnev (Glassez)
4429a16ca8 Use std::optional instead of boost::optional 2021-01-04 23:10:03 +03:00
Chocobo1
c669401767 Generate version header when configuring project
The basic idea is we create a version header template at
"src/base/version.h.in" and the build systems are expected to replace
strings that are enclosed with @ symbols and generate
"src/base/version.h" for other source files to consume/include.
2021-01-04 22:28:41 +08:00
Vladimir Golovnev (Glassez)
4d349f5f81 QMake: Raise minimal macOS target version 2021-01-04 15:07:23 +03:00
Vladimir Golovnev
08e0349ca3 Merge pull request #14140 from glassez/namespace
Use nested namespaces definition syntax
2021-01-04 08:12:43 +03:00
Vladimir Golovnev (Glassez)
ee5fe424e8 Use single parameter to accept torrent source 2021-01-03 17:01:20 +03:00
Vladimir Golovnev (Glassez)
552ff0489d Use nested namespaces definition syntax 2021-01-03 16:53:24 +03:00
Mike Tzou
04a9ce6e81 Merge pull request #14074 from Chocobo1/dialog_size
Remember dialog sizes
2021-01-03 13:20:21 +08:00
Mike Tzou
586bdc0567 Merge pull request #14121 from Chocobo1/settingsStorage
Improve load data behavior of SettingsStorage class
2021-01-03 13:19:53 +08:00
Vladimir Golovnev
4bb3d13921 Merge pull request #14123 from glassez/restart-missing-files
Don't re-check "missing files" torrents when re-start
2021-01-02 15:20:50 +03:00
Vladimir Golovnev
7c02630186 Merge pull request #14116 from glassez/drop-move-notify
Drop notification about move storage finished
2021-01-02 10:34:09 +03:00
Chocobo1
ff63ad8b97 Don't use deprecated locale name 2021-01-02 13:25:23 +08:00
Chocobo1
bdf1fb6db8 Revise store/load state operations of Options Dialog 2021-01-02 13:25:23 +08:00
Mike Tzou
d21fdb7546 Merge pull request #14118 from Chocobo1/fromstring
Move parsing of TriStateBool to a static class function
2021-01-02 12:58:00 +08:00
Chocobo1
be5af2796d Revise SettingsStorage store/load value interface 2021-01-02 12:48:26 +08:00
Chocobo1
b1020c599f Improve load data behavior of SettingsStorage class
Previously it only handle the case of failed lookup, now it discard
invalid values when deserializing the database from disk.
Also checks whether the data is convertible to the intended type.
2021-01-01 22:57:50 +08:00
Vladimir Golovnev (Glassez)
b2199202ab Reload "missing files" torrent instead of re-checking 2021-01-01 16:16:52 +03:00
Vladimir Golovnev (Glassez)
06105072f9 Extract torrent reloading logic into separate method 2021-01-01 16:08:01 +03:00
Vladimir Golovnev
b676ca7d96 Merge pull request #14108 from thalieht/webui-options-content-layout
Update "Keep top-level folder" in WebUI options
2021-01-01 15:32:49 +03:00
sledgehammer999
90f355cfaf Merge pull request #14094 from Chocobo1/autotools
Migrate away from deprecated `AC_OUTPUT` macro
2021-01-01 13:42:14 +02:00
Chocobo1
757ab3dc92 Remember dialog sizes
This applies to "About Dialog", "Ban List Options Dialog", "Download From URL Dialog", "IP Subnet
Whitelist Options Dialog", "Search Plugin Select Dialog", "Search Plugin Source Dialog",
"Statistics Dialog", "Speed Limit Dialog" and "Torrent Options Dialog".

Also unifies storing the dialog size under the key "Size".
2021-01-01 16:03:32 +08:00
Chocobo1
e022c371ff Move parsing of TriStateBool to a static class function 2021-01-01 12:59:48 +08:00
Chocobo1
50a2cc9917 Exclude configure script for "trailing newlines" checking 2021-01-01 12:58:23 +08:00
Chocobo1
5209b0172b Migrate away from deprecated AC_OUTPUT macro
The `AC_OUTPUT` has two versions, the deprecated one takes arguments and the other not. Check the
following link for equivalent replacement:
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.70/html_node/Obsolete-Macros.html#Obsolete-Macros

Also regenerate the configure script with the latest Autoconf 2.70.
2021-01-01 12:58:19 +08:00
Mike Tzou
cfb55d9d77 Merge pull request #14005 from Chocobo1/cpp17
Bump project requirement to C++17
2021-01-01 12:49:16 +08:00
Vladimir Golovnev (Glassez)
df2bbe129d Drop notification about move storage failed 2020-12-31 21:53:43 +03:00
Vladimir Golovnev (Glassez)
f7cae610a4 Drop notification about move storage finished 2020-12-31 21:49:18 +03:00
thalieht
bb698d682c Update "Keep top-level folder" in WebUI options 2020-12-31 13:06:46 +02:00
Chocobo1
5bd6ff2285 Migrate away from deprecated std::iterator class 2020-12-31 13:28:48 +08:00
Chocobo1
e6cf186c23 Use function-pointer based signal-slot connection 2020-12-31 13:28:48 +08:00
Chocobo1
e8b5508463 Remove unused define 2020-12-31 13:28:48 +08:00
Chocobo1
d70b893852 Bump project requirement to C++17 2020-12-31 13:28:48 +08:00
Mike Tzou
a579b4a519 Merge pull request #14085 from Chocobo1/settingvalue
Add a thin layer around SettingsStorage class
2020-12-31 10:46:32 +08:00
sledgehammer999
fffa2f097e Merge pull request #14069 from sledgehammer999/new_languages
Add new languages
2020-12-30 23:43:43 +02:00
Vladimir Golovnev
cabb2198b0 Merge pull request #14097 from glassez/fix-webui
Don't call non-existent elements (part 2)
2020-12-30 22:22:41 +03:00
Vladimir Golovnev (Glassez)
3af2168b02 Don't call non-existent elements
Fixed a regression where the script tries to access elements that no longer
exist on the page, because they were replaced with others by a previous change.
2020-12-30 16:45:49 +03:00
Vladimir Golovnev
f1337524f6 Merge pull request #14089 from glassez/fix-webui
Don't call non-existent elements
2020-12-29 22:30:00 +03:00
Vladimir Golovnev
348109a1f9 Merge pull request #13995 from glassez/rename-files
Improve content file/folder names handling
2020-12-29 22:27:58 +03:00
Chocobo1
0b0597be0c Add a thin layer around SettingsStorage class
This new layer would be handy for saving GUI widget states as they don't
need the value cached and they store/load rarely.
2020-12-30 00:10:22 +08:00
Vladimir Golovnev (Glassez)
690dbc4725 Don't call non-existent elements
Fixed a regression where the script tries to access elements that no longer
exist on the page, because they were replaced with others by a previous change.
2020-12-29 14:31:37 +03:00
Mike Tzou
cc9b1ea8a1 Merge pull request #14073 from Chocobo1/locale
Capitalize locale names
2020-12-29 17:32:37 +08:00
sledgehammer999
ffebe82586 Add new languages
* Azerbaijani
* Estonian
2020-12-28 21:58:44 +02:00
Vladimir Golovnev (Glassez)
4453e7fcdd Improve content file/folder names handling
Move files/folders renaming functions to core classes.
Query file/folder for renaming by its current path.
Add ability to rename content folders from WebAPI/WebUI.
2020-12-28 21:18:28 +03:00
Mike Tzou
60d65d8137 Merge pull request #13885 from thalieht/torrentOptionsDialog
Rework global speed limit dialog and introduce torrent options dialog
2020-12-28 11:34:38 +08:00
Chocobo1
c8eefe749f Capitalize locale names 2020-12-28 11:25:25 +08:00
sledgehammer999
162421a59a Sync translations from Transifex and run lupdate 2020-12-26 21:15:29 +02:00
Vladimir Golovnev (Glassez)
79048812e9 Fix folder name extraction functions
It should return empty string if there is no parent folder.
2020-12-26 14:47:06 +03:00
Vladimir Golovnev
70b242f190 Merge pull request #13955 from glassez/content-policy
Improve content root folder handling
2020-12-26 14:44:51 +03: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
thalieht
fbb8f0cbf5 Save fastresume when setting torrent speed limits 2020-12-25 20:37:43 +02:00
thalieht
aafa12eb6e Increase maximum global speed limits from ~1 GiB/s to ~2 GiB/s
Closer to the INT_MAX limit of ~2 Billion when multiplied by 1024 for libtorrent
2020-12-25 20:37:43 +02:00
thalieht
76f285f19c Convert existing speed dialog to global + alt global limits only 2020-12-25 20:37:43 +02:00
Mike Tzou
e1073de36f Merge pull request #14039 from Chocobo1/stats
Don't use removed stat metric in libtorrent 2.0
2020-12-25 17:55:56 +08:00
Mike Tzou
ae48e49cba Merge pull request #14042 from Chocobo1/array
Fix wrong JSON type returned
2020-12-25 17:55:28 +08:00
Chocobo1
4180db601d Use a helper function to look up stat indexes 2020-12-24 23:20:21 +08:00
Chocobo1
423983e023 Fix wrong JSON type returned
Fix up 78638a15be.
Closes #14041.
2020-12-24 23:15:36 +08:00
Chocobo1
90a1ea4281 Don't use removed stat metric in libtorrent 2.0
For now, the metric is not entirely removed due to WebAPI still needs to
access it.
2020-12-24 12:04:14 +08:00
Chocobo1
0ebd864db9 Initialize stat indices to -1
When the index is initialized it will be set to a number >= 0, so we use
-1 to denote its uninitialized status.
2020-12-24 11:30:48 +08:00
Mike Tzou
02e85913da Merge pull request #14035 from Chocobo1/autotools
Don't use default CFLAGS, CXXFLAGS from autotools
2020-12-24 10:24:35 +08:00
Vladimir Golovnev (Glassez)
1d5dc283fe Allow to add root folder to torrent content 2020-12-23 13:07:33 +03:00
Chocobo1
769f0a78d4 Don't use default CFLAGS, CXXFLAGS from autotools
Before this commit, autotools will inject `-g -O2` to debug build
(`--enable-debug=yes`) and rendering the result binary useless. This
commit fixes it.
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.70/html_node/C_002b_002b-Compiler.html

Closes #14032.
2020-12-23 15:28:46 +08:00
Vladimir Golovnev
4029f86c60 Merge pull request #14025 from glassez/fix-move
Fix bug of "move storage job" can be performed multiple times
2020-12-22 19:17:35 +03:00
Vladimir Golovnev (Glassez)
f6d1fea9b7 Fix bug of "move storage job" can be performed multiple times 2020-12-21 20:11:01 +03:00
Mike Tzou
fa6524d377 Merge pull request #13969 from Chocobo1/cmp
Migrate away from deprecated QVariant comparison operators (part 2)
2020-12-19 11:52:22 +08:00
Mike Tzou
c56cb8adb6 Merge pull request #13979 from alessandrosimonelli/patch-1
NSIS: Fixed italian.nsi after 4.3.0.1 update
2020-12-19 11:50:55 +08:00
Chocobo1
78638a15be Migrate away from deprecated QVariant comparison operators
Fortunately, serializing to JSON limits the data types to a very small
subset and thus we are able to implement the comparison without much
hassle.

Fix up cba8d83b21.
2020-12-18 13:19:15 +08:00
Vladimir Golovnev (Glassez)
d4a51979bb Extract enum serialization/parsing functions 2020-12-15 10:18:39 +03:00
Vladimir Golovnev (Glassez)
77555cd5c2 Improve torrent name handling 2020-12-15 10:18:39 +03:00
Vladimir Golovnev
7c48ba2f19 Merge pull request #13975 from FranciscoPombal/pragmatism_v2
Update coding guidelines policy for include guards
2020-12-15 06:29:20 +03:00
Alessandro Simonelli
4dbe0a0d0e NSIS: Fixed italian.nsi after 4.3.0.1 update
Merged my previous fixes (discussed in #13607) with the suggestions by @glassez (#13615).
2020-12-15 00:16:07 +01:00
FranciscoPombal
ca92a74a39 Update coding guidelines policy for include guards 2020-12-14 12:24:06 +00:00
Vladimir Golovnev
c01d28a471 Merge pull request #13948 from FranciscoPombal/pragmatism
Use #pragma once instead of include guards
2020-12-14 13:51:02 +03:00
Mike Tzou
98ff09931d Merge pull request #13886 from Chocobo1/options
Add support for `allow_idna` option
2020-12-14 12:55:10 +08:00
Chocobo1
20ae89c2a1 Add support for allow_idna option
Upstream PR: https://github.com/arvidn/libtorrent/pull/5316
2020-12-13 12:12:24 +08:00
Chocobo1
0baa23f553 Update "HTTPS tracker validation" enablement conditional
https://github.com/arvidn/libtorrent/pull/5313
2020-12-13 12:12:24 +08:00
Mike Tzou
10fbb6a2a8 Merge pull request #13953 from Chocobo1/cmp
Migrate away from deprecated QVariant comparison operators
2020-12-13 11:49:52 +08:00
FranciscoPombal
6152b83405 Use #pragma once instead of include guards 2020-12-12 19:41:32 +00:00
Vladimir Golovnev
aed25ff87c Merge pull request #13954 from glassez/fix-stopped
Fix bug of torrents don't save "stopped" state
2020-12-12 17:31:08 +03:00
Vladimir Golovnev (Glassez)
5f94238d23 Fix bug of torrents don't save "stopped" state 2020-12-11 17:33:37 +03:00
Chocobo1
4d1d5d6b20 Revise Utils::Version comparison operators 2020-12-11 12:50:12 +08:00
Chocobo1
5ba6a5fca1 Add operator< for InfoHash class 2020-12-10 20:11:15 +08:00
Chocobo1
cba8d83b21 Migrate away from deprecated QVariant comparison operators
Another idea would be manually define a custom comparison function for
QVariant. However, having the function would be excessive due to its
limited usage count, also note that we are already casting
various QVariant to its underlying type in existing code.
2020-12-10 20:11:13 +08:00
Mike Tzou
aaeffe3846 Merge pull request #13937 from Chocobo1/qt6
Use Qt provided forward declaration header
2020-12-10 19:57:45 +08:00
Vladimir Golovnev
6881e8fbe3 Merge pull request #13923 from FranciscoPombal/musl
CMake: detect required header for STACKTRACE feature
2020-12-10 14:11:19 +03:00
FranciscoPombal
137e455f03 CMake: detect required header for STACKTRACE feature
musl does not provide execinfo.h, so our current stacktrace-related
code cannot be used with it.
2020-12-09 18:55:59 +00:00
Chocobo1
ff3d0346eb Fix coding style 2020-12-09 22:50:01 +08:00
Chocobo1
498da509db Use Qt provided forward declaration header 2020-12-09 18:21:02 +08:00
Mike Tzou
d484c0e7ce Merge pull request #13912 from Chocobo1/infohash
Use the correct type when referring to info hash
2020-12-08 20:53:12 +08:00
Vladimir Golovnev
5c1c561d7d Merge pull request #13905 from glassez/handle-metadata
Fix received metadata handling
2020-12-07 08:39:06 +03:00
Chocobo1
9f0429ca6f Use the correct type when referring to info hash 2020-12-06 22:04:28 +08:00
Vladimir Golovnev
3485ad39d9 Merge pull request #13511 from FranciscoPombal/bump_versions
Bump minimum dependency versions
2020-12-05 13:27:21 +03:00
Vladimir Golovnev
d899923876 Merge pull request #13910 from FranciscoPombal/hotfix_13894
Fix method invocation on Qt < 5.10
2020-12-05 10:33:07 +03:00
Vladimir Golovnev (Glassez)
4e04cd27c9 Fix received metadata handling 2020-12-05 10:03:27 +03:00
FranciscoPombal
7e4b428a3e Fix method invocation on Qt < 5.10
Fixup 0c3fe54b0b
2020-12-04 22:46:49 +00:00
FranciscoPombal
9f65a318da Bump dependency versions in CI
- Bump vcpkg version in GitHub Actions CI
- Bump libtorrent version in Travis CI

Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2020-12-04 16:27:17 +00:00
Vladimir Golovnev
2f6ed86c78 Drop support for building with libtorrent < 1.2.11
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
2020-12-04 14:30:12 +00:00
FranciscoPombal
6590915b15 Update minimum depedency versions 2020-12-04 12:23:22 +00:00
Vladimir Golovnev
0c3fe54b0b Merge pull request #13894 from glassez/find-existing
Find existing files in separate thread
2020-12-04 06:34:53 +03:00
Vladimir Golovnev (Glassez)
a93b675cb8 Search for existing files in separate thread 2020-12-03 07:58:34 +03:00
Mike Tzou
0f2df23800 Merge pull request #13893 from Chocobo1/input_length
Remove unnecessary restriction on input length
2020-12-02 23:13:06 +08:00
Mike Tzou
e4e0a24416 Merge pull request #13895 from Chocobo1/improve
Improve advanced settings
2020-12-02 20:26:37 +08:00
Chocobo1
6aa5abf298 Update URL to libtorrent settings 2020-12-02 13:50:41 +08:00
Chocobo1
bd672c4c4e Move "embedded tracker" options to qbt section 2020-12-02 13:50:41 +08:00
Chocobo1
8d768bda31 Add links to libtorrent documentation 2020-12-02 13:50:40 +08:00
Chocobo1
5110994f81 Lift upper limit of "Max concurrent HTTP announces" option
Closes #13800.
2020-12-02 13:47:47 +08:00
Chocobo1
83d17b5c0e Remove unnecessary restriction on input length
Closes #13884.
2020-12-02 11:51:41 +08:00
Vladimir Golovnev
e6c174c33b Merge pull request #13882 from jesec/master
WebAPI: allow to attach tags while adding torrents
2020-12-01 15:38:48 +03:00
Vladimir Golovnev (Glassez)
9497300a4a Don't rewrite TorrentInfo instance if it's valid 2020-12-01 08:15:26 +03:00
Vladimir Golovnev (Glassez)
acab62e345 Properly handle "Append extension" option changing 2020-12-01 08:15:25 +03:00
Vladimir Golovnev (Glassez)
0e8feed2f2 Clean up metadata downloading code 2020-12-01 08:15:12 +03:00
sledgehammer999
82716d8014 Merge pull request #13871 from sledgehammer999/magnet_delete
Don't try to remove folders for a torrent without metadata
2020-12-01 02:14:51 +02:00
sledgehammer999
af262e9a14 Merge pull request #13870 from sledgehammer999/fix_magnet_queue
Fix status of torrents without metadata
2020-12-01 02:14:32 +02:00
Jesse Chan
d0d5af8c66 WebAPI: bump version to 2.6.2 2020-12-01 01:43:03 +08:00
Jesse Chan
86f9b1f6db WebAPI: allow to attach tags while adding torrents 2020-11-30 20:54:42 +08:00
Mike Tzou
c4485d0af7 Merge pull request #13849 from Chocobo1/travisci
Add libtorrent 2.0 to TravisCI script
2020-11-30 11:20:25 +08:00
Mike Tzou
7c5d0a0e00 Merge pull request #13876 from Chocobo1/fix
Fix availability value
2020-11-30 11:20:02 +08:00
Mike Tzou
5f014a2056 Merge pull request #13706 from FranciscoPombal/translation_whitespace_fix
Detect .ts file issues with file health workflow
2020-11-30 00:10:59 +08:00
Chocobo1
eaaacd71a8 Simplify the calculation of speed graph scale 2020-11-30 00:03:47 +08:00
Chocobo1
75cead9266 Avoid potential rounding to integer issues 2020-11-30 00:03:46 +08:00
FranciscoPombal
d79c5824b8 Detect .ts file issues with file health workflow
Also adjust newlines to improve output
2020-11-29 15:19:27 +00:00
Chocobo1
4381739b6d Fix coding style 2020-11-29 20:13:58 +08:00
Chocobo1
8f2cdcef0e Fix availability value
Closes #13869.
Fix up 02f19bfbee.
2020-11-29 19:52:51 +08:00
Chocobo1
990cc41e80 Add libtorrent 2.0 to TravisCI script
Also bumping to ubuntu focal as libtorrent requires boost >= 1.66.
2020-11-29 12:33:58 +08:00
sledgehammer999
9721acbf63 Don't try to remove folders for a torrent without metadata 2020-11-29 02:41:47 +02:00
sledgehammer999
be5cb1683b Fix status of torrents without metadata 2020-11-29 00:32:53 +02:00
Mike Tzou
a4e7e546ff Merge pull request #13848 from Chocobo1/travisci_macos
Update to use latest macOS image for TravisCI
2020-11-28 01:25:23 +08:00
Mike Tzou
4259b4571c Merge pull request #13836 from Chocobo1/webui
Add ability to use 'shift+delete' to delete torrents in WebUI
2020-11-28 01:02:41 +08:00
Chocobo1
2414a79578 Update to use latest macOS image for TravisCI
The default version is so outdated that it needs to rebuild many
dependencies. Now we bump it to the latest version so that it can use
prebuilt packages.
2020-11-27 10:44:42 +08:00
Mike Tzou
84623ac1f6 Merge pull request #13820 from Chocobo1/sorting
Fix wrong data used for comparison
2020-11-27 10:20:02 +08:00
Chocobo1
d46343fb9c Add ability to use 'shift+delete' to delete torrents in WebUI
Closes #13827.
2020-11-26 15:52:47 +08:00
Vladimir Golovnev
5c788a6130 Merge pull request #13822 from adem4ik/patch-4
NSIS: Update Russian translation
2020-11-26 07:10:15 +03:00
Andrei Stepanov
281cf584ec NSIS: Update Russian translation 2020-11-25 22:25:36 +04:00
Chocobo1
13c4581c86 Fix wrong data used for comparison
In torrent transfer list we should use underlying data for sorting, not
displayed values.

Closes #13818.
2020-11-26 01:35:57 +08:00
sledgehammer999
9c938b91b7 Sync translations from Transifex and run lupdate 2020-11-24 16:58:42 +02:00
Mike Tzou
f71f7a0b63 Merge pull request #13787 from Chocobo1/actions
Pin github actions scripts to major versions
2020-11-23 14:24:58 +08:00
Mike Tzou
b8c03a1905 Merge pull request #13788 from RockyTDR/master
Fix confusion in date format description
2020-11-23 11:00:18 +08:00
Thomas De Rocker
9515b40ca5 Fix confusion in date format description (#1)
* Update automatedrssdownloader.ui

* Update rssDownloader.html (#2)
2020-11-21 10:09:47 +01:00
Chocobo1
df3d3db776 Pin github actions scripts to major versions
> Using the specific major action version allows you to receive critical
> fixes and security patches while still maintaining compatibility. It
> also assures that your workflow should still work.
https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsuses
2020-11-21 15:41:32 +08:00
Vladimir Golovnev
e15df81351 Merge pull request #13758 from glassez/coding-style
Improve coding style
2020-11-18 08:18:56 +03:00
Mike Tzou
77ec423510 Merge pull request #13766 from RockyTDR/patch-2
Update dutch.nsi
2020-11-18 10:37:33 +08:00
Vladimir Golovnev (Glassez)
c41df9ffbd Improve coding style 2020-11-17 21:02:37 +03:00
sledgehammer999
acad35c5bc Merge pull request #13634 from sledgehammer999/add_latgalian_language
New translation: Latgalian
2020-11-17 15:24:32 +02:00
Thomas De Rocker
6b3fe68a17 Update dutch.nsi
As referenced in https://github.com/qbittorrent/qBittorrent/pull/13615
and suggested by @glassez 
- Use the word qBittorrent when it is mentioned for the first time within a string.
- If the string contains other references to qBittorrent, then use it (rather than repeating qBittorrent).

Line 24 is the updated Dutch translation for the recently updated English source string (may 2020)
2020-11-17 09:23:04 +01:00
sledgehammer999
6ec07d744e Add Latgalian translation
Closes #12415
2020-11-16 20:26:54 +02:00
sledgehammer999
989fdb5895 Update .desktop file translations 2020-11-16 20:26:35 +02:00
Mike Tzou
e60b91b5e2 Merge pull request #13738 from Chocobo1/fix
Don't use deprecated torrent state "allocating"
2020-11-12 18:19:25 +08:00
Chocobo1
0be2567d97 Don't use deprecated torrent state "allocating"
Closes #13737.
2020-11-12 00:17:42 +08:00
Vladimir Golovnev
61770ad69e Merge pull request #13123 from glassez/handle-paused
Handle torrent "paused" state at application level
2020-11-04 21:17:17 +03:00
Vladimir Golovnev (Glassez)
85bd0feee0 Handle torrent "paused" state at application level 2020-11-02 10:09:14 +03:00
Mike Tzou
b249216db6 Merge pull request #13659 from FranciscoPombal/whitespacev2
File health: trailing newlines, whitespace, etc fixes and GitHub Actions workflow
2020-11-02 11:33:21 +08:00
Mike Tzou
2a2a80b0bf Merge pull request #13696 from Chocobo1/warnings
Suppress compiler warnings
2020-11-02 10:31:41 +08:00
Chocobo1
7ddd5e9bc3 Remove unused function 2020-11-01 14:25:33 +08:00
Chocobo1
6b4a4517ec Remove redundant semicolon 2020-11-01 14:24:49 +08:00
Mike Tzou
7c1c91ac43 Merge pull request #13689 from Chocobo1/paste
Allow adding torrents using "Paste" key sequence
2020-11-01 11:30:27 +08:00
Mike Tzou
6b56768e9c Merge pull request #13683 from NotTsunami/mingw
Fix mingw64 build error
2020-10-31 20:37:16 +08:00
Chocobo1
b2b7d02c01 Allow adding torrents using "Paste" key sequence
Closes #13685.
2020-10-31 14:07:04 +08:00
FranciscoPombal
8bb097fd10 Add GitHub Actions file health workflow 2020-10-30 21:32:36 +00:00
NotTsunami
a5f8f1f0f5 Fix mingw64 build error
mingw64 defines interface, so revert back to previous naming scheme

Fixes: 87864531ab
Closes #13649
2020-10-29 18:25:19 -04:00
Mike Tzou
424e2c76fa Merge pull request #13668 from jagannatharjun/consistent
Improve consistency between transfer list and torrent content view
2020-10-29 10:20:28 +08:00
FranciscoPombal
41ae2bfb84 Make sure there are no empty files 2020-10-28 14:20:18 +00:00
FranciscoPombal
4bdf9eda41 Fix extra/missing trailing new lines in files 2020-10-28 14:20:18 +00:00
FranciscoPombal
ef1c7eec74 Fix trailing whitespace in multiple files
Also fix formatting of CODING_GUIDELINES.md
2020-10-28 14:20:11 +00:00
FranciscoPombal
87527fccc6 Encode files in UTF-8 without BOM 2020-10-28 14:15:31 +00:00
Mike Tzou
f23234d0df Merge pull request #13667 from Chocobo1/webui
Remove outdated information
2020-10-28 21:08:39 +08:00
jagannatharjun
fdbc3a692f Align integer data to right in torrent content view 2020-10-28 12:27:54 +05:30
Vladimir Golovnev
571aaea3e0 Merge pull request #13658 from glassez/recheck
Don't resume "paused" torrents when put into "checking" state by libtorrent
2020-10-28 08:45:35 +03:00
jagannatharjun
d0986297ca Rename TR_PROGRESS header in TransferList
Closes #13665
2020-10-28 10:39:56 +05:30
Chocobo1
188e679ea3 Remove outdated information 2020-10-28 13:09:37 +08:00
Mike Tzou
4209a5699a Merge pull request #13632 from jagannatharjun/progress-style
Allow progress bar styling from custom themes
2020-10-28 10:04:05 +08:00
Vladimir Golovnev (Glassez)
80ca7796ca Fix torrent state calculation 2020-10-27 17:41:40 +03:00
jagannatharjun
02f19bfbee Use ProgressbarDelegate for drawing progressbar in PropListDelegate
Also directly provide display data from model rather then generating it in delegate
2020-10-27 11:58:17 +05:30
jagannatharjun
49d5591f48 Use ProgressBarDelegate for drawing progressbar in TransferListView 2020-10-27 11:58:17 +05:30
jagannatharjun
816bc45707 Implement ProgressBarDelegate 2020-10-27 11:58:17 +05:30
Mike Tzou
73e9dce143 Merge pull request #13637 from Chocobo1/libt
Improve compatibility with libtorrent 2.0
2020-10-27 01:33:08 +08:00
Vladimir Golovnev (Glassez)
9f0edde12b Don't resume "paused" torrents when checking by libtorrent 2020-10-26 11:08:22 +03:00
Mike Tzou
cf55b67cee Merge pull request #13646 from jagannatharjun/content-crash
Fix crash when clicked outside the table of torrent content view
2020-10-26 12:38:11 +08:00
Mike Tzou
9ca415c665 Merge pull request #13636 from FranciscoPombal/clarify_protocol
Clarify protocol choice label
2020-10-26 12:26:28 +08:00
Mike Tzou
af029e6c3f Merge pull request #13639 from FranciscoPombal/update_ci_actions
Update GitHub Actions CI actions versions
2020-10-26 12:26:07 +08:00
Mike Tzou
6d514c97f8 Merge pull request #13569 from brvphoenix/webui
Fix the issue that IPv6 address can't be banned
2020-10-26 12:15:54 +08:00
jagannatharjun
e812ac2c0b Fix crash when clicked outside the table of torrent content view
Closes #13645
2020-10-25 23:39:48 +05:30
Chocobo1
480832318c Add support for tracker scrape in libtorrent 2.0 2020-10-26 00:37:53 +08:00
Chocobo1
7a3e397949 Migrate away from deprecated functions in libtorrent 2.0 2020-10-26 00:37:53 +08:00
Chocobo1
c95e450b8d Improve compatibility with libtorrent 2.0
In libtorrent 2.0, the `connection_type` was changed to a flag type and
hence it cannot be used in a switch statement directly. Also our use of
`connection_type` is limited so that a single equality comparison
would cover all of our use cases.
2020-10-26 00:36:59 +08:00
FranciscoPombal
b63a34110e Update "GitHub Actions" CI actions versions 2020-10-25 11:53:48 +00:00
Vladimir Golovnev
0a2a71e83b Merge pull request #13625 from FranciscoPombal/expose_content_path
Expose contentPath in WebAPI torrents/info
2020-10-25 13:08:56 +03:00
FranciscoPombal
831bf71ce6 Clarify protocol choice label 2020-10-25 00:11:57 +01:00
Mike Tzou
172eda5471 Merge pull request #13620 from Chocobo1/qhash
Move qHash helper for libtorrent types to its own file
2020-10-24 12:34:26 +08:00
FranciscoPombal
aa899f0693 Expose contentPath in WebAPI torrents/info
Bump WebAPI version to 2.6.1
2020-10-23 17:49:28 +01:00
Vladimir Golovnev
82602b51bf Merge pull request #13614 from glassez/resumedata
Prevent resume data to be saved for removed torrent
2020-10-23 10:13:51 +03:00
Chocobo1
3971a12f0e Remove redundant checking before remove 2020-10-23 12:58:57 +08:00
Chocobo1
70c4eb44fd Fix class name 2020-10-23 12:58:11 +08:00
Mike Tzou
9ce54162c2 Merge pull request #13600 from thalieht/webuioption
Fix toggling advanced option in WebUI
2020-10-23 12:11:27 +08:00
Vladimir Golovnev (Glassez)
92c6fc04a8 Prevent resume data to be saved for removed torrent 2020-10-22 20:16:52 +03:00
Mike Tzou
46ebf9b7e5 Merge pull request #13587 from Chocobo1/webapi
Avoid settings being reset via WebAPI
2020-10-22 13:33:29 +08:00
brvphoenix
799ad0feff Fix the issue that IPv6 address can't be banned
The ban action doesn't depend on ipfilter.
2020-10-21 18:21:07 -07:00
thalieht
1a56385cf9 Fix toggling advanced option in WebUI
option "Disallow connection to peers on privileged ports"
2020-10-22 01:34:11 +03:00
Chocobo1
71827fe4e6 Move qHash helper for libtorrent types to its own file 2020-10-22 03:12:48 +08:00
Chocobo1
8568f7a0fb Avoid settings being reset via WebAPI
Closes #13585.
2020-10-21 18:02:01 +08:00
Mike Tzou
39c61327b5 Merge pull request #13567 from Chocobo1/typo
Fix typos
2020-10-21 11:04:17 +08:00
Mike Tzou
81d2130b06 Merge pull request #13540 from bovirus/patch-1
NSIS: Update Italian translation
2020-10-20 20:00:02 +08:00
bovirus
536f5ff091 NSIS: Update Italian translation 2020-10-20 19:44:56 +08:00
Chocobo1
7e258bfe38 Fix typos 2020-10-20 18:56:30 +08:00
Mike Tzou
66f0e6a8f2 Merge pull request #13563 from adem4ik/patch-2
Fix typo in connection.cpp
2020-10-20 18:55:05 +08:00
Andrei Stepanov
04306a544f Fix typo in connection.cpp
limiation -> limitation
2020-10-20 11:10:51 +04:00
Mike Tzou
e4fe3bfe35 Merge pull request #13534 from NotTsunami/patch-1
CMake: Bump version number
2020-10-20 12:47:28 +08:00
Mike Tzou
b636bf4b2a Merge pull request #13537 from SeproDE/betterSanetizeRSS
Place WebUI RSS description in sandboxed iframe
2020-10-20 12:46:49 +08:00
Vladimir Golovnev
05c7796909 Merge pull request #13414 from NotTsunami/travis
Disallow CMake build failures on Travis
2020-10-19 09:30:03 +03:00
NotTsunami
e2b3463c05 CMake: Bump version number 2020-10-19 01:49:46 -04:00
Sepro
6c016cf443 Place WebUI RSS description in sandboxed iframe 2020-10-19 06:39:19 +02:00
sledgehammer999
fc48168153 Close parentheses in Changelog entry 2020-10-19 01:51:13 +03:00
sledgehammer999
096e6f2f80 Bump to 4.4.0alpha1 2020-10-19 01:22:01 +03:00
sledgehammer999
4a00bfcc55 Update Changelog 2020-10-18 22:44:32 +03:00
sledgehammer999
e757b4f8da Sync translations from Transifex and run lupdate 2020-10-18 21:18:33 +03:00
Mike Tzou
1c663adee7 Merge pull request #13465 from WillDaSilva/mid-click-close-tabs
Enable the use of middle-click to close tabs
2020-10-18 12:24:03 +08:00
Vladimir Golovnev
720c1c8216 Merge pull request #13395 from glassez/disk_io
Implement disk IO thread wrapper
2020-10-17 12:53:25 +03:00
Will Da Silva
6e0cf96726 Make middle-click close search tabs 2020-10-17 00:21:10 -04:00
Mike Tzou
152afa71fa Merge pull request #11644 from lbilli/nodata
Don't create 'data' subdirectory on Linux
2020-10-16 09:40:06 +08:00
lbilli
1c7bfcac46 Don't create 'data' subdirectory on Linux 2020-10-15 14:02:28 -04:00
Mike Tzou
5be7b256e9 Merge pull request #13499 from bershanskiy/hashing_threads
Add option for hashing_threads setting
2020-10-14 11:40:01 +08:00
Mike Tzou
84a96505e1 Merge pull request #13500 from Chocobo1/flags
Run svgcleaner on the country flags
2020-10-13 12:15:12 +08:00
Anton Bershanskiy
b4bfdd6f7a Add option for hashing_threads, use 10 asyc IO threads
Add option for setting lt::settings_pack::hashing_threads
introduced by libtorrent 2.0. It has no effect for earlier
libtorrent versions.
Use 10 async IO threads, as per #11461.
Closes #11461.
2020-10-13 00:58:13 +03:00
Mike Tzou
8276b6f468 Merge pull request #13495 from thalieht/peerlistZero
Fix regression of not hiding zero values in the peer list
2020-10-13 03:27:38 +08:00
Chocobo1
63ab911584 Run svgcleaner on the country flags
As a side effect, svgcleaner also fixes the corrupt flags reported in #13497.
Closes #13497.
2020-10-12 10:58:58 +08:00
Chocobo1
da5969d0a6 Sync country flags with upstream 2020-10-12 10:58:11 +08:00
Mike Tzou
726704a7ed Merge pull request #13487 from Chocobo1/creator
Add support for creating v2 torrents
2020-10-12 10:05:50 +08:00
thalieht
9d25405144 Check cheaper conditional first 2020-10-11 20:22:27 +03:00
thalieht
95b452a3e9 Fix regression of not hiding zero values in the peer list
Fixup 13aab6e04d
2020-10-11 20:17:01 +03:00
Chocobo1
19d77b0881 Add support for creating v2 torrents 2020-10-10 23:21:26 +08:00
Mike Tzou
4fa8862398 Merge pull request #13484 from Chocobo1/webui
Fix image not loading under proxy
2020-10-09 16:26:50 +08:00
Vladimir Golovnev
bad5e1f887 Merge pull request #12086 from FranciscoPombal/code-cleanup
Clean ups
2020-10-09 07:13:18 +03:00
Vladimir Golovnev
cf93fe124d Merge pull request #13439 from FranciscoPombal/clazy_fixes_2
Clazy fixes
2020-10-09 07:10:25 +03:00
Vladimir Golovnev
a95c70344d Merge pull request #13480 from FranciscoPombal/fix-ci
Fix packages installation on Ubuntu CI
2020-10-09 07:09:29 +03:00
Chocobo1
611f2de11f Fix wrong capitalization 2020-10-09 00:40:29 +08:00
Chocobo1
744b89c878 Fix image not loading under proxy
Closes #13483.
2020-10-09 00:37:32 +08:00
FranciscoPombal
7d01b6a29c Fix packages installation on Ubuntu CI 2020-10-08 13:55:58 +01:00
FranciscoPombal
2c10b3936b Change some types (uint -> int) in RSS subsystem 2020-10-07 23:26:13 +01:00
FranciscoPombal
deffdbe881 Change some types (uint -> int) in Session class 2020-10-07 23:26:13 +01:00
FranciscoPombal
87864531ab Clean up in Session class 2020-10-07 23:26:13 +01:00
FranciscoPombal
f502f60f7c Avoid unessary QString allocation 2020-10-07 15:34:26 +01:00
FranciscoPombal
776c1f1546 Always use multi-arg arg() overload when possible
Fixed clazy-qstring-arg Clazy warnings
2020-10-07 15:34:26 +01:00
Mike Tzou
bfef403411 Merge pull request #13463 from jagannatharjun/cmake-version
Fix CMake generated qBittorrent's version string
2020-10-05 11:36:14 +08:00
Mike Tzou
8df53e9370 Merge pull request #13468 from jagannatharjun/graph-full
Correctly fill whole width of graph
2020-10-05 11:09:19 +08:00
jagannatharjun
e2c0f00adb Correctly fill whole width of graph 2020-10-03 12:41:18 +05:30
jagannatharjun
8696988d53 Fix CMake generated qBittorrent's version string
${qBittorrent_VERSION} will expand to a string that ends with build number but version string from qMake doesn't end with build number
2020-10-02 23:57:03 +05:30
NotTsunami
6ebc19fccb Remove branches block from Travis config
This block has no significance because these branches are stale and
builds will not be triggered on these branches.
2020-09-28 22:50:15 -04:00
NotTsunami
0fa40c9ac3 Disallow CMake build failures on Travis
Our CMake configuration has matured over time, thus require CMake
builds to require successful builds on Travis CI.
2020-09-28 22:50:15 -04:00
Mike Tzou
39e8eb0427 Merge pull request #13432 from FranciscoPombal/status_badge
Add workflow status badge for GitHub Actions CI
2020-09-29 10:34:06 +08:00
FranciscoPombal
e3d9fe7e4d Add workflow status badge for GitHub Actions CI 2020-09-28 09:43:19 +01:00
Vladimir Golovnev
eec6637cfa Merge pull request #13456 from glassez/cmake
Fix CMake project
2020-09-28 11:33:59 +03:00
Vladimir Golovnev (Glassez)
3d0543c444 Fix static build with Qt < 5.14 2020-09-28 07:10:49 +03:00
Mike Tzou
79b4fb70f5 Merge pull request #13445 from jagannatharjun/pieces-green
Use toned green color for downloading pieces in Pieces bar
2020-09-28 11:37:03 +08:00
Vladimir Golovnev (Glassez)
aef8f4f465 Set target property before it is used 2020-09-27 22:17:50 +03:00
Mike Tzou
0284721ba2 Merge pull request #13450 from jagannatharjun/cmake-fix
By default use dynamic runtime with MSVC on CMake
2020-09-27 11:28:20 +08:00
jagannatharjun
ebf9a60c69 By default use dynamic runtime with MSVC on CMake
This was default before CMake overhaul, and it doesn't
make sense to use static builds with daily developement.
Also static Qt builds are not readily available on Windows.
2020-09-27 00:03:02 +05:30
jagannatharjun
fbe484a615 Use toned green color for downloading pieces in Pieces bar 2020-09-26 14:53:46 +05:30
Mike Tzou
2bfaa8229a Merge pull request #13431 from Chocobo1/namespace
Fix code defects
2020-09-26 11:20:10 +08:00
Mike Tzou
f62639b70f Merge pull request #13288 from FranciscoPombal/gha-ci
Add GitHub Actions CI workflow
2020-09-25 19:57:27 +08:00
Mike Tzou
6de2435041 Merge pull request #13429 from Chocobo1/travisCI
Fix building in macOS on TravisCI
2020-09-25 19:29:43 +08:00
Chocobo1
ef9765cea1 Remove meaningless const on pointers
This only apply to signals.
2020-09-25 15:13:14 +08:00
Chocobo1
2e37ea608c Migrate away from obsoleted functions 2020-09-25 15:12:40 +08:00
Chocobo1
ac3ab2432a Remove redundant namespace prefix 2020-09-25 15:10:20 +08:00
Chocobo1
f487d32594 Fix initialization order 2020-09-25 12:25:09 +08:00
Chocobo1
e4ffe7aa32 Fix building in macOS on TravisCI 2020-09-25 12:25:09 +08:00
Mike Tzou
1a3091a980 Merge pull request #13419 from silverqx/patch-1
Fix fully-qualified-moc-types clazy warning
2020-09-22 22:34:52 +08:00
Silver Zachara
97df5667e7 Use fully-qualified type names
Fixed fully-qualified-moc-types clazy warnings
2020-09-21 18:30:02 +02:00
FranciscoPombal
eed50c4893 Add GitHub Actions CI workflow
- Ubuntu 18.04/20.04, GUI ON/OFF
- Windows 2019
- macOS 10.15 GUI ON/OFF
2020-09-21 17:13:33 +01:00
Mike Tzou
1b2fc63089 Merge pull request #13412 from Chocobo1/cmake
CMake improvements
2020-09-22 00:02:33 +08:00
Mike Tzou
c3b5668a07 Merge pull request #12577 from NotTsunami/peer
Allow users to configure no_connect_privileged_ports
2020-09-22 00:02:20 +08:00
Chocobo1
da2a26fa01 Use silent flag when invoking lrelease via cmake 2020-09-21 12:16:47 +08:00
Chocobo1
a675b9305b Add compile flags from conf.pri.windows file to cmake 2020-09-21 12:16:47 +08:00
NotTsunami
2eb3ff7f06 Allow users to configure no_connect_privileged_ports
Don't hardcode lt::settings_pack::no_connect_privileged_ports. We
support the peer alert for it already, so connections blocked by this
setting should be logged.
2020-09-20 22:46:28 -04:00
Vladimir Golovnev
04d345251e Merge pull request #13400 from glassez/sequential
Improve sequentialDownload/firstLastPiecePriority handling
2020-09-20 08:00:33 +03:00
Mike Tzou
63ff5e348c Merge pull request #13399 from Chocobo1/cmake
Improvements to cmake build system
2020-09-19 22:12:42 +08:00
Vladimir Golovnev
1333fc81f8 Merge pull request #13402 from FranciscoPombal/cmake_fix
CMake: fix linking against OpenSSL
2020-09-19 07:16:41 +03:00
Vladimir Golovnev
e41ae1457e Merge pull request #13390 from NotTsunami/ban
Prevent peers from being lost when banning
2020-09-19 07:14:50 +03:00
NotTsunami
8d64d38914 Prevent peers from being lost when banning
The selected rows aren't queried until after a user confirms they
would like to ban the selected peers. If a peer disconnects before
the confirmation is pressed, they will not be included in the
selection. This commit makes sure the selected rows are stored before
a selection is made to prevent the loss of any peers.

Closes #13385.
2020-09-18 15:33:17 -04:00
FranciscoPombal
2534909d3b CMake: fix linking against OpenSSL
This should have been there from the start,
but for some reason, the lack of it didn't cause any issued
for many systems.
2020-09-18 17:53:14 +01:00
Vladimir Golovnev (Glassez)
39d32063c1 Implement disk IO thread wrapper 2020-09-18 15:56:29 +03:00
Vladimir Golovnev (Glassez)
ff36356be0 Improve sequentialDownload/firstLastPiecePriority handling
Always store firstLastPiecePriority in resume data.
Don't recalculate firstLastPiecePriority value each time it is accessed.
Always store sequentialDownload in resume data as native libtorrent field.
2020-09-18 13:33:55 +03:00
Chocobo1
0539c816ae Set compression rate for rcc targets
This follows our current setting in src.pro.
2020-09-18 14:49:17 +08:00
Chocobo1
6880e03145 Remove compile requirement for boost::system
boost::system is not a dependency for our project.
2020-09-18 14:48:54 +08:00
Chocobo1
7fed0391ba Don't impose unnecessary compile options on users
This is unexpected for users that take single job compilation as the
default (which is always the case since forever). Users can change the
default if they wish to use multicore for compilation.
2020-09-18 13:58:45 +08:00
Mike Tzou
70d9ea8034 Merge pull request #13388 from Chocobo1/webui
Add missing semicolons in WebUI
2020-09-18 11:56:35 +08:00
Vladimir Golovnev
4099de73ed Merge pull request #13327 from FranciscoPombal/cmake_no_genexp
CMake: overhaul and improve scripts
2020-09-18 05:36:37 +03:00
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
Chocobo1
ccdc3b201b Add missing semicolons
Also trim trailing whitespaces along the way.
2020-09-17 12:11:13 +08:00
Mike Tzou
79bc4f40e8 Merge pull request #13353 from FranciscoPombal/logger_fix
Fix peer blocked message
2020-09-17 11:32:30 +08:00
FranciscoPombal
e0c62827a8 Fix peer blocked message 2020-09-16 16:59:51 +01:00
Mike Tzou
ff82063520 Merge pull request #13366 from qbittorrent/linuxtrayhtml
Don't use HTML in Linux tray tooltip
2020-09-15 12:31:49 +08:00
Mike Tzou
49e55d5a5d Merge pull request #13268 from ngosang/feature/python35-
Update minimum Python version to 3.5.0
2020-09-14 12:03:20 +08:00
Mike Tzou
1e01147c31 Merge pull request #13369 from Chocobo1/msg
Avoid using libtorrent internal functions
2020-09-14 11:40:37 +08:00
thalieht
ede1bd0657 Don't use HTML in Linux tray tooltip
HTML is no longer allowed in Linux tray tooltip's title, only in its subtext.

Closes #13030
2020-09-13 12:43:55 +03:00
Chocobo1
8cfac795c6 Avoid using libtorrent internal functions
`char const* socket_type_name(socket_type_t);` is decided to be not
exported and thus it is internal:
https://github.com/arvidn/libtorrent/pull/4859/files#r452925563
2020-09-13 12:22:31 +08:00
Mike Tzou
8d57a6527b Merge pull request #13355 from Chocobo1/allocate
Enable faster disk space allocation by default
2020-09-12 23:39:49 +08:00
Mike Tzou
2d1855dc05 Merge pull request #13354 from Chocobo1/libt2
Disable deprecated settings in libtorrent 2.0
2020-09-12 11:02:12 +08:00
Chocobo1
01603c1f62 Enable faster disk space allocation by default
In libtorrent > 2.0, the setting is turned off by default, now we just
re-enable it to preserve the behavior as in earlier versions.
2020-09-10 22:12:35 +08:00
Chocobo1
79eb9a4990 Move signal connections to appropriate place 2020-09-10 21:17:46 +08:00
Chocobo1
0bf76723f1 Move enums into anonymous namespace 2020-09-10 21:17:46 +08:00
Chocobo1
2fd69a21b0 Initialize session with session_params class
The old way of initialization is deprecated in libtorrent 2.0.
2020-09-09 16:16:08 +08:00
Chocobo1
554eab50bb Disable deprecated libtorrent settings 2020-09-09 16:16:08 +08:00
Vladimir Golovnev
defdd5121c Merge pull request #13340 from glassez/fix-magnet
Improve adding torrent using Magnet URI
2020-09-09 10:06:39 +03:00
Mike Tzou
c967bf31ff Merge pull request #13336 from Chocobo1/webui
Minor WebUI improvements
2020-09-09 11:48:55 +08:00
Mike Tzou
6e971c47e7 Merge pull request #13319 from an0n666/tracker-queue
Expose libtorrent max_concurrent_http_announces in advanced settings
2020-09-09 11:48:25 +08:00
Vladimir Golovnev (Glassez)
5727fcb001 Store and use full magnet URI instead of hash 2020-09-08 14:57:45 +03:00
Vladimir Golovnev (Glassez)
20206ec92a Improve adding torrent using Magnet URI
Closes #13249.
2020-09-08 14:56:38 +03:00
Chocobo1
5677ce1cc9 Use proper uppercase "UTF-8" in charset field 2020-09-08 14:31:19 +08:00
Chocobo1
2f1016494b Specify UTF-8 charset when forming data from plain text
This suppresses a browser warning about unspecified character encoding
of an HTTP response.
2020-09-08 14:30:55 +08:00
Mike Tzou
8954b21784 Merge pull request #13337 from Chocobo1/libt2
Improve compatibility with libt 2.0
2020-09-08 14:23:47 +08:00
an0n666
73b39a8dec Expose libtorrent max_concurrent_http_announces in advanced settings 2020-09-08 06:05:45 +06:00
Chocobo1
79bb8227d0 Migrate away from deprecated address::to_string(error_code)
The other overload require users to handle exceptions themselves.
2020-09-07 14:48:13 +08:00
Chocobo1
25a47dadeb Migrate away from deprecated address::from_string() 2020-09-07 14:27:18 +08:00
Chocobo1
2a2ae2a566 Add helper function to convert to string from lt::socket_type_t type 2020-09-07 13:48:57 +08:00
Chocobo1
2c01ac4b75 Improve handling of empty iframe src
"about:blank" is suggested in https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe
2020-09-07 12:14:11 +08:00
Mike Tzou
84be5ed664 Merge pull request #13328 from FranciscoPombal/fix_geodb
Fix GeoDB download in systems with non-C locales
2020-09-07 10:23:55 +08:00
FranciscoPombal
9b43d260a7 Fix GeoDB download in systems with non-C locales
Closes #13318.
2020-09-05 23:21:05 +01:00
Mike Tzou
1c87073990 Merge pull request #13305 from Chocobo1/openAction
Fix "Open containing folder" opened the wrong path for folder item
2020-09-01 09:38:18 +08:00
Chocobo1
ef6dfa9b54 Fix "Open containing folder" opened the wrong path for folder item
Previously that action is the same as "Open" action which is wrong
behavior, it should be opening the parent folder instead. The wrong
behavior is observed on nautilus 3.36.3 and nemo 4.6.5.
2020-08-30 20:38:35 +08:00
Mike Tzou
3c6e6ae872 Merge pull request #13294 from Chocobo1/openFile
Fix open path won't work correctly
2020-08-30 11:28:46 +08:00
Mike Tzou
cae5c5cea0 Merge pull request #13257 from Sophist-UK/patch-1
Expose LibTorrent peer_turnover settings
2020-08-30 11:28:28 +08:00
Mike Tzou
ffb6189108 Merge pull request #13285 from LoopsGod/command
Add CTRL + I keyboard shortcut to open statistics (command + I on Mac)
2020-08-30 11:27:03 +08:00
Chocobo1
eb1a3e2b29 Fix open path won't work correctly
Previously, if double click on the Size number in torrent content tab
the path would be an incorrect value and as such open path functionality
won't work, this commit fixes it.
2020-08-29 19:59:55 +08:00
Chocobo1
307ca61c86 Code clean up 2020-08-29 19:56:05 +08:00
LoopsGod
7efee615ad Add CTRL + I shortcut to actionStatistics
Mapped the CTRL + I shortcut to open statistics in GUI.
2020-08-26 09:57:44 +02:00
Mike Tzou
4539c679d9 Merge pull request #13256 from jagannatharjun/pieces-style
Use palette colors in pieces bars
2020-08-23 11:26:48 +08:00
jagannatharjun
d73757bf6e Use palette colors in pieces bars 2020-08-22 14:46:37 +05:30
Mike Tzou
e86cef449b Merge pull request #13269 from Chocobo1/webui
Fix seeding time checkbox placement in WebUI
2020-08-20 21:53:51 +08:00
Sophist
4c37c229d9 Expose LibTorrent peer_turnover settings
This PR exposes the LibTorrent Peer Turnover Settings in qBT Advanced Settings in order to allow users to adjust how frequently slow and uninteresting connections are closed to allow potentially better / faster connections to be made.

The default settings are to turnover peers when the number of connections is at least 90% of allowed global or per torrent connections, and to disconnect the least attractive 4% of these connections every 5 minutes.

See https://www.libtorrent.org/reference-Settings.html#peer_turnover
2020-08-19 20:11:58 +01:00
Chocobo1
8869dc543f Fix seeding time checkbox placement in WebUI 2020-08-19 15:55:16 +08:00
Chocobo1
ed2756b885 Convert to the proper type 2020-08-19 15:55:16 +08:00
Chocobo1
f7f0a27d76 Clean up coding style 2020-08-19 15:55:06 +08:00
Chocobo1
b2f951a269 Remove duplicate code 2020-08-19 15:12:55 +08:00
ngosang
71be4f03be Update minimum Python version to 3.5.0 2020-08-18 20:56:39 +02:00
Mike Tzou
207337682c Merge pull request #13265 from Chocobo1/pr_13259
Add a scroll area to torrent creator dialog
2020-08-18 13:10:40 +08:00
Ernesto Castellotti
5c4dfbec39 Add a scroll area to torrent creator dialog
As to prevent the dialog from going out-of-screen on a small monitor.
2020-08-17 20:00:43 +08:00
Mike Tzou
6416c224e3 Merge pull request #13258 from SeproDE/webRssRelativePath
Change api requests in RSS WebUI to relative paths
2020-08-17 07:40:00 +08:00
Sepro
e07c7d57d2 Change api requests in RSS WebUI to relative paths 2020-08-16 06:40:15 +02:00
Mike Tzou
eb32bdab34 Merge pull request #13252 from jagannatharjun/fix-rss-style
Fix incorrect foreground for read articles with custom theme
2020-08-16 12:04:47 +08:00
jagannatharjun
01849297ef Fix incorrect foreground for read articles with custom theme 2020-08-15 01:04:05 +05:30
Vladimir Golovnev
e1d097a92d Merge pull request #13234 from glassez/load-torrent
Improve torrent loading code
2020-08-13 18:58:36 +03:00
Mike Tzou
91b3ec8380 Merge pull request #13246 from jagannatharjun/rss-config
Allow changing RSS article list colors from custom UI theme
2020-08-12 12:34:54 +08:00
jagannatharjun
a63ca5f0c4 Allow changing RSS article list colors from custom UI theme
Use ArticleListWidget own palette to obtain default colors
2020-08-11 19:03:49 +05:30
Vladimir Golovnev (Glassez)
b77568839d Remove legacy/unused torrent property 2020-08-09 12:11:13 +03:00
Vladimir Golovnev (Glassez)
dc3d23c045 Improve torrent loading code 2020-08-09 12:11:07 +03:00
Vladimir Golovnev (Glassez)
eb99bfe20f Remove deprecated and unused code 2020-08-05 08:27:14 +03:00
Mike Tzou
4d1c5a8aea Merge pull request #13226 from jagannatharjun/rss-style
Use palette colors in RSS feeds
2020-08-04 10:47:05 +08:00
Mike Tzou
3a61042e40 Merge pull request #13206 from an0n666/revert-seed-mode-patch
Read piece for torrents added with skip hash only for older libtorrent
2020-08-03 19:56:37 +08:00
jagannatharjun
f1a07d6c43 Use palette colors in RSS feeds 2020-08-03 12:12:18 +05:30
Mike Tzou
8ff4374325 Merge pull request #13220 from jagannatharjun/fix-style
Fix style
2020-08-03 10:51:50 +08:00
an0n666
dc211f69ac Read piece for torrents added with skip hash only for older libtorrent 2020-08-02 16:33:55 +06:00
jagannatharjun
5b4a940842 Load custom theme before initializing main window
Improves debug build startup time with custom themes
2020-08-02 14:02:18 +05:30
jagannatharjun
b323c4e6be Set stylesheet of target widget rather then defining global stylesheet 2020-08-01 01:37:08 +05:30
Mike Tzou
fd200ac31d Merge pull request #13214 from Chocobo1/edit
Disable edit action
2020-07-31 11:29:44 +08:00
Chocobo1
b092fc9abb Disable edit action 2020-07-30 14:31:39 +08:00
Mike Tzou
a2a5c28c9f Merge pull request #13188 from jagannatharjun/fix-speed
Fix impossible speed in graph
2020-07-30 11:20:03 +08:00
jagannatharjun
f1edda2c81 Only enqueue session refresh request once previous request is completed
Fixes impossible speed in graph
2020-07-29 10:00:56 +05:30
Vladimir Golovnev
3a0ec8b283 Merge pull request #13193 from glassez/notify-move-storage
Notify user when torrent moving finished
2020-07-27 15:01:48 +03: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
Mike Tzou
30bf14c85f Merge pull request #13157 from jagannatharjun/peer
Use default delegate for PeerListWidget
2020-07-26 20:20:16 +08:00
Vladimir Golovnev (Glassez)
bac7fbc68e Notify user when torrent moving finished 2020-07-26 14:31:58 +03: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
2a638d16e0 Merge pull request #13175 from glassez/move-status
Update torrent status on move enqueued
2020-07-23 09:20:47 +03:00
Vladimir Golovnev (Glassez)
c3104e0210 Update torrent status on move enqueued 2020-07-22 15:22:29 +03:00
Vladimir Golovnev
dc7267b600 Merge pull request #13168 from glassez/save-checking
Always allow to save resume data in checking state
2020-07-22 10:14:55 +03:00
Mike Tzou
0defdacbfd Merge pull request #13153 from jagannatharjun/styledelegate-content
Use QStyledItemDelegate for content views
2020-07-22 10:57:42 +08:00
Vladimir Golovnev (Glassez)
d77c6321d3 Always allow to save resume data in checking state 2020-07-21 14:26:31 +03:00
Vladimir Golovnev (Glassez)
f35dbdfb8b Fix crash on exit when compiled using MinGW 2020-07-21 13:56:07 +03:00
Vladimir Golovnev
23eb117a05 Merge pull request #13151 from glassez/move-storage
Improve "move torrent storage" handling
2020-07-20 21:27:27 +03:00
Mike Tzou
9cf2321f02 Merge pull request #13158 from jagannatharjun/scanfolder
Use QStyledItemDelegate as base for ScanFoldersDelegate
2020-07-20 12:38:37 +08:00
Vladimir Golovnev (Glassez)
cdc2b8d79b Improve "move torrent storage" handling 2020-07-19 15:04:42 +03:00
jagannatharjun
8dd92fe612 Use QStyledItemDelegate as base for ScanFoldersDelegate 2020-07-19 00:54:12 +05:30
jagannatharjun
4733cb59e4 Use QStyledItemDelegate for content views 2020-07-18 13:30:26 +05:30
Mike Tzou
8eecfb1bee Merge pull request #13145 from jagannatharjun/cmake-speed
CMake improvements
2020-07-18 12:19:40 +08:00
jagannatharjun
d355491b85 Use default warning level with MSVC in CMake
Previously used warning level 4 creates a lot of noise that largely come from Qt headers
2020-07-17 14:41:48 +05:30
jagannatharjun
c7da78ff1d Fix invalid comparison for Boost version in CMake
This reduces compile time more then half when compiled against Boost
version greater than 1.60
2020-07-17 14:00:39 +05:30
Vladimir Golovnev
3cf8626317 Merge pull request #13110 from FranciscoPombal/countries-resolution
Remove DISABLE_COUNTRIES_RESOLUTION define
2020-07-09 08:30:12 +03:00
Vladimir Golovnev
fd74e83dd1 Merge pull request #13109 from FranciscoPombal/fix-encoding
Change Windows resource file encoding to UTF-8
2020-07-08 16:05:14 +03:00
FranciscoPombal
8f8f7ebd15 Remove DISABLE_COUNTRIES_RESOLUTION define 2020-07-08 01:07:50 +01:00
FranciscoPombal
b7dc1ef48d Change Windows resource file encoding to UTF-8 2020-07-06 11:41:47 +01:00
Mike Tzou
83f1028ff7 Merge pull request #13099 from jagannatharjun/fix-log
Use delegate provided rect for textRect in LogItemDelegate
2020-07-05 10:51:35 +08:00
Mike Tzou
291977a0e5 Merge pull request #13098 from jagannatharjun/fix-transfer-progress
Use global style options for drawing progress in TransferList
2020-07-05 10:51:00 +08:00
jagannatharjun
952dc26514 Use delegate provided rect for textRect in LogItemDelegate
Previously we get textRect from QStyle but on some OS this returns invalid rect
2020-07-04 15:49:21 +05:30
jagannatharjun
332dd027af Use global style options for drawing progress in TransferList 2020-07-04 10:36:54 +05:30
Mike Tzou
778f1f4b6f Merge pull request #13097 from brvphoenix/fix-webui-api
WebUI: fix the url for banPeers method
2020-07-04 12:04:10 +08:00
brvphoenix
4d9c6b9f02 WebUI: fix the url for banPeers method 2020-07-03 01:17:06 -07:00
Mike Tzou
ca8654d380 Merge pull request #13068 from Chocobo1/libt
Bump requirement to libtorrent 1.2
2020-06-27 12:52:13 +08:00
Chocobo1
8ebb6dc559 Initialize variable at better place 2020-06-26 17:17:29 +08:00
Chocobo1
40e432b127 Bump requirement to libtorrent 1.2
Closes #12258.
2020-06-26 17:17:29 +08:00
Vladimir Golovnev
06e1b07274 Merge pull request #13042 from FranciscoPombal/fix_request_parser
Fix truncation when parsing HTTP request query
2020-06-24 11:15:54 +03:00
Mike Tzou
929dc2e2b3 Merge pull request #13055 from brvphoenix/fix-cross-compile
Improve qmake configuration file for cross compilation
2020-06-23 18:47:26 +08:00
FranciscoPombal
a1809a43f8 Add QT_NO_CAST_FROM_BYTEARRAY to compile definitions
Prevents bugs like #13029, even if the ternary expression operands
have different types.
2020-06-23 11:45:38 +01:00
FranciscoPombal
0fa7fca31e Fix truncation when parsing HTTP request query
Closes #13029.

Fixes an issue with truncation of a QByteArray at the first '\0' byte
when parsing HTTP request query strings.

Previously, the operands of the ternary expression were of
different types. Most likely this was leading to a conversion
of the result to some kind of '\0'-terminated string type somewhere
along the way, in turn causing its truncation at the first '\0' byte
once converted back to QByteArray.

For some reason this bug was only present on Windows (MSVC).
2020-06-23 11:45:30 +01:00
brvphoenix
05bd0e5570 Improve qmake configuration file for cross compilation 2020-06-22 23:21:29 -07:00
Vladimir Golovnev
602e6b5263 Merge pull request #13040 from glassez/fix-rss
Fix RSS article is not marked as "read" when torrent is downloaded
2020-06-20 05:49:09 +03:00
Vladimir Golovnev (Glassez)
b4f65ca080 Don't modify source URL when wait for download status 2020-06-19 12:16:31 +03:00
Vladimir Golovnev (Glassez)
1e86c76e8a Emit signal when redirected to Magnet 2020-06-19 12:15:15 +03:00
Vladimir Golovnev
9dfeeb9e81 Merge pull request #12994 from glassez/custom-storage
Find complete files when moving torrent storage
2020-06-14 10:19:46 +03:00
Mike Tzou
59f365b343 Merge pull request #13006 from SeproDE/webui-rss-fixes
Fix issues regarding WebUI RSS implementation
2020-06-14 12:17:12 +08:00
Sepro
d1c084e3b0 Remove redundant empty value tags on inputs in WebUI 2020-06-13 00:40:47 +02:00
Sepro
04c8c4e846 Add newRule and removeRule buttons to RSS downloader WebUI
New buttons for the basic actions instead of only relying on the context menu.
2020-06-13 00:40:42 +02:00
Sepro
23a2675665 Fix input overlap off RSS downloader WebUI
The text input's in the RSS downloader window where not correctly inside their bounding box.
2020-06-12 13:23:53 +02:00
Sepro
65636e644f Remove maxlength limit from RSS feeds in WebUI
URL's and feed names including paths could be longer then 100 characters, so the limit was removed.
2020-06-12 13:20:50 +02:00
Vladimir Golovnev (Glassez)
b28436c871 Find complete files when moving torrent storage 2020-06-12 12:58:17 +03:00
Vladimir Golovnev
e7622d2e9b Merge pull request #12820 from glassez/drop-unwanted
Drop ".unwanted folder" feature
2020-06-12 12:17:35 +03:00
Vladimir Golovnev (Glassez)
6a0a78f3f7 Drop ".unwanted folder" feature 2020-06-10 11:35:09 +03:00
Mike Tzou
17205802ec Merge pull request #12557 from SeproDE/webui-rss
Implemented RSS reader and auto downloader in reference WebUI
2020-06-09 14:34:56 +08:00
Mike Tzou
5ebe4e4c70 Merge pull request #12956 from arvidn/storage-include
Correct libtorrent header include in torrentcreatorthread.cpp
2020-06-07 20:17:59 +08:00
Mike Tzou
96f9a657f1 Merge pull request #12978 from arvidn/plugin-lt2-compat
support changes to plugin API in libtorrent-2.0
2020-06-07 11:39:08 +08:00
arvidn
d2cc01f65c Support changes to plugin API in libtorrent-2.0
libtorrent-2.0 introduced a type-safe alternative to void* (lt::client_data_t)
for passing user-data into plugins. qBT doesn't use any user data in its
plugins, but the signatures have changed nevertheless, and qBT need to update to
be compatible with libtorrent-2.0.
2020-06-06 10:58:07 +02:00
Mike Tzou
7668d7947a Merge pull request #12969 from Chocobo1/qt5
Don't use functions deprecated in Qt 5.15
2020-06-06 12:52:23 +08:00
arvidn
af05990bc9 Fix libtorrent include to a more precise header
torrentcreatorthread.cpp does not need to include libtorrent/storage.hpp, but
just needs libtorrent/file_storage.hpp. The former header is for implementing a
custom storage. Change include to libtorrent/file_storage.hpp
2020-06-05 23:48:08 +02:00
Chocobo1
a1ea7a111e Don't use deprecated QProcess::startDetached() overload 2020-06-04 20:20:50 +08:00
Chocobo1
15b2811fa5 Don't use deprecated QUrl::topLevelDomain() 2020-06-04 20:20:50 +08:00
Chocobo1
547982c741 Don't use deprecated QButtonGroup::buttonClicked() 2020-06-04 20:20:50 +08:00
Chocobo1
2fd4381398 Don't use QWheelEvent deprecated functions 2020-06-04 20:20:50 +08:00
Chocobo1
4971cb9a27 Don't use deprecated QAbstractSocket::error() 2020-06-04 20:20:50 +08:00
Chocobo1
9c330812cc Don't use deprecated QSet::iterator::operator+(int) 2020-06-04 20:20:50 +08:00
Chocobo1
c239568658 Don't use deprecated QTextStreamFunctions::flush()
Qt doc states: "If QTextStream operates on a string, this function does
nothing". So remove it.
2020-06-04 15:29:32 +08:00
Mike Tzou
4a98341038 Merge pull request #12964 from thalieht/webuiwatchdefault
Preselect "Default save path" in WebUI watched folders
2020-06-03 09:22:24 +08:00
Mike Tzou
820ffcd238 Merge pull request #12963 from shaneallgeier/patch-1
Fix typo in systemd service file
2020-06-03 02:00:53 +08:00
thalieht
7076fc29e0 Preselect "Default save path" in WebUI watched folders 2020-06-02 16:45:25 +03:00
Shane Allgeier
5ff1653c8c Fix typo in systemd service file 2020-06-01 16:37:17 -05:00
Mike Tzou
9aad574e1a Merge pull request #12949 from jagannatharjun/fix-big
Fix large strings not visible in log widget
2020-06-01 19:59:43 +08:00
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
Mike Tzou
6b6d2cab5b Merge pull request #12891 from jagannatharjun/cache-icons
Cache flag icons
2020-05-30 13:36:52 +08:00
Mike Tzou
f52fe121f8 Merge pull request #12941 from Chocobo1/flags
Sync flag icons with upstream
2020-05-30 12:36:49 +08:00
Mike Tzou
9d135441db Merge pull request #12942 from Chocobo1/cacheCountry
Cache country lookup result in PeerInfo class
2020-05-30 12:36:15 +08:00
jagannatharjun
bcf11cf1e8 Cache flag icons 2020-05-29 17:55:12 +05:30
Vladimir Golovnev
68d4dc34db Merge pull request #12944 from glassez/hotfix
Fix invalid assertion
2020-05-29 12:20:32 +03:00
Vladimir Golovnev (Glassez)
a6ad95278c Fix invalid assertion
Closes #12938.
2020-05-29 09:35:19 +03:00
Chocobo1
472dd96716 Cache country lookup result in PeerInfo class
The country lookup happens quite often when "Resolve peer countries"
option is enabled.
2020-05-29 13:49:52 +08:00
Chocobo1
5248a95055 Sync flag icons with upstream
Upstream commit: 5cf339a36cf64f65882702e1d40359d38485126c.
2020-05-29 13:29:23 +08:00
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
Mike Tzou
446d308bf0 Merge pull request #12916 from mr-cn/master
WebUI: Fix wrong file renaming selection range
2020-05-26 22:15:28 +08:00
MR
af6cae0e09 WebUI: Fix wrong file renaming selection range 2020-05-26 16:38:54 +08: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
Vladimir Golovnev (Glassez)
4a1e3de06d Find complete files when checking torrent 2020-05-25 20:31:59 +03:00
Vladimir Golovnev
b44816305f Merge pull request #12418 from FranciscoPombal/improve_win_conf_pri
Improve Windows qmake build configuration files
2020-05-25 14:23:13 +03:00
Mike Tzou
9aba0cbcf3 Merge pull request #12894 from Chocobo1/thememanager
Improvements to UIThemeManager
2020-05-25 12:16:39 +08:00
Mike Tzou
1c1c82ce4f Merge pull request #12893 from Chocobo1/icon
Move qbittorrent32.png to WebUI images folder
2020-05-25 12:16:10 +08: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
Chocobo1
f98d2cb01b Ditch svgo config file
svgcleaner is a better tool for this job.
2020-05-23 20:54:02 +08:00
Chocobo1
2319bdd23b Move qbittorrent32.png to WebUI images folder 2020-05-23 20:53:32 +08:00
Mike Tzou
35a3265657 Merge pull request #12861 from jagannatharjun/style-icons
Allow changing GUI icons from theme bundles
2020-05-23 20:31:09 +08:00
Sepro
2b3c92a4a8 WebUI: Add RSS functionality
Implemented RSS Reader and AutoDownloader in reference WebUI.
2020-05-22 14:21:45 +02: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
Vladimir Golovnev
a1faef0a3c Merge pull request #12874 from jagannatharjun/fix-compile
Fix compilation error with MSVC 16.6
2020-05-21 13:50:26 +03:00
Mike Tzou
de85b8b552 Merge pull request #12859 from Chocobo1/gif
Move WebUI icons to its own folder
2020-05-21 10:59:52 +08:00
jagannatharjun
971a21f306 Add missing header stdexcept in fspathedit
Fixes compilation error with MSVC 16.6
2020-05-20 23:25:19 +05:30
Mike Tzou
c85d2e547b Merge pull request #12835 from Piccirello/web-content-type
Specify Content-Type in Web API error responses
2020-05-20 14:05:20 +08:00
Thomas Piccirello
6e4f49fc57 Always specify Content-Type in Web API error responses 2020-05-19 01:08:06 -07:00
Chocobo1
e6f0c81355 Remove unused WebUI images 2020-05-19 15:09:44 +08:00
Chocobo1
02c25dbe2a Move WebUI icons to its own folder
After this change: "http://<server>/icons" will point to "src/icons"
folder and "http://<server>/images" points to the real "images" folder
in the relative path.
2020-05-19 14:58:49 +08:00
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
FranciscoPombal
c77f3ef8d3 Improve Windows qmake build configuration files 2020-05-18 18:21:29 +01:00
jagannatharjun
ab91d546e5 Move all icon resources to icon folder root 2020-05-18 20:30:51 +05:30
Mike Tzou
774c0276f0 Merge pull request #12847 from Chocobo1/deprecated
Don't use deprecated Qt function options
2020-05-18 11:41:11 +08:00
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
Chocobo1
7c8846fc53 Don't use deprecated QRegularExpression option
The following is the warning from compiler:
rss_item.cpp:70:79: warning: ‘QRegularExpression::OptimizeOnFirstUsageOption’ is deprecated: This option does not have any effect since Qt 5.12 [-Wdeprecated-declarations]
2020-05-16 21:05:15 +08:00
Vladimir Golovnev
306499f7a8 Merge pull request #12843 from glassez/fix-rename-rule
Fix renaming RSS autodownload rule
2020-05-15 21:40:23 +03:00
Vladimir Golovnev (Glassez)
1b5dd0aa2d Fix renaming RSS autodownload rule 2020-05-15 09:41:40 +03:00
Mike Tzou
5470ae8c1a Merge pull request #12837 from Piccirello/webui-textarea-enter
Fix Enter button behavior in web UI textarea
2020-05-14 22:11:31 +08:00
Mike Tzou
7f6279819d Merge pull request #12828 from thalieht/rootfolder
Disable "Keep top-level folder" checkbox if torrent doesn't have root folder
2020-05-14 22:10:39 +08:00
Tom Piccirello
ecc17018b7 Fix Enter button behavior in web UI textarea
Hitting the enter button inside the textarea would submit the form, rather than advancing to the next line.
2020-05-14 03:25:11 -07:00
thalieht
e2a8fe0dce Disable checkbox if torrent doesn't have root folder 2020-05-13 13:35:13 +03:00
Vladimir Golovnev
841536c9c5 Merge pull request #12805 from glassez/move-storage
Wait for storage to be moved when removing torrent
2020-05-12 07:34:45 +03:00
Mike Tzou
e015710ffd Merge pull request #12793 from Chocobo1/prebuilt_headers
Prebuild HTTP headers
2020-05-12 10:13:35 +08:00
Mike Tzou
1839e3d96a Merge pull request #12748 from Piccirello/webui_sidebar_trackers
Add Trackers section to Web UI sidebar
2020-05-12 10:13:06 +08:00
Chocobo1
be152f45c9 Define and use Http::HeaderMap type 2020-05-11 00:34:28 +08:00
Mike Tzou
e72fe83c36 Merge pull request #12750 from an0n666/nsis-install
NSIS: Change confusing un-installation question
2020-05-10 23:52:35 +08:00
Vladimir Golovnev (Glassez)
53fd0e1607 Wait for storage to be moved when removing torrent 2020-05-10 14:31:33 +03:00
an0n666
a87b72e0cb NSIS: Change the installers uninstallation question to clear confusion 2020-05-10 13:15:32 +06:00
Vladimir Golovnev
f0967be79d Merge pull request #12790 from FranciscoPombal/hotfix_include
Fix include
2020-05-10 08:19:45 +03:00
Chocobo1
d57b9be706 Rename function 2020-05-10 02:53:32 +08:00
Chocobo1
74a2168bc1 Define and use a proper HTTP header structure 2020-05-10 02:53:11 +08:00
Chocobo1
957d697aee Prebuild HTTP headers as much as possible
This avoids some branching when building a HTTP response.
2020-05-10 02:50:13 +08:00
FranciscoPombal
2192de5233 Fix include 2020-05-09 17:36:37 +01:00
Vladimir Golovnev (Glassez)
378a863611 Remove unwanted files after torrent removed 2020-05-09 19:19:13 +03:00
Vladimir Golovnev (Glassez)
e49c554044 Improve "move torrent storage" queue 2020-05-09 19:19:13 +03:00
Vladimir Golovnev (Glassez)
b6bf09fc0f Fix calculation of torrent current state
Some actions can be performed despite of other states
(e.g. "Errored" torrent can check its files currently)
so the states that relate to such actions should override
other (so-called "static") states.
2020-05-09 19:19:13 +03:00
Vladimir Golovnev
18b2511238 Merge pull request #12779 from glassez/cleanup
Clean up source files layout
2020-05-09 06:52:19 +03: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
Thomas Piccirello
ad4d8d28ec Add Trackers section to Web UI sidebar
Closes #7601.
2020-05-07 19:10:55 -07: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
Vladimir Golovnev
fb7774705d Merge pull request #12756 from jagannatharjun/log-colors
Allow changing log colors from config.json
2020-05-06 06:49:28 +03:00
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
Mike Tzou
991a064002 Merge pull request #12705 from Piccirello/webui_search_categories
Fix Web UI search categories only working in English
2020-05-05 12:35:20 +08:00
jagannatharjun
afbe55d004 Allow setting application palette from config.json 2020-05-04 18:37:58 +05:30
Thomas Piccirello
84a40c1665 Include trackers in /sync/maindata API endpoint 2020-05-04 00:11:45 -07:00
jagannatharjun
6f38a86d9a Align Properties Tabbar in center 2020-05-04 11:25:37 +05:30
Mike Tzou
ccb9cc632e Merge pull request #12736 from Piccirello/webui_small_screen
Shrink Web UI search bar on small screens
2020-05-04 13:36:15 +08:00
Vladimir Golovnev
2d1d1ba26a Merge pull request #12734 from glassez/project-cleanup
Cleanup project configuration
2020-05-03 16:37:36 +03:00
Thomas Piccirello
92ed5c76f3 Bump Web API version 2020-05-03 02:23:22 -07:00
Thomas Piccirello
8e8cd59d90 Fix Web UI search categories only working in English
Closes #10239.
2020-05-03 02:23:22 -07:00
Vladimir Golovnev (Glassez)
c40da7a5dd CMake: Fix header inclusion in autogenerated files 2020-05-03 10:27:24 +03:00
Mike Tzou
8999f1a8da Merge pull request #12735 from Kolcha/include
Clean up header inclusion
2020-05-03 12:08:48 +08:00
Thomas Piccirello
cb8a9518d1 Shrink Web UI search bar on small screens 2020-05-02 15:45:57 -07:00
Vladimir Golovnev (Glassez)
a22f921941 CMake: Fix optional features handling 2020-05-02 20:59:26 +03:00
Nick Korotysh
c97e4f105f Clean up header inclusion 2020-05-02 19:54:36 +03:00
Vladimir Golovnev (Glassez)
bc05f3f76b CMake: Fix typo 2020-05-02 17:56:21 +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
Vladimir Golovnev
1cd76cd8ba Merge pull request #12707 from FranciscoPombal/fix_travis
Use latest CMake on TravisCI
2020-05-02 08:53:00 +03:00
Mike Tzou
8110912e4e Merge pull request #12706 from Piccirello/webui_search_small_screen
Hide additional Web UI search filters on small screens
2020-05-02 11:53:08 +08: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
FranciscoPombal
22f16881fe Use latest CMake on TravisCI 2020-05-01 15:44:19 +01:00
Vladimir Golovnev (Glassez)
ad0ee0cd36 CMake: Enable/disable GUI application via option 2020-05-01 17:03:01 +03:00
Vladimir Golovnev (Glassez)
fb42434946 CMake: Put executable into top-level directory 2020-05-01 17:03:01 +03: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
Thomas Piccirello
d5b8399a01 Hide additional Web UI search filters on small screens
Closes #11386.
2020-04-30 17:14:47 -07:00
Mike Tzou
93e1e063b2 Merge pull request #12692 from Chocobo1/cleanup
Handle empty piece range properly
2020-04-30 21:15:10 +08:00
Chocobo1
5ca26516eb Handle empty piece range properly
Related: #12677.
2020-04-30 13:18:57 +08: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
Vladimir Golovnev
5a78bcef99 Merge pull request #12480 from FranciscoPombal/cmake_force_cpp14
CMake: Enforce minimum C++ mode support
2020-04-30 07:42:40 +03:00
Chocobo1
ddb9dfe185 Disable copy construction of QObject subclasses 2020-04-29 21:40:50 +08:00
Chocobo1
6d167e9a28 Remove const from class variables
It prohibits copy construction, copy assignment and move semantics.
2020-04-29 21:32:34 +08:00
Chocobo1
21581141f6 Support range-based iteration in IndexRange class 2020-04-29 21:15:24 +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
Mike Tzou
35a4643824 Merge pull request #12637 from RockyTDR/master
NSIS: Updated Dutch translation
2020-04-29 12:42:25 +08:00
thalieht
1bdffe1729 Rename "Create subfolder" to "Keep top-level folder"
Closes #12673
2020-04-29 03:09:38 +03:00
Thomas De Rocker
e5be05584e NSIS: Update Dutch translation 2020-04-28 19:27:10 +03:00
sledgehammer999
02434129f6 Use latest cmake on TravisCI 2020-04-28 15:50:16 +01:00
FranciscoPombal
d593d6baa1 CMake: Enforce minimum C++ mode support 2020-04-28 15:50:16 +01:00
FranciscoPombal
f63e70b449 Bump minimum required CMake version to 3.16 2020-04-28 14:15:40 +01:00
sledgehammer999
1db90e1fb6 Merge pull request #12680 from sledgehammer999/travis-bionic
Switch TravisCI to bionic
2020-04-28 15:00:54 +03:00
sledgehammer999
d7d60ab78d Switch TravisCI to bionic 2020-04-28 14:07:57 +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
Mike Tzou
725c836a26 Merge pull request #12659 from adem4ik/patch-1
Fix typo in optionsdialog.cpp
2020-04-27 12:35:50 +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
4e961845cf Clean up variable initialization order 2020-04-26 10:21:23 +08:00
sledgehammer999
e786481655 TravisCI: Update libtorrent RC_1_2 brew bottle
Is is built with deprecated functions disabled.
2020-04-25 05:41:19 +03:00
sledgehammer999
480e732694 Bump Web API version 2020-04-25 00:20:15 +03:00
sledgehammer999
13a96407b3 Sync translations from Transifex and run lupdate 2020-04-25 00:11:21 +03:00
Mike Tzou
7bc572afb9 Merge pull request #12602 from Chocobo1/metatype 2020-04-24 22:13:27 +08:00
Vladimir Golovnev
c10318b576 Merge pull request #12549 from SeproDE/rss-api
Expand RSS related WebAPI
2020-04-24 07:46:37 +03:00
Vladimir Golovnev
4b897e7702 Merge pull request #12603 from glassez/fix-crash
Fix crash when torrent is deleted on limit reached
2020-04-24 07:45:35 +03:00
Mike Tzou
708b9b9c1b Merge pull request #12579 from Chocobo1/headers
Add ability to send custom HTTP headers
2020-04-24 12:39:18 +08:00
Mike Tzou
78cc0752a8 Merge pull request #12598 from schnurlos/patch-7
NSIS: Update german translation
2020-04-24 12:38:48 +08:00
Vladimir Golovnev (Glassez)
22bda12d6c Fix crash when torrent is deleted on limit reached 2020-04-23 16:56:53 +03:00
Chocobo1
9efd5eaed3 Register datatype properly
Qt 5.9.5 doesn't seem to recognize it, this patch fixes it.
Fix up: d8401c76f5.
Related: #12601.
2020-04-23 21:42:51 +08:00
Chocobo1
2729c0cb6d Suppress misleading warning message
QString::split() was giving a non-empty QStringList, and
that caused Session::setBannedIPs() to emit misleading warning message.
2020-04-23 21:01:33 +08:00
schnurlos
a1766d25af NSIS: Update german translation 2020-04-23 13:18:14 +02: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
Sepro
98bb63b390 WebAPI: Change delimiter from string to char in preferences API 2020-04-22 19:14:06 +02:00
Sepro
a3b58e59da WebAPI: Expand RSS related API
Added markAsRead API method with optional parameter for specifying single article.
Added the rss_smart_episode_filters and rss_download_repack_proper_episodes keys to preference api.
Added matchingArticles API method for retrieving articles that match specified rule.
2020-04-22 19:13:17 +02:00
sledgehammer999
f1d02c6aee Sync translations from Transifex and run lupdate 2020-04-22 18:44:30 +03:00
sledgehammer999
f758b24486 Merge pull request #12487 from an0n666/no-localhost-on-invalid
Use configured net interface even when it is missing
2020-04-22 17:49:08 +03:00
Mike Tzou
5cfec83385 Merge pull request #12568 from NotTsunami/upnp-fix
WebUI: Fix UPnP lease duration get/set
2020-04-22 02:01:08 +08:00
Mike Tzou
188f82d3be Merge pull request #12567 from Chocobo1/icon
Reduce ambiguity for selecting icons
2020-04-22 01:58:15 +08:00
an0n666
e3e5da7a71 Use configured net interface even when it is missing 2020-04-21 19:04:43 +06:00
NotTsunami
075633cc40 WebUI: Fix UPnP lease duration get/set
Add missing setProperty and getProperty calls for the new UPnP lease
duration setting.

Fixes 6b4925d222.
Closes #12566.
2020-04-21 01:36:13 -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
sledgehammer999
48c1ad8059 Merge pull request #12486 from MaddTheSane/patch-1
Update Info.plist
2020-04-20 01:12:29 +03:00
thalieht
5d16379941 Don't uncheck Authentication checkbox when changing proxy type
Closes #12525
2020-04-19 21:28:21 +03:00
Mike Tzou
e05ef12e68 Merge pull request #12544 from Chocobo1/final
Add final specifier to GUI classes
2020-04-20 00:33:47 +08:00
Mike Tzou
0d849339da Merge pull request #12545 from Chocobo1/padding
Reduce padding in class
2020-04-20 00:33:31 +08:00
Chocobo1
1b80890696 Reduce padding in class
TorrentHandleImpl size is reduced from 768 bytes to 736 bytes.
CreateTorrentParams size didn't change.
Size numbers are from x64.
2020-04-19 11:44:41 +08:00
Chocobo1
ac2d063add Move initialization default values to header 2020-04-19 11:42:49 +08:00
Chocobo1
16a76eee9f Add final specifier to GUI classes
Follow up d3d3f7dbb3.
2020-04-19 10:59:59 +08:00
Mike Tzou
30ce2dfdf3 Merge pull request #12530 from Chocobo1/logger
Reduce padding in structure
2020-04-19 10:17:18 +08:00
Mike Tzou
b06d44b242 Merge pull request #12526 from Chocobo1/pr_12162
Change default upload slot choking limits
2020-04-19 10:17:04 +08:00
Mike Tzou
349a07a443 Merge pull request #12531 from Chocobo1/final
Add final specifier to classes
2020-04-19 10:16:44 +08:00
Mike Tzou
f5ab14c2f0 Merge pull request #12538 from sledgehammer999/travis_deprecated_disabled
TravisCI: Use libtorrent with deprecated functions disabled for Linux builds
2020-04-19 10:03:13 +08:00
sledgehammer999
a17b1f2b78 Use static_cast for explicit type conversions 2020-04-18 18:22:40 +03:00
sledgehammer999
d69ce4f1cf TravisCI: Use libtorrent with deprecated functions disabled for Linux builds 2020-04-18 16:13:02 +03:00
Chocobo1
648d44d9b9 Reduce padding in structure
Log::Msg originally takes 32 bytes, now shrinks to 24 bytes.
Log::Peer originally takes 40 bytes, now shrinks to 32 bytes.
2020-04-18 18:33:46 +08:00
thalieht
f0549b4cb2 Make a few cosmetic changes in code 2020-04-17 19:51:26 +03:00
Chocobo1
d3d3f7dbb3 Add final specifier to classes
This allow compilers to generate more efficient code.
2020-04-17 13:18:40 +08: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
an0n666
ec6b249509 Change default upload slot choking limits 2020-04-16 23:46:48 +08: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
e030fc067b Merge pull request #12422 from an0n666/increase-timeout
Change default stop_tracker_timeout settings
2020-04-15 11:44:29 +08:00
an0n666
1168387df0 Change default stop_tracker_timeout settings 2020-04-13 16:05:36 +06:00
Mike Tzou
5d10724044 Merge pull request #12484 from rwasef1830/skip-setting-outgoing-interface-for-any-ip
Do not use 0.0.0.0 or [::] for outgoing interfaces
2020-04-13 11:52:27 +08:00
Raif Atef
1549b782e6 Do not use 0.0.0.0 or [::] for outgoing interfaces
Fixes #12443
2020-04-12 08:41:18 +02:00
C.W. Betts
d889f0975e Update Info.plist
Wrap the UTTypeTagSpecifications in arrays, as Xcode does.
2020-04-11 23:47:50 -06:00
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
Mike Tzou
0429ca3fb5 Merge pull request #12464 from Chocobo1/date
Fix date format for "Last seen complete"
2020-04-11 12:30:23 +08:00
Chocobo1
31648a4433 Fix date format for "Last seen complete"
Closes #12462.
2020-04-10 13:06:56 +08:00
Mike Tzou
d8356deefa Merge pull request #12449 from SeproDE/fix-addMultiplePeers
Fix add multiple peers from webui
2020-04-10 12:22:22 +08:00
Mike Tzou
43e5e242ff Merge pull request #12450 from Chocobo1/noBuffer
Avoid holding encoded resume data in memory
2020-04-09 13:21:32 +08:00
Sepro
2c8230f1ae Fix unable to add multiple peers in WebUI
Wrong delimiter was used.
2020-04-08 18:55:02 +02:00
Chocobo1
e7890fb727 Preallocate output buffer 2020-04-08 13:06:39 +08:00
Chocobo1
d476ae4f14 Fix header inclusion order 2020-04-08 11:58:12 +08:00
Vladimir Golovnev
eb0295197c Merge pull request #12301 from jozsefsallai/master
Better Python path detection on Windows
2020-04-07 22:29:26 +03:00
Chocobo1
f76d56e224 Suppress unused variable warning on macOS 2020-04-07 16:02:10 +08:00
Chocobo1
d8401c76f5 Avoid holding encoded resume data in memory
Now it the encoded resume data will be streamed to file instead of a
temporary buffer holding the whole of it.
2020-04-07 16:02:09 +08:00
Vladimir Golovnev
fe81633403 Merge pull request #12436 from glassez/fix-savepath
Save "resume data" when torrent storage is moved
2020-04-07 09:54:51 +03:00
an0n666
026aad2c04 Remove deprecated strict super seeding mode from advanced settings 2020-04-07 09:54:32 +06:00
Mike Tzou
f58f425175 Merge pull request #12430 from rwasef1830/add-outgoing-interfaces
Fix outgoing interfaces not getting assigned in case addr is not null.
2020-04-07 10:10:32 +08:00
Mike Tzou
342eec7f83 Merge pull request #12382 from adem4ik/master
Remove white outline around mascot.png
2020-04-07 09:39:13 +08:00
Raif Atef
bf1c9e34d7 Fix outgoing interface is not getting assigned
Assignment was missing in main branch of condition statement.
Closes https://github.com/qbittorrent/qBittorrent/issues/12421
2020-04-06 14:45:44 +02:00
Vladimir Golovnev (Glassez)
0a8c2f75af Save "resume data" when torrent storage is moved 2020-04-06 12:16:27 +03:00
Mike Tzou
26941a5b02 Merge pull request #12427 from Chocobo1/io
Avoid inefficient behavior
2020-04-06 12:13:30 +08:00
Mike Tzou
3021b99a50 Merge pull request #12420 from Chocobo1/locale
Sort locale language list
2020-04-06 12:12:50 +08:00
Mike Tzou
cc090c8e37 Merge pull request #12416 from NotTsunami/master
Set disk cache size for older libtorrent versions
2020-04-06 12:12:12 +08:00
Chocobo1
2fa6a7f6f5 Avoid inefficient behavior
Since the class needs to be copy-constructible, there may be many
copies of an instance. So instead of writing to the device on every
destructor call, only flush buffer on the last destructor call.
2020-04-06 01:04:12 +08:00
Chocobo1
5eaedb13e5 Sort locale language list 2020-04-05 19:21:37 +08:00
Mike Tzou
f647b5a97f Merge pull request #12404 from Chocobo1/pwr
Fix wrong logic that disables "prevent sleeping" timer
2020-04-05 12:30:48 +08:00
NotTsunami
e48612a703 Set disk cache size for older libtorrent versions
Libtorrent versions older than 1.2.6 have a bug when setting disk
cache size to auto.

See 6c880159c9.
2020-04-04 21:36:01 -04: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
Mike Tzou
a10cee0f2b Merge pull request #12364 from Chocobo1/fileOutIter
Avoid holding entire file in memory
2020-04-04 11:07:59 +08:00
adem
eddc82d8a5 Remove white outline around mascot.png 2020-04-03 23:26:45 +04:00
Vladimir Golovnev
df6d641cfb Merge pull request #12396 from glassez/fix-sorting
Fix sub-sorting of Transfer list
2020-04-03 21:08:28 +03:00
Vladimir Golovnev (Glassez)
b759a71c5d Fix sub-sorting of Transfer list
Closes #12330.
2020-04-03 19:09:41 +03:00
Chocobo1
9f281c2d25 Avoid holding entire file in memory
Previously we need a file buffer that is as large as the file size and
this could be a problem when user has less free memory available or
having very large data. Now with the help of `FileOutputIterator`,
we can have a much smaller, fixed size immediate file buffer and also
the code looks nice with `lt::bencode()`.
2020-04-03 18:27:13 +08:00
Mike Tzou
4b409700b0 Merge pull request #12372 from Chocobo1/webui
Fix mismatch ID
2020-04-03 13:02:15 +08:00
Mike Tzou
e7392de04c Merge pull request #12350 from Chocobo1/log
Improve logging for errors
2020-04-03 00:20:54 +08:00
Chocobo1
42d5d63867 Remove redundant type attribute
It already defaults to `text/css` if value is absent (in HTML5).
2020-04-03 00:15:04 +08:00
Chocobo1
e0c841d1e6 Fix mismatch ID 2020-04-03 00:00:32 +08:00
Chocobo1
17f608685d Improve logging for errors
This commit also allows the strings to be translated.
2020-04-02 11:20:09 +08:00
József Sallai
f9564564f8 Detect python3 executable on Windows 2020-04-02 00:31:41 +03:00
Vladimir Golovnev
96c5af7ae9 Merge pull request #12363 from glassez/fix-unexpected-resume
Fix unexpected torrent resume after app restart
2020-04-01 20:20:44 +03:00
Vladimir Golovnev (Glassez)
8bd9a97f6f Fix unexpected torrent resume after app restart
Closes #12322.
2020-04-01 18:01:18 +03:00
sledgehammer999
0dfa3a9c6f Sync translations from Transifex and run lupdate 2020-04-01 17:41:24 +03:00
Vladimir Golovnev
bc159121dc Merge pull request #12348 from glassez/fix-multi-inst
Prevent multiple instances for the same app config
2020-03-31 18:49:00 +03:00
sledgehammer999
bbe5465ba6 Merge pull request #12317 from sledgehammer999/fix_broken_save_path
Fix broken UNC paths in fastresumes on Windows
2020-03-31 18:34:31 +03:00
Vladimir Golovnev (Glassez)
4e6790dfbb Prevent multiple instances for the same app config 2020-03-31 17:16:47 +03:00
sledgehammer999
13af503003 Fix broken UNC paths in fastresumes on Windows
See #12245 and #12282
2020-03-30 15:21:15 +03:00
Mike Tzou
59f99bb984 Merge pull request #12282 from Tester798/fix-12245
Fix regression when fastresume contains network path
2020-03-30 12:53:17 +08: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
Mike Tzou
4d99328b8f Merge pull request #12228 from LameLemon/alt-title
Added alt and title tags for WebUI footer
2020-03-29 12:28:35 +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
Mike Tzou
82c23e67a4 Merge pull request #12299 from Chocobo1/initialize
Initialize struct variables
2020-03-28 10:53:38 +08:00
Mike Tzou
c6e26f5dd0 Merge pull request #12232 from Chocobo1/warning
Add logging for SOCKS5 proxy errors
2020-03-27 22:22:13 +08:00
Vladimir Golovnev
776c136eb9 Merge pull request #12291 from adem4ik/patch-3
NSIS: Update Russian translation
2020-03-27 12:34:56 +03:00
Chocobo1
af430d6635 Initialize struct variables
clang static analyzer was emitting some warning about uninitialized
variable usage and this patch fixes it.
2020-03-27 16:01:01 +08:00
Mike Tzou
2408ce98e6 Merge pull request #12285 from Chocobo1/log
Save log file in UTF-8 encoding
2020-03-27 09:39:54 +08:00
Mike Tzou
6b5b5df90c Merge pull request #12283 from Chocobo1/qtTr
Include translation resources with file globbing
2020-03-27 09:38:46 +08:00
Andrei Stepanov
124fb60635 NSIS: Update Russian translation
Remake of my previous PR https://github.com/qbittorrent/qBittorrent/pull/12251
2020-03-26 23:49:21 +04:00
LameLemon
757274d315 Add alt and title tags for WebUI footer
Improves accessibility of the WebUI. Closes #12219.
2020-03-26 19:05:16 +00:00
sledgehammer999
0bf430ea4c Merge pull request #12244 from BouRock/patch-3
NSIS: Update Turkish translation
2020-03-26 19:28:03 +02:00
Burak Yavuz
ead2d95fdf NSIS: Update Turkish translation 2020-03-26 19:22:46 +02:00
sledgehammer999
03ae915b26 Merge pull request #12269 from maboroshin/master
NSIS: Update Japanese translation
2020-03-26 19:13:28 +02:00
sledgehammer999
b06f61ed20 Merge pull request #12265 from roope242/finnish_translation
NSIS: Update Finnish translation
2020-03-26 19:12:43 +02:00
Mike Tzou
c0b0c6dcfc Merge pull request #12259 from Chocobo1/dtor
Rely on Qt ownership to free resources
2020-03-27 01:06:39 +08:00
Mike Tzou
185d8c97c1 Merge pull request #12273 from Kolcha/hidpif
Don't round scaling factor
2020-03-27 01:06:08 +08:00
Tester798
1c6b4c0a79 Fix regression when fastresume contains network path
Closes #12245 after regression was introduced in #11785.
2020-03-26 18:54:13 +02:00
Chocobo1
54a685e953 Add logging for SOCKS5 proxy errors 2020-03-26 21:51:05 +08:00
Roope Jukkara
bd53254e28 NSIS: Update Finnish translation
Translated most of the finnish installer translation -file to finnish language.
2020-03-26 13:48:30 +02:00
Chocobo1
c52737e07c Avoid log file excessive flushing
Excessive flushing could happen when a lot of logging happens in a short
time interval.
2020-03-26 16:12:24 +08:00
Chocobo1
12396a7582 Save log file in UTF-8 encoding
Otherwise it uses sytem defaults: usually UTF-8 on Linux and local 8-bit
encoding on Windows.
2020-03-26 16:00:57 +08:00
Chocobo1
d179c6d5a1 Rename variable 2020-03-26 15:49:14 +08:00
Chocobo1
9630e7b689 Rely on Qt ownership to free resources
The m_reply has already changed parent in
DownloadHandlerImpl::assignNetworkReply() and thus we can rely on Qt
ownership to delete the object.
2020-03-26 14:39:18 +08:00
Chocobo1
1466c562e5 Include translation resources with file globbing
This will include all qtbase_*.qm files and only explicitly listed
qt_*.qm files will be included.
2020-03-26 14:10:20 +08:00
Mike Tzou
5049b76b40 Merge pull request #12260 from Chocobo1/latin1
Construct QString more efficiently
2020-03-26 12:09:40 +08:00
Nick Korotysh
a9b0d84df9 Don't round scaling factor
Qt 5.14 introduced new feature related to HighDPI screens support,
this parameter is called "scale factor rounding policy", and it is
intended to improve fractional scale factor support (like 150%).
Qt::PassThrough value guarantee that no any rounding will applied to
scale factor, and will be used as is.
2020-03-25 18:36:34 +03:00
maboroshin
66ffa9adc2 NSIS: Update Japanese translation 2020-03-25 21:55:05 +09:00
Chocobo1
7de8a4d6e0 Construct QString more efficiently 2020-03-25 12:00:11 +08:00
Chocobo1
2c23840947 Allow to translate error messages 2020-03-25 12:00:11 +08:00
sledgehammer999
fcc87b4e9b Sync translations from Transifex and run lupdate 2020-03-24 16:29:43 +02:00
sledgehammer999
fbf325c6d6 Merge pull request #12220 from kasper93/header
Add missing QPainterPath header include
2020-03-22 23:16:31 +02:00
Mike Tzou
18156bd676 Merge pull request #12154 from an0n666/remove-path-limit
NSIS: Add option to remove Windows path length limitation & Update manifest to support long path
2020-03-22 23:30:53 +08:00
an0n666
a711558ba0 NSIS: Add option to remove Windows path length limitation 2020-03-22 16:46:46 +02:00
Kacper Michajłow
e2c9ca5ee5 Add missing QPainterPath header include 2020-03-22 14:58:44 +01:00
Mike Tzou
ab30cfcdb0 Merge pull request #12207 from FranciscoPombal/fix-webapi
WebAPI: fix matching uncategorized torrents
2020-03-22 21:23:56 +08:00
FranciscoPombal
e496e664db WebAPI: Always allow whitespace in category names 2020-03-22 12:16:06 +00:00
FranciscoPombal
7d24e1c063 WebAPI: fix matching uncategorized torrents
Closes #11748.
2020-03-22 03:49:06 +00:00
Mike Tzou
f44f1ffc97 Merge pull request #12206 from thalieht/monitoredTMM
Disable Auto TMM when not using default savepath from monitored folder
2020-03-21 12:23:40 +08:00
thalieht
598c856c88 Disable Auto TMM when not using default savepath from monitored folder 2020-03-19 21:13:44 +02: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
Vladimir Golovnev
c323f64c96 Merge pull request #12188 from thalieht/queuemove
Append new move storage job to queue
2020-03-17 07:18:27 +03:00
Mike Tzou
0ffa0478bc Merge pull request #12168 from Chocobo1/version
Get library version strings at runtime
2020-03-17 11:52:52 +08:00
thalieht
18289f2395 Append new move storage job to queue
fixup e4ff206e3c
2020-03-16 22:39:31 +02: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
Chocobo1
6c307774f1 Get library version strings at runtime
We mostly use boost in header-only mode, so it is a non-trivial job to
get the version string at runtime.
2020-03-16 21:27:42 +08:00
Mike Tzou
8e553adc92 Merge pull request #12158 from Chocobo1/man
Add man page files in Markdown format
2020-03-14 00:19:32 +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
Chocobo1
13ad1ee520 Add man page files in Markdown format
This allow us to edit man pages in a humane format.
2020-03-12 13:12:33 +08:00
Mike Tzou
f80b7affd9 Merge pull request #12138 from Chocobo1/dist
Update Qt translations
2020-03-10 01:29:08 +08:00
Vladimir Golovnev
a7b342edcb Merge pull request #12083 from glassez/app-instances
Allow single app instance per configuration
2020-03-09 07:40:48 +03:00
Chocobo1
a0e617260f Update supported python version
Fix up baa13c044a.
2020-03-09 09:48:17 +08:00
Chocobo1
7b25dd24d0 Update Qt translation files 2020-03-09 09:48:15 +08:00
Chocobo1
8cc082f966 Switch to https link 2020-03-08 01:47:36 +08: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
Vladimir Golovnev (Glassez)
38e54206d5 Allow single app instance per configuration 2020-03-06 08:59:59 +03:00
Mike Tzou
73ee901c45 Merge pull request #12113 from Chocobo1/smart_ptr
Use helper functions to construct smart pointers
2020-03-06 13:12:41 +08:00
Mike Tzou
cc314ae85a Merge pull request #12121 from Chocobo1/idx_type
Use proper type for piece index
2020-03-06 13:12:25 +08:00
Chocobo1
290d198977 Use proper type for piece index 2020-03-06 01:47:28 +08:00
Chocobo1
2157e500ef Use helper functions to construct smart pointers 2020-03-05 19:32:28 +08:00
Mike Tzou
ca01b049a6 Merge pull request #12108 from Chocobo1/bits
Avoid unnecessary memory writes
2020-03-04 23:50:12 +08:00
Mike Tzou
949daf6c73 Merge pull request #12037 from an0n666/seed-mode-fix
Check if file exists in seed mode
2020-03-04 23:49:47 +08:00
an0n666
f7d2085b0a Check if file exists in seed mode 2020-03-04 17:38:00 +06:00
Chocobo1
24cd7c3611 Avoid unnecessary memory writes
Before this change, qbt spent ~1% in these two functions, now it
only spends about ~0.5% in my naive testing.
2020-03-04 03:18:39 +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
b519ece18b Merge pull request #12095 from glassez/resume-torrent
Let libtorrent decide whether to resume a torrent
2020-03-01 19:54:16 +03:00
Vladimir Golovnev (Glassez)
74884d57ec Let libtorrent decide whether to resume a torrent 2020-03-01 08:08:01 +03:00
Mike Tzou
9649c2a163 Merge pull request #12043 from FranciscoPombal/fix-embedded-tracker
Fix embedded tracker
2020-02-27 21:06:58 +08: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
Mike Tzou
89dec85b0f Merge pull request #12076 from maboroshin/master
NSIS: Update Japanese translation
2020-02-27 12:46:40 +08:00
Mike Tzou
5e567a2bff Merge pull request #12075 from Chocobo1/comment
Remove misleading translation comment
2020-02-27 12:44:38 +08:00
FranciscoPombal
966f891d91 Fix response to event=stopped
BEP-3 says all tracker responses to valid announce requests should be bencoded dictionaries with at least the "peers" and "interval" keys; the "peers" key can be empty.

Also clarify support for BEP-21.
2020-02-26 20:47:33 +00:00
FranciscoPombal
af6f63f82c Don't use IPv4-mapped IPv6
Always register peers with either IPv4 or IPv6.
Fixes potential connection issues.

Also clarify related BEP-24 support.
2020-02-26 20:44:09 +00:00
FranciscoPombal
abc69dfd20 Fix BEP-23 support
The embedded tracker was returning a non-compliant response.
The peer lists should be packed strings instead of lists.

Also clarify level of compliance with BEP-7.
2020-02-26 20:42:14 +00:00
FranciscoPombal
9f045500d1 Fix IPv6 endianness 2020-02-26 20:42:07 +00:00
maboroshin
6474ee046f NSIS: Update Japanese translation 2020-02-26 18:46:59 +09: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
Mike Tzou
a773b9ad84 Merge pull request #12057 from djt3/master
Change placeholder text in torrent list's filter
2020-02-25 13:29:09 +08:00
Mike Tzou
2ca0182e4b Merge pull request #12050 from schnurlos/patch-6
NSIS: Update German translation
2020-02-24 12:33:00 +08:00
schnurlos
46b6593a8a NSIS: Update German translation
German translation of "inst_requires_win7" added.
2020-02-23 19:29:13 +02:00
djt3
e6887fc950 Change placeholder text in torrent list's filter 2020-02-23 14:40:45 +00:00
Mike Tzou
68709c3112 Merge pull request #12044 from FranciscoPombal/fix-port
Revert using random port by default
2020-02-22 02:29:45 +08:00
FranciscoPombal
dc6a56afcb Revert using random port by default
Revert change introduced in https://github.com/qbittorrent/qBittorrent/pull/11637 and also revert the associated follow-up https://github.com/qbittorrent/qBittorrent/pull/12000.

Reason: https://github.com/arvidn/libtorrent/pull/4335
2020-02-21 14:47:37 +00:00
Mike Tzou
167127c668 Merge pull request #12034 from zywo/french.nsi
NSIS: Update French translation
2020-02-21 20:19:32 +08:00
zywo
bd5a685294 NSIS: Update French translation 2020-02-21 12:44:01 +01:00
Mike Tzou
0a7906d78b Merge pull request #12032 from slrslr/patch-1
NSIS: Improve Czech translation
2020-02-21 13:49:32 +08:00
slrslr
b5ccbb77ee NSIS: Improve Czech translation 2020-02-20 23:12:45 +02:00
sledgehammer999
06ceac4cda Merge pull request #11895 from FranciscoPombal/cmake-build
Git: Ignore "build" directory
2020-02-18 21:57:36 +02:00
sledgehammer999
193da7f2f9 Merge pull request #12014 from sledgehammer999/alt_IP_db_provider
Use IP geolocation database by DB-IP instead of MaxMind
2020-02-18 17:05:52 +02:00
sledgehammer999
ea1481beef Use IP geolocation database by DB-IP instead of MaxMind
Closes #11792
2020-02-18 16:11:28 +02:00
Francisco Pombal
65ecd92dd8 Git: Ignore "build" directory 2020-02-18 00:32:35 +00:00
Mike Tzou
bf6a88b3d2 Merge pull request #12021 from Chocobo1/trackerentry
Simplify TrackerEntry::status() logic
2020-02-18 02:22:05 +08:00
Chocobo1
e825473289 Simplify TrackerEntry::status() logic 2020-02-17 18:46:30 +08: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
Mike Tzou
04132f6266 Merge pull request #11999 from an0n666/fix-not-contacted-tracker
Do not list not contacted trackers as error
2020-02-16 20:27:41 +08:00
sledgehammer999
971d20a3c1 Merge pull request #11963 from an0n666/start-with-windows
Start qBittorrent on Windows start up option in installer
2020-02-16 11:55:33 +02:00
An0n
dd19f250ae Start qBittorrent on Windows start up 2020-02-16 05:25:59 +00:00
an0n666
8423f43209 Do not list not contacted trackers as error 2020-02-15 19:44:14 +00:00
sledgehammer999
385d7247b7 Merge pull request #12016 from Chocobo1/errMsg
Include resume folder path in exception message
2020-02-15 19:41:39 +02:00
Vladimir Golovnev
362305f339 Merge pull request #12013 from glassez/fix-rss
Don't access download handler after it's finished
2020-02-15 07:02:59 +03:00
Mike Tzou
dbea2d95f9 Merge pull request #12004 from Chocobo1/authCount
Add configurable ban options for WebUI
2020-02-15 09:43:16 +08:00
Mike Tzou
03087b72b0 Merge pull request #12011 from Chocobo1/webui
Close document properly after writing
2020-02-15 09:42:46 +08:00
Chocobo1
45c357dfe2 Include resume folder path in exception message
The message in RuntimeError exception will be displayed to the users and
users would be clueless if we don't show the path.
2020-02-15 02:48:55 +08:00
Chocobo1
6eb190c373 Expose WebUI ban duration to users 2020-02-14 16:23:30 +08:00
Chocobo1
ec61ef5145 Fix coding inconsistencies in preferences.html
1. Format table tags properly
2. Add a proper label tag
3. Don't use abbreviation for seconds, we use full name everywhere else
2020-02-14 16:23:03 +08:00
Chocobo1
4f7b799732 Use QDeadlineTimer for tracking WebUI banned duration
It simplifies our code and the new timer is monotonic.
2020-02-14 16:22:52 +08:00
Vladimir Golovnev (Glassez)
3762514662 Don't access download handler after it's finished 2020-02-14 08:24:49 +03:00
Chocobo1
45bd79ee74 Close document properly after writing
Closing document explicitly is recommended by MDN:
https://developer.mozilla.org/en-US/docs/Web/API/Document/write
2020-02-14 12:47:18 +08:00
Chocobo1
f88d6b2e55 Expose WebUI ban counter to users 2020-02-14 12:31:12 +08:00
Mike Tzou
d5a4ebe7c9 Merge pull request #11998 from Kolcha/filter-list
Inherit text color for filter list elements
2020-02-14 11:34:55 +08:00
Mike Tzou
195889a854 Merge pull request #11785 from Tester798/fix-portable-mode
Fix portable mode
2020-02-14 11:30:32 +08:00
Mike Tzou
882978c80a Merge pull request #12000 from an0n666/legacy-default-no-random-port
Keep legacy default for random port
2020-02-13 12:24:45 +08:00
Tester798
58711cbe7e Fix portable mode
Try to fix portable mode bug. Closes #11706, #11178, #7765.
2020-02-12 19:56:25 +02:00
Mike Tzou
316f34cbf5 Merge pull request #11994 from Chocobo1/profile
Unify singleton pattern in Profile class
2020-02-12 23:59:47 +08:00
an0n666
41d8585932 Keep legacy default for random port 2020-02-12 12:28:13 +00:00
Nick Korotysh
1e59dcdb6c Inherit text color for filter list elements
Filter list (left side panel) in WebUI is implemented using <a> tags,
CSS defines default style for all <a> elements, and specific style for
filter list elements. Default style for <a> elements sets color, and
this color also used in list. This is looks not so well. So lets just
inherit text color from parent element, and as so as it is not set, so
default text color will be used.
This makes filter list looks like other UI elemets, making all UI more
consistent (like in desktop app).
2020-02-12 10:40:08 +03:00
Vladimir Golovnev
4a2fda7edc Merge pull request #11995 from glassez/fix-magnet-redirect
Handle HTTP redirections manually
2020-02-12 09:25:39 +03:00
Vladimir Golovnev
1e63dcb400 Merge pull request #11847 from glassez/legacy-defaults
Keep legacy defaults for existing users
2020-02-11 18:44:03 +03:00
Chocobo1
5de75eff05 Unify singleton pattern in Profile class
1. Use unified function names `initInstance()` and `freeInstance()` and
make them public.
2. Add `freeInstance()` to avoid noise from memory leak detectors.
3. Let `instance()`return a pointer directly to avoid unnecessary
indirections when invoking functions.
2020-02-11 15:30:59 +08:00
Vladimir Golovnev (Glassez)
0c6c65f6f8 Keep legacy defaults for existing users 2020-02-11 09:53:12 +03:00
Vladimir Golovnev (Glassez)
86c95db91d Perform settings upgrade for existing user only 2020-02-11 09:40:57 +03:00
Vladimir Golovnev (Glassez)
8bb34482ea Handle HTTP redirections manually
Qt doesn't support Magnet protocol so we need to handle all redirections
manually to allow redirections to Magnet URIs.
2020-02-11 09:31:42 +03:00
Mike Tzou
8b42bf5192 Merge pull request #11981 from Kolcha/favicon
Use SVG image for WebUI favicon
2020-02-11 12:32:42 +08:00
Nick Korotysh
536580ca6b Use SVG image for WebUI favicon
This will allow browsers to get high quality icon with required
resolution instead of resizing some small raster image.
Browsers can have even more benefit from it. For example, Firefox uses
high resolution icon to display it in "Top Sites" instead of page
preview.

Nothing changes for browsers which doesn't support SVG favicons, older
PNG icon will be used in such case.
2020-02-09 08:52:32 +03:00
Chocobo1
baa13c044a Drop python2 support
Closes #11811.
2020-02-08 12:36:45 +08:00
Mike Tzou
8b330e3ac0 Merge pull request #11977 from Chocobo1/init
Fix singleton class ownership
2020-02-08 12:10:27 +08:00
Chocobo1
a6cdba17f0 Fix singleton class ownership
We shouldn't allow Qt parent ownership in here.
2020-02-07 15:34:04 +08:00
Mike Tzou
fa43dab3a2 Merge pull request #11961 from NotTsunami/master
Remove redundant null checks
2020-02-07 13:53:57 +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
Mike Tzou
c78604c7d3 Merge pull request #11950 from Chocobo1/rdns
Improve ReverseResolution class
2020-01-31 21:25:52 +08: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
a2ebd77eac Manually abort lookup on class destruction
Some lookup might take longer so instead of waiting them, we abort them
manually.
2020-01-30 14:11:03 +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
Mike Tzou
4884788c0b Merge pull request #11933 from Chocobo1/qhash
Improve qHash functions
2020-01-29 02:07:27 +08:00
Chocobo1
5905c085c6 Use systematic approach to generate hash
The basic idea is to hash each class member and then mix them with xor
operation.
However the `seed` must be handled with care, it should only be
introduced once when mixing the hashes of each class member, otherwise
under some circumstances the `seed` might xor with itself and thus break
the intended effect.
2020-01-27 18:14:27 +08:00
Chocobo1
1740f968df Revise qHash function
Instead of xor and narrowing the integers ourselves, now we let qHash()
from Qt do the job properly.
2020-01-27 12:53:22 +08:00
Chocobo1
2b4490d8a7 Use faster hash function
qHash(QString) will need to hash/loop through all the data while the new
code will only need one memcpy() and a few bit manipulations.
2020-01-27 12:53:13 +08:00
Vladimir Golovnev
07c22f8c87 Merge pull request #11914 from glassez/fix-hide-zeroes
Fix hide zero values
2020-01-24 19:03:54 +03: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
Mike Tzou
c3ce1aaa3d Merge pull request #11903 from Sakib-Abrar/gui-improvement
Show "∞" instead of " -1" in Preferences
2020-01-22 11:56:26 +08:00
Vladimir Golovnev
89e72b38ea Merge pull request #11881 from glassez/extension
Simplify torrent startup handling
2020-01-22 06:11:33 +03:00
Sakib-Abrar
1768570bf9 Show "∞" instead of " -1" in Preferences 2020-01-22 00:06:19 +06:00
Vladimir Golovnev (Glassez)
f2285e1b63 Redesign torrent startup handling 2020-01-21 10:14:59 +03:00
Mike Tzou
01ad8a443c Merge pull request #11892 from NotTsunami/cmake
CMake: Further CMake improvements and fixes
2020-01-20 11:59:51 +08:00
Vladimir Golovnev
75ebd54ea3 Merge pull request #11088 from jagannatharjun/organize-style
Reorganize UI theme selection
2020-01-20 06:56:54 +03:00
NotTsunami
b21ed0063b CMake: Fix WebUI checks
When the CMake system was last revamped, the configure variable was
changed from WEBUI to DISABLE_WEBUI, but we are still checking
against WEBUI. This behavior was changed in fa770871e9
2020-01-19 15:08:45 -05:00
NotTsunami
f066d8d786 CMake: Remove glibc version detection
If we were conditionally enabling _BSD_SOURCE or _SVID_SOURCE, I can
understand trying to play nice with the compiler and only pass as
needed, however this is not the case and glibc <= 2.19 will not care
that we are passing _DEFAULT_SOURCE. This removes an unnecessary
build step and gives us less to maintain from a build system
perspective.

Small cosmetic changes to MacroQbtCompilerSettings are included.
2020-01-19 15:08:37 -05:00
Prince Gupta
c9e162cf8a Reorganize UI theme selection 2020-01-18 23:12:33 +05:30
NotTsunami
b7f2122c06 CMake: Remove duplicate MSVC check
As of this commit, L98 of winconf.cmake already checks for MSVC
before winconf-msvc calls this macro, so we are guaranteed to be
satisfy the check.
2020-01-18 09:36:56 -05:00
Mike Tzou
9f9868bd79 Merge pull request #11886 from Chocobo1/deprecate
Migrate away from deprecated settings
2020-01-17 16:27:11 +08:00
Chocobo1
3fce1db2eb Migrate away from deprecated settings
Libtorrent has deprecated `upnp_ignore_nonrouters` in
https://github.com/arvidn/libtorrent/pull/4251
2020-01-16 23:44:54 +08:00
Mike Tzou
b0844800b8 Merge pull request #11870 from NotTsunami/master
CMake: Remove additional debugging compiler flags
2020-01-15 12:45:53 +08:00
NotTsunami
451585b5de CMake: Remove additional debugging compiler flags
Our previous setup lead to two unintended consequences:

* Debug flags were included in both release and debug builds instead
of just debug builds
* Clang doesn't support -gX (where X is the level of debugging
optimization), but we checked for -Og support instead

This commit avoids both of these scenarios by removing the additional
flags altogether. Partial resolution to #11856.
2020-01-14 10:18:59 -05:00
Mike Tzou
e27c9bd020 Merge pull request #11871 from NotTsunami/bitwise
WebUI: Use correct operators in logical expressions
2020-01-14 12:54:56 +08:00
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
Vladimir Golovnev
990e451765 Merge pull request #11865 from shemanaev/fix/webui-files-rename
WebUI: Fix first row renaming in files tab
2020-01-14 07:14:13 +03:00
FranciscoPombal
df2fbb1edc Bump Web API version 2020-01-13 11:41:59 +00: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
NotTsunami
82047104fc WebUI: Use correct operators in logical expressions
As suggested in https://github.com/qbittorrent/qBittorrent/pull/11825#discussion_r365557626
2020-01-13 01:35:38 -05: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
Denis
a7eb792372 WebUI: Fix first row renaming in files tab
Ids started from zero and first row converts to false.
Closes #11826.
2020-01-12 20:05:38 +03:00
Vladimir Golovnev
101ab3cf6c Merge pull request #11864 from glassez/fix-sorting
Fix Transfer list sorting
2020-01-12 11:05:20 +03:00
Mike Tzou
1592eb7be7 Merge pull request #11862 from Chocobo1/year
Bump copyright year and other fixes
2020-01-12 12:01:10 +08: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
Mike Tzou
a124decdc5 Merge pull request #11848 from an0n666/stop_tracker_timeout_placement
Change stop tracker timeout settings placement
2020-01-11 10:45:58 +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
Mike Tzou
e2ac97a9e7 Merge pull request #11838 from Chocobo1/webui
Minor WebUI code cleanups
2020-01-08 16:50:31 +08:00
an0n666
3f223c3a45 Expose stop_tracker_timeout in advanced settings 2020-01-08 08:21:55 +00:00
sledgehammer999
45ed31fddc Merge pull request #11733 from sledgehammer999/tracker_error_count
Tracker is errored only if all local endpoints fail
2020-01-08 04:24:08 +02:00
Vladimir Golovnev
dc8f4b776c Merge pull request #11829 from thalieht/doubleclick
Allow double-click in preview dialog
2020-01-06 21:11:59 +03:00
Chocobo1
c556b20018 Remove unused variable 2020-01-07 02:08:08 +08:00
Chocobo1
c34883f9af Add explicit semicolon 2020-01-07 02:07:55 +08:00
Chocobo1
0577cf588c Remove duplicate line 2020-01-07 01:59:02 +08:00
sledgehammer999
02a027144b Tracker is errored only if all local endpoints fail
Closes #11691
2020-01-05 17:59:54 +02:00
thalieht
c5177eae9f Allow double-click in preview dialog 2020-01-05 11:28:04 +02:00
Vladimir Golovnev
7ceeea880e Merge pull request #11798 from glassez/fix-recheck-loop
Save resume data after recheck. Closes #11774
2020-01-02 17:21:25 +03:00
Vladimir Golovnev (Glassez)
f56f817c77 Save resume data after recheck
Closes #11774.
2020-01-01 14:29:58 +03:00
Mike Tzou
e906478a16 Merge pull request #11756 from FranciscoPombal/fix_webui_stats_race
WebUI: fix populating statistics window
2019-12-28 10:37:03 +08:00
Vladimir Golovnev
37d7323ac0 Merge pull request #11708 from glassez/transfer-list
Improve Transfer list architecture
2019-12-27 16:25:26 +03:00
FranciscoPombal
8be804b6ff WebUI: fix populating statistics window
Closes #11665
2019-12-27 12:10:12 +00: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
e62b550bfe Merge pull request #11635 from FranciscoPombal/prevent_excessive_sync
WebUI: Prevent excessive requests to /api/v2/sync/maindata
2019-12-25 13:15:13 +08:00
Mike Tzou
07d4055de5 Merge pull request #11745 from FranciscoPombal/fixup_#11592
WebUI: remove unused/deprecated "Listen on IPv6 address" option
2019-12-25 13:07:24 +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
FranciscoPombal
0f6dfcf8a6 WebUI: Prevent excessive sync requests
Don't sync main data if a request to do so is already in progress.

This prevents piling up of requests and bogging down slow/busy machines, since the current implementation of `/api/v2/sync/maindata` is very computationally intensive, especially with lots of torrents.

Everything gets updated on the next scheduled request anyway (via the timeout mechanism).
2019-12-24 12:15:26 +00:00
Mike Tzou
c94417b589 Merge pull request #11637 from FranciscoPombal/new_defaults
Change some settings defaults for better behaviour out of the box
2019-12-24 12:27:11 +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
e693fdeaf9 WebUI: remove unused/deprecated option
Fixup 8200ef6
Remove "Listen on IPv6 address" option.
2019-12-23 18:57:46 +00: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
1121316926 Delete unnecessary explicit return 2019-12-19 19:13:02 +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
FranciscoPombal
30502de960 Change some settings defaults for better behaviour out of the box
- CheckingMemUsageSize (16 MiB -> 32 MiB): a 16 MiB increase in memory consumption seems worthwhile for a nice performance boost in most cases.
- DiskCacheSize (64 MiB -> Auto): auto yields the best performance without committing to a huge fixed value.
- UseRandomPort (false -> true): The initial port chosen by qBittorrent may clash with something else the user already has that is aways using that port (low probability, but still). Thus, qBittorrent will always fail listening on that port, causing unexpected problems for the user. Users who know they want a fixed port will go to the settings anyway.
2019-12-19 16:46:22 +00: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
sledgehammer999
4ae8e176dc Use modern unique_ptr practices 2019-12-19 16:25:45 +02:00
Prince Gupta
d3aa45526a Allow transfer list text color changes through QSS 2019-12-19 12:45:26 +05:30
Mike Tzou
fab250f1e0 Merge pull request #11694 from Chocobo1/nullptr
Replace hard-coded numbers in TrackerFiltersList class
2019-12-19 10:13:44 +08:00
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
1e4c837d6c Merge pull request #11678 from an0n666/patch-1
Disable Torrent Queue by default
2019-12-18 13:47:04 +08:00
sledgehammer999
a25ed5f639 Sync translations from Transifex and run lupdate 2019-12-18 00:33:00 +02:00
sledgehammer999
1376e051df Bump Web API version 2019-12-18 00:20:27 +02:00
sledgehammer999
90308c2ae5 Merge pull request #11660 from sledgehammer999/fix_smart_delete
Don't unnecessarily delete folder customization
2019-12-17 20:38:25 +02:00
sledgehammer999
3d43f1c800 Merge pull request #11642 from sledgehammer999/fix_save_path
Use the incomplete folder where appropriate
2019-12-17 20:37:57 +02:00
Mike Tzou
99c002ae27 Merge pull request #11614 from Tester798/master
Enable portable mode if "profile" folder exists
2019-12-17 13:37:35 +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
sledgehammer999
64e5d41a2c Don't unnecessarily delete OS files in folders 2019-12-16 22:10:13 +02:00
an0n666
e0d7876990 Disable Torrent Queue by default
It should remain disabled by default. Anyone that needs to Queue torrents for seeding/downloading should go to settings and change it to their preference.
2019-12-16 18:16:27 +06:00
Prince Gupta
6258c1e65b Align Properties tab bar correctly on window resize 2019-12-16 15:42:50 +05:30
Tester798
053ee48692 Enable portable mode if "profile" directory exists
Enable portable mode if "profile" directory exists in the app dir.
Remove "--portable" command line argument.
Add logging of current profile config directory.
Closes #9445.
2019-12-16 05:12:47 +02:00
sledgehammer999
564d845d87 Use the incomplete folder where appropriate
Restored torrents already have the correct path saved in their fastresume. Don't override it.
Magnets and new torrents have to be set explicitly to the incomplete folder if it is enabled.

Closes #11552
2019-12-13 20:31:38 +02:00
sledgehammer999
d09c5e529c Merge pull request #11592 from sledgehammer999/refactor_listeningAddr
Rework the listening IP/interface selection code
2019-12-12 20:24:45 +02:00
Mike Tzou
b6476f7585 Merge pull request #11633 from Chocobo1/lanlimit
Enable "Apply rate limit to peers on LAN" option by default
2019-12-12 11:15:10 +08:00
Chocobo1
796595ffb6 Enable "Apply rate limit to peers on LAN" option by default
Because some ISP will deploy Carrier Grade NAT (means assigning private
IP address to user) and thus accidentally circumvent the speed limiter.

https://www.a10networks.com/blog/carrier-grade-nat/
2019-12-11 21:44:45 +08:00
sledgehammer999
8200ef6bd5 Rework the listening IP/interface selection code
Closes #11561
2019-12-11 09:56:45 +02:00
Mike Tzou
53183f3ab3 Merge pull request #11627 from nl6720/webui-magnet-warning-fix
Fix quoting of alert() in client.js
2019-12-10 20:00:35 +08:00
nl6720
5f5385d4dd Fix quoting of alert() in client.js
Fix alert() I broke in #11615 .
2019-12-10 12:45:55 +02:00
Mike Tzou
a652c39394 Merge pull request #11029 from Piccirello/webui-rename-file
Add ability to rename torrent files from the WebUI
2019-12-10 12:39:19 +08:00
Mike Tzou
5e83574de1 Merge pull request #11615 from nl6720/webui-magnet-warning
Mention HTTPS in WebUI magnet link warning
2019-12-10 12:36:45 +08:00
Thomas Piccirello
2bce9f6179 Add ability to rename torrent files from the WebUI
Renaming folders is not yet supported. Closes #8892.
2019-12-09 02:57:32 -08:00
Thomas Piccirello
9fecd18293 Fix incorrect function being used 2019-12-09 02:53:36 -08:00
nl6720
c1ef846c3d Mention lack of HTTPS in WebUI magnet link warning
According to Mozilla docs, registerProtocolHandler() is only
available when using secure contexts (i.e. HTTPS for everything
outside localhost).
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/registerProtocolHandler

The message "Your browser does not support this feature" does not
make this obvious and can lead to confusion if the user is using a
modern browser.
2019-12-08 11:41:30 +02:00
Mike Tzou
a7bd68a2c7 Merge pull request #11607 from luigino/ppc64
Remove -march=native optimisation
2019-12-08 13:39:18 +08:00
Luigi Baldoni
2f83587f2a Remove -march=native optimisation 2019-12-08 13:13:59 +08:00
Mike Tzou
7a657eb5d9 Merge pull request #11566 from Chocobo1/webui
Fixes for WebUI
2019-12-08 12:13:53 +08:00
sledgehammer999
0b91c4d890 Merge pull request #11557 from adem4ik/patch-1
Update russian.nsi
2019-12-07 16:51:41 +02:00
Mike Tzou
d051519eff Merge pull request #11568 from Chocobo1/icon
Fix inconsistent icon for deleting torrent
2019-12-06 11:44:28 +08:00
Chocobo1
c896982efb Fix incorrect translation displayed after language change
It is expected in WebUI that the language change applies immediately
(without a program restart) and this static caching prevents that.
2019-12-04 18:25:14 +08:00
Chocobo1
5f165c4c00 Fix HTML elements size in search tab
Specifying a height/width value might cut the displayed text or
obstruct centering the text in the button, so let it auto decide
instead.
Closes #11553.
2019-12-04 18:25:14 +08: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
Chocobo1
04f270b9bc Fix missing translations in search plugins dialog
Closes #11551.
2019-12-04 12:20:11 +08:00
Andrei Stepanov
c89c51f871 Update russian.nsi 2019-12-04 01:45:11 +04: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
sledgehammer999
ad0bc5d90d Bump to 4.3.0alpha1 2019-12-03 01:24:50 +02:00
sledgehammer999
b7c2f74c19 Update Changelog 2019-12-03 01:18:31 +02:00
sledgehammer999
f46058bbd6 Sync translations from Transifex and run lupdate 2019-12-02 23:37:06 +02:00
sledgehammer999
b296c076f1 Merge pull request #11539 from sledgehammer999/nsis_min_winVer
Enforce min Windows version in NSIS installer
2019-12-02 23:23:10 +02:00
warren
b37795d344 Expand single-item folders in torrent content 2019-12-02 21:56:44 +05:00
Vladimir Golovnev
a73dfe4a10 Merge pull request #11538 from glassez/rss-logging
Log "RSS Feed successfully downloaded" event
2019-12-02 07:16:56 +03:00
Vladimir Golovnev (Glassez)
9342fb15b3 Log "RSS Feed successfully downloaded" event 2019-12-01 20:19:43 +03:00
sledgehammer999
5d0d8a0b7b Enforce min Windows version in NSIS installer 2019-11-30 15:43:51 +02:00
Mike Tzou
7e0d64294c Merge pull request #11535 from Chocobo1/libt
Migrate away from deprecated API
2019-11-30 10:00:25 +08:00
Chocobo1
bf58555a7a Migrate away from deprecated API 2019-11-29 02:57:31 +08:00
sledgehammer999
56c0f39593 Merge pull request #11520 from sledgehammer999/revert_fastresume_functionality
Revert fastresume functionality
2019-11-27 22:38:21 +02:00
sledgehammer999
bd3f723ebf Merge pull request #11474 from sledgehammer999/webui_bump
Bump Web API version
2019-11-27 22:37:40 +02:00
Chocobo1
b6050463f4 Show torrent error message in transfer list 2019-11-26 03:15:48 +08:00
Chocobo1
2ca70cf6cc Fix stuck in wrong torrent state
Before this patch, adding the torrent in
https://github.com/qbittorrent/qBittorrent/issues/11511 and the torrrent
state will stay in torrent_status::checking_resume_data forever.
This is not the correct state since the `torrent_status.errc` field is
non-zero and this commit fixes it.
2019-11-26 03:15:48 +08:00
sledgehammer999
7aa01a1b51 Revert "Always save info dict when saving fastresume"
This reverts commit 4aab44e779.
2019-11-25 15:35:06 +02:00
sledgehammer999
005f0010ec Revert "Fix unable to remove web seeds"
This reverts commit d657c87243.
2019-11-25 15:34:37 +02:00
Vladimir Golovnev
7ff8545f55 Merge pull request #11505 from glassez/fix-build
Fix compilation for Windows 7 with MinGW
2019-11-23 06:22:17 +03:00
Vladimir Golovnev (Glassez)
a4b9a4d9da Fix compilation for Windows 7 with MinGW 2019-11-22 13:03:52 +03:00
sledgehammer999
9c1617b977 Bump to 4.2.0RC 2019-11-21 21:26:48 +02:00
sledgehammer999
442daa31d4 Update Changelog 2019-11-21 21:25:16 +02:00
sledgehammer999
c27457efda Sync translations from Transifex and run lupdate 2019-11-21 21:21:58 +02:00
Mike Tzou
aaf659519a Merge pull request #11499 from Chocobo1/limits
Avoid session reconfiguration when limit has not changed
2019-11-21 01:42:17 +08:00
Chocobo1
af52a18f82 Avoid session reconfiguration when limit has not changed
Fix up 5d46c9b2d6.
2019-11-20 12:22:18 +08:00
Mike Tzou
1bd739dd4a Merge pull request #11493 from Chocobo1/speed
Revise "speed limits" related code
2019-11-18 18:40:31 +08:00
Vladimir Golovnev
76a3f57996 Merge pull request #11494 from thalieht/allowrecheck
Reallow to force recheck torrents that aren't fully started
2019-11-18 10:09:55 +03:00
thalieht
4ffc0cff12 Reallow to force recheck torrents that aren't fully started 2019-11-16 22:13:35 +02:00
Chocobo1
5d46c9b2d6 Revise "speed limits" related code
The old code has a wrong comparison which compares speed limits
in different magnitude: bytes vs KiB. The comparison is removed.
Also the old code treats values that are smaller than 1024 as unlimited
speed which is clearly wrong.
2019-11-17 02:27:59 +08:00
Mike Tzou
30ca4e6986 Merge pull request #11489 from Chocobo1/webapi
Code cleanup
2019-11-15 11:33:47 +08:00
Chocobo1
0f2c61a207 Remove redundant type casting 2019-11-14 12:18:41 +08:00
Chocobo1
b55403ce66 Pass TriStateBool by value 2019-11-14 12:14:30 +08:00
Chocobo1
640f52c05f Let eta function return signed integer
We already use signed integer internally so it make sense to return it
as-is.
2019-11-14 12:14:29 +08:00
Chocobo1
8fe8cbd3d1 Reuse code path in switch cases 2019-11-14 12:14:29 +08:00
Chocobo1
9b5df92078 Give better name to parameter checking function
This function will throw exceptions if the required parameters do not
exsit hence a stronger word is more appropriate here.

Also change the function parameter type to QVector. We don't need the
duplicate entries checking as currently we only use 3 fields at max and
can be easily checked by hand. So drop back to QVector which can be
constructed more efficiently.
2019-11-14 12:14:20 +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
Mike Tzou
e69df60f11 Merge pull request #11462 from jagannatharjun/cmake
Fix CMake Windows compilation
2019-11-12 14:37:48 +08:00
Prince Gupta
e3879f9ab9 CMake: Use libraries from winconf.pri 2019-11-12 10:43:25 +05:30
Mike Tzou
e009f17889 Merge pull request #11476 from Chocobo1/lupdate
Address lupdate warnings
2019-11-12 12:47:44 +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
Chocobo1
d936bca268 Move DownloadHandlerImpl class to its own file
This also resolves lupdate warning.
2019-11-11 19:41:10 +08:00
Chocobo1
b4c518e075 Run lupdate in CI 2019-11-11 16:40:15 +08:00
Chocobo1
9ef2cd48e0 Fix translation not applied 2019-11-11 16:39:55 +08:00
sledgehammer999
eff0208382 Bump Web API version
Closes #11403
2019-11-11 02:18:59 +02:00
sledgehammer999
0ff3b7641d Correctly update WebUI translations 2019-11-11 02:13:35 +02:00
sledgehammer999
871161310b Sync translations from Transifex and run lupdate 2019-11-11 02:03:06 +02:00
Mike Tzou
d12468ffb5 Merge pull request #11354 from thalieht/pausechecking
Reallow to pause checking torrents
2019-11-09 09:28:18 +08:00
thalieht
f150b3077d Reallow to pause checking torrents 2019-11-08 19:14:50 +02:00
Mike Tzou
6a6c05fba2 Merge pull request #11423 from nl6720/systemd-unit
Order qbittorrent-nox@.service after network-online.target
2019-11-05 09:42:35 +08:00
Mike Tzou
50c20e1ef4 Merge pull request #11446 from Chocobo1/handle
Clean up in Session class
2019-11-05 09:42:19 +08:00
Chocobo1
b408a09755 Remove unused type alias 2019-11-04 13:47:30 +08:00
Chocobo1
1b47350952 Remove anonymous function forward declarations
Also reorder the functions slightly to make it compile.
2019-11-04 12:21:16 +08: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
a7f38eaa82 Merge pull request #11374 from horgan/patch-1
Fix country name misspelling
2019-11-03 00:43:48 +08:00
horgan
89d214bb8f Fix country name misspelling 2019-11-03 00:17:04 +08:00
Mike Tzou
6da39d9279 Merge pull request #11422 from Chocobo1/buffer
Reserve memory for file data buffers
2019-11-02 13:16:21 +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
Mike Tzou
d944a0ccbd Merge pull request #11426 from Chocobo1/priority
Add option to control qBittorrent process memory priority
2019-11-01 10:34:39 +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
nl6720
a40d490b76 Order qbittorrent-nox@.service after network-online.target
This ensures that qbittorrent-nox doesn't start while the network is not up yet.
2019-10-30 09:25:24 +02:00
Mike Tzou
c1e0207454 Merge pull request #11307 from Chocobo1/session_conf
Clean up Session class configure routines
2019-10-30 15:13:13 +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
Mike Tzou
c73d698718 Merge pull request #11409 from Chocobo1/dpi
Fix screen scaling factor calculation
2019-10-29 09:56:17 +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
9c466d84ec Bump to 4.2.0beta1 2019-10-27 17:22:47 +02:00
sledgehammer999
721ba608c7 Update Changelog 2019-10-27 17:21:30 +02:00
sledgehammer999
009ccbef7f Bump Web API version
Closes #11304
2019-10-27 17:20:28 +02:00
Mike Tzou
0de5cbaa4b Merge pull request #11377 from Chocobo1/listeningIPs
Clean up "network interfaces configuration" code
2019-10-24 15:02:18 +08: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
Mike Tzou
11bebd50d9 Merge pull request #11382 from Chocobo1/cmake
Fix missing libraries in cmake-mingw build
2019-10-23 13:31:20 +08:00
Mike Tzou
06a3a30619 Merge pull request #11384 from Chocobo1/autotools
Update autotools scripts
2019-10-21 11:43:22 +08:00
Chocobo1
d0e084ce1d Update m4 scripts 2019-10-20 01:28:10 +08:00
Chocobo1
48d6286714 Regenerate build-aux scripts
It's been a while since the last update (26bf838a0b)
and there is a lot of changes in upstream.
2019-10-20 01:28:10 +08:00
Chocobo1
bb23366912 Fix missing libraries in cmake-mingw build 2019-10-19 14:03:39 +08:00
Mike Tzou
c5da4d1500 Merge pull request #11344 from Chocobo1/defines
Update libtorrent build defines on Windows
2019-10-12 10:42:22 +08:00
Chocobo1
5e671a4b0b Allow to select multiple entries in "banned IP" dialog 2019-10-11 21:58:35 +08:00
Chocobo1
ccbd9c83e2 Update libtorrent build defines on Windows
`TORRENT_USE_LIBCRYPTO` replaced `TORRENT_USE_OPENSSL` since OpenSSL 1.1.
`TORRENT_DISABLE_RESOLVE_COUNTRIES` has been removed since libtorrent 1.2.
2019-10-09 10:44:42 +08:00
Mike Tzou
c7f092b95f Merge pull request #11322 from Chocobo1/dpi
Use screen real physical DPI on Windows
2019-10-04 12:00:22 +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
Mike Tzou
339e195043 Merge pull request #11313 from Chocobo1/queue
Preserve relative order when moving to top/bottom in queue
2019-10-03 09:48:30 +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
Mike Tzou
c062a31f12 Merge pull request #11293 from Chocobo1/qt
Code clean up
2019-10-01 12:49:54 +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
Mike Tzou
68dcc972fa Merge pull request #11270 from Chocobo1/mutex
Use non-recursive mutex
2019-09-28 12:33:31 +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
Mike Tzou
5708e53f0a Merge pull request #11264 from Chocobo1/hotkey
Add ability to trigger actions via keypad enter key
2019-09-24 10:48:44 +08:00
sledgehammer999
918ccefdc4 Bump to 4.2.0alpha2 2019-09-23 21:46:08 +03:00
sledgehammer999
85133a6680 Update Changelog 2019-09-23 21:44:35 +03: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
Mike Tzou
eebb2186c7 Merge pull request #11215 from xnoreq/master
WebUI: fix escaping of HTML special characters
2019-09-22 13:34:35 +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
Mike Tzou
72e511e3c4 Merge pull request #11254 from Chocobo1/autoTMM
Fix seeding failed after creating a new torrent
2019-09-20 13:25:53 +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
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
Mike Tzou
bf64fe0d2f Merge pull request #11232 from Chocobo1/escape
Revise HTML escaping in GUI
2019-09-16 13:26:49 +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
Mike Tzou
fdde2184f5 Merge pull request #11212 from Chocobo1/padFiles
Add option to align file to piece boundary when creating new torrent
2019-09-15 13:02:18 +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
Mike Tzou
b144d3b797 Merge pull request #11208 from Chocobo1/storage
Improve SettingsStorage behavior
2019-09-09 08:28:31 +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
Mike Tzou
ee0f38a696 Merge pull request #11194 from Chocobo1/filename
Fix filename validation on non-Windows OS
2019-09-06 12:00:42 +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
Mike Tzou
ef8b37f7fa Merge pull request #11182 from Chocobo1/addPeer
Move error logging of adding peers to the proper place
2019-09-05 09:52:02 +08:00
Chocobo1
2396ef5bd6 Move error logging of adding peers to the proper place 2019-09-04 16:09:24 +08:00
Mike Tzou
80bf5978de Merge pull request #11181 from Chocobo1/fix
Add check for null pointer
2019-09-04 12:09:22 +08:00
Chocobo1
3104291734 Add check for null pointer
Fix up d657c87243.
2019-09-03 22:26:41 +08:00
Mike Tzou
0b58fadc83 Merge pull request #11179 from noraj/patch-1
Fix ambiguity in GitHub Issue template
2019-09-03 12:13:46 +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
Alexandre ZANNI
21d7ca8eab Fix ambiguity in GitHub Issue template 2019-09-02 20:16:26 +02:00
Mike Tzou
1bb06a7428 Merge pull request #11157 from Chocobo1/hostaddr
Construct QHostAddress more efficiently
2019-09-02 13:40:43 +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
Mike Tzou
4a9fc48dee Merge pull request #11135 from Chocobo1/fix
Initialize pointers
2019-08-28 15:40:12 +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
Mike Tzou
4a0f5a0c15 Merge pull request #11120 from Chocobo1/peerwidget
Clean up PeerListWidget class
2019-08-28 12:04:12 +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
sledgehammer999
69f665ed01 Update Changelog 2019-08-24 19:44:23 +03: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
Mike Tzou
9b611a6207 Merge pull request #11028 from Piccirello/webui-extract-localstorage
Extract WebUI localStorage access into class
2019-08-20 09:08:16 +08: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
Mike Tzou
f339f629ae Merge pull request #11080 from Piccirello/remove_duplicate
Remove duplicate log line
2019-08-17 12:27:39 +08:00
Tom Piccirello
24ec4744df Remove duplicate log line 2019-08-15 13:05:28 -07:00
Chocobo1
94f7a095bb Implement proper equal operators 2019-08-16 01:35:41 +08:00
sledgehammer999
10afa8166b Bump to 4.2.0alpha1 2019-08-15 14:21:08 +03:00
sledgehammer999
26abbb12fa Update Changelog 2019-08-15 14:18:29 +03:00
Mike Tzou
d639c16f72 Merge pull request #11075 from Chocobo1/cache
Cache and reuse detected MIME type
2019-08-15 11:11:40 +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
Mike Tzou
973da6feb8 Merge pull request #11066 from Chocobo1/i18n
Fix translation issues
2019-08-14 13:05:21 +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
146ef69346 Merge pull request #11055 from glassez/rss-api
Allow to refresh RSS item(s) via WebAPI
2019-08-12 13:58:07 +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
Mike Tzou
2f32b0962e Merge pull request #11049 from Chocobo1/python
Update outdated strings
2019-08-10 11:32: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
Mike Tzou
bd493e261e Merge pull request #10523 from Chocobo1/port
Use a randomized port number for the first run
2019-08-08 14:12: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
5558092c1e Merge pull request #11033 from glassez/cmake
CMake: Fix Windows build (once again)
2019-08-07 20:31:32 +03: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
ec4240dd06 Merge pull request #11016 from Chocobo1/vista
Raise minimum support to Windows 7
2019-08-06 10:17:11 +08:00
Mike Tzou
d8f0c245f4 Merge pull request #11012 from Piccirello/changelog
Sync Changelog entries between branches
2019-08-06 10:16:46 +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
Mike Tzou
733da5ffdb Merge pull request #10153 from Piccirello/webui-files-table
Display files hierarchically in Web UI content tab
2019-08-06 10:15:22 +08:00
Chocobo1
d92bf13706 Use a QString directly instead of QStringList 2019-08-05 20:56:16 +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
Thomas Piccirello
0fa28f233f Add ability to add and ban a peer from the Web UI 2019-08-05 01:12:59 -07:00
Chocobo1
f4e7b8c6bf Replace QMap with QHash 2019-08-05 09:51:39 +08:00
Chocobo1
c004a84f84 Avoid redundant actions/conversions
QSet::contains(QSet &) isn't doing anything magical it still has the usual loop
inside, so lets just save all the container conversions and do the loop ourselves.
2019-08-05 09:51:38 +08:00
Chocobo1
a3ca277eaf Avoid back and forth string conversions 2019-08-05 09:42:38 +08:00
Mike Tzou
6cc7c700b8 Merge pull request #11000 from Chocobo1/sync
Clean up WebAPI code
2019-08-05 09:41:59 +08:00
Thomas Piccirello
60a1835813 Display files hierarchically in Web UI content tab 2019-08-04 16:02:41 -07:00
Thomas Piccirello
bc8f9840e2 Sync Changelog entries between branches
Closes #10959.
2019-08-04 14:27:22 -07:00
Chocobo1
2f0ae7a7d8 Raise minimum support to Windows 7 2019-08-05 02:31:19 +08:00
Vladimir Golovnev
f4329779e9 Merge pull request #11005 from glassez/cmake
Fix/Improve Cmake scripts
2019-08-03 10:02:01 +03:00
Vladimir Golovnev (Glassez)
6fe063146f CMake: Apply QBT_ADDITONAL_FLAGS on all systems 2019-08-02 19:32:56 +03:00
Vladimir Golovnev (Glassez)
3093751fa4 CMake: Fix compilation on Windows with MSVC 2019-08-02 19:32:53 +03:00
Vladimir Golovnev (Glassez)
7d636d8c3f CMake: Accept <Package>_ROOT from environment 2019-08-02 19:32:48 +03:00
Chocobo1
2346bc8f7c Replace obsoleted QDateTime::toTime_t() 2019-08-01 23:19:21 +08:00
Chocobo1
cfe83275d3 Avoid redundant data copy by using JSON objects directly 2019-08-01 23:18:50 +08:00
Chocobo1
f6ee96ed83 Replace QVariantMap by QVariantHash 2019-07-31 23:48:41 +08:00
Chocobo1
7f300b757f Use C++11 uniform initialization 2019-07-31 23:48:41 +08:00
Chocobo1
bad588a749 Move data keys into anonymous namespace and sort them 2019-07-31 23:48:41 +08:00
Chocobo1
25a94ee60a Avoid redundant data conversions and lookups 2019-07-31 23:48:41 +08: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
Mike Tzou
3811612f80 Merge pull request #10982 from Chocobo1/cleanup
Code base cleanup
2019-07-31 14:24:42 +08:00
Chocobo1
c1659a189b Fix messed up symbols in log 2019-07-31 02:10:22 +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
Chocobo1
25c56d3b66 Make use of Utils::Misc::loadWinAPI 2019-07-31 02:10:22 +08:00
Chocobo1
5c015d573b Forward declare types as much as possible 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
Mike Tzou
45690967a0 Merge pull request #10970 from Piccirello/webui-search-context-menu
Add context menu to Web UI search table
2019-07-29 12:01:18 +08:00
Mike Tzou
fd17b9bbf0 Merge pull request #10988 from Chocobo1/qbext
Fix incomplete file extension not applied for new torrents
2019-07-29 11:17:38 +08:00
Chocobo1
38fa6d2aee Fix incomplete file extension not applied for new torrents 2019-07-28 13:05:46 +08:00
Mike Tzou
7da2d04898 Merge pull request #10941 from Piccirello/fix-webui-magnet-trackers
Fix WebUI removing parameters from magnet links
2019-07-27 11:50:54 +08: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
ca44b40222 Move variables to the proper scope 2019-07-26 22:32:18 +08:00
Thomas Piccirello
c17d653544 Fix WebUI removing parameters from magnet links
Closes #10939
2019-07-26 03:18:16 -07:00
Thomas Piccirello
65dfec9acf Minor refactor on WebUI download page 2019-07-26 03:17:33 -07:00
Thomas Piccirello
6ea6e52d99 Add context menu to Web UI search table
Web UI implementation of #10852.
2019-07-26 02:54:11 -07:00
Thomas Piccirello
35ebd9a095 Default WebUI search tab to enabled
Search plugins and categories are now retrieved when the Search tab is first switched to. This prevents possible unnecessary instantiation of the SearchPluginManager.
2019-07-26 02:53:09 -07:00
Thomas Piccirello
e0037b819a Always send paths with '/' as file separator 2019-07-26 01:03:22 -07:00
Thomas Piccirello
93c8be5b5d Ignore npm installed packages 2019-07-26 01:02:32 -07:00
Mike Tzou
f121e67aba Merge pull request #10954 from Chocobo1/column
Add availability column
2019-07-26 02:09:22 +08:00
Chocobo1
19b8a52e44 Add helper function to convert to fixed-point string 2019-07-25 13:17:14 +08:00
Chocobo1
60faba60ea Add availability column
Closes #1632.
2019-07-25 13:17:14 +08:00
Mike Tzou
cfedbf8e6b Merge pull request #10973 from Chocobo1/peeraddr
Improve parsing in BitTorrent::PeerAddress::parse
2019-07-25 12:09:29 +08:00
Chocobo1
9d88dd2604 Rename class variables 2019-07-24 22:22:02 +08:00
Chocobo1
ccec50e18e Improve parsing in BitTorrent::PeerAddress::parse 2019-07-24 22:22:02 +08:00
Mike Tzou
cf47342cec Merge pull request #10527 from fusioneer-GitHub/webui_tags
Implement tag management for WebUI
2019-07-24 22:07:31 +08:00
Vladimir Golovnev
02ab77053e Merge pull request #10961 from glassez/fastresume
Save updated resume data for completed torrents
2019-07-23 18:47:30 +03: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
Vasiliy Halimonchuk
7fb1e07b39 Remove unused variables 2019-07-23 13:31:50 +03:00
Vasiliy Halimonchuk
80d1c48f0d Fix typos 2019-07-23 13:31:49 +03:00
Vasiliy Halimonchuk
fe0fb3a251 Refactor var to let/const or this 2019-07-23 13:31:43 +03:00
Vasiliy Halimonchuk
b530e19a44 Implement tag management for WebUI 2019-07-23 13:30:11 +03: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
431ab095e8 Merge pull request #10963 from glassez/peeraddress
Extract PeerAddress class into separate file
2019-07-23 08:40:48 +03:00
Vladimir Golovnev (Glassez)
4021a0c7ce Store libtorrent native file index in QHash 2019-07-23 06:43:39 +03:00
Vladimir Golovnev (Glassez)
3d70ebfc46 Save updated resume data for completed torrents
If fastresume data was rejected we need to save updated
resume data after torrent finishes rechecking.
2019-07-23 06:32:13 +03:00
Vladimir Golovnev (Glassez)
ad6a40d5f4 Extract PeerAddress class into separate file 2019-07-23 06:27:35 +03:00
Vladimir Golovnev (Glassez)
b822d2c380 Fix requested torrent resume data handling
Session should increase an appropriate counter each time
the torrent resume data is requested to save.
2019-07-22 14:22:26 +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
efae685c25 Merge pull request #10951 from glassez/cmake
Improve CMake configuration
2019-07-21 19:34:02 +03:00
Vladimir Golovnev (Glassez)
60ffa3030e Don't use deprecated libtorrent features 2019-07-21 19:28:28 +03:00
Vladimir Golovnev (Glassez)
38cf1fb3ee Improve CMake configuration
Don't search for QtSingleApplication library.
Fix building on Windows with MinGW.
2019-07-21 16:41:17 +03:00
Mike Tzou
4f06c091c9 Merge pull request #10949 from Chocobo1/inject
Prevent command injection via "Run external program" function
2019-07-21 12:05:02 +08:00
Chocobo1
a610c8567e Prevent command injection via "Run external program" function
Closes #10925.
2019-07-20 17:42:09 +08:00
Mike Tzou
e53d4e5ff7 Merge pull request #10946 from Chocobo1/override
Add override keyword to functions
2019-07-20 11:37:19 +08:00
Chocobo1
4a90716843 Add override keyword to functions 2019-07-19 11:58:56 +08:00
Mike Tzou
45eba9ec31 Merge pull request #10944 from Chocobo1/cmake
Improve CMake build system
2019-07-19 11:52:33 +08:00
Chocobo1
752d4b85ea Remove compiler warning flags
Apperently nobody care about those warnings so just remove them and let
other more important warnings stand out.
2019-07-18 14:54:51 +08:00
Chocobo1
4153a2e2af Use 2 cpus when compiling on coverity_scan branch 2019-07-18 14:54:51 +08:00
Mike Tzou
7f3291c3de Merge pull request #10942 from Chocobo1/cpp
Move implementation to its own file
2019-07-18 14:06:00 +08:00
Mike Tzou
937c5be4a9 Merge pull request #10931 from Piccirello/webui-mobile-longpress
Add WebUI support for triggering context menus on mobile
2019-07-18 14:01:44 +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
Vladimir Golovnev
620e1be5a7 Merge pull request #10914 from jagannatharjun/icon-provider
Incorporate GuiIconProvider inside UIThemeManager
2019-07-17 04:39:51 +03:00
Chocobo1
7a5e883cd2 Revise inline keyword usage
And let compiler decide whether to inline functions.
2019-07-16 18:42:55 +08:00
Chocobo1
f6f8aaf3db Put internal function into anonymous namespace 2019-07-16 18:42:26 +08:00
Chocobo1
f993230582 Use uniform initialization 2019-07-16 18:42:26 +08:00
Chocobo1
e74b984a0a Rely on Qt ownership to delete class members 2019-07-16 18:42:26 +08:00
Thomas Piccirello
6af01cfcbe Add WebUI support for triggering context menus on mobile 2019-07-16 02:21:36 -07:00
Thomas Piccirello
f441d561a2 Refactor duplicate code 2019-07-16 01:37:35 -07:00
Prince Gupta
8267a4fef9 Incorporate GuiIconProvider inside UIThemeManager 2019-07-16 09:31:33 +05:30
Mike Tzou
7071c5bda0 Merge pull request #10927 from Piccirello/webui-right-click
Move WebUI copy actions under a submenu
2019-07-16 11:17:55 +08:00
Mike Tzou
a887e1c295 Merge pull request #10926 from Piccirello/webui-protocol-handler
Move registering WebUI magnet handler behind toolbar option
2019-07-16 11:17:24 +08:00
Vladimir Golovnev
17541b0d34 Merge pull request #10921 from glassez/ignore-actions
Ignore some actions on uninitialized torrents
2019-07-15 08:44:42 +03:00
Thomas Piccirello
ba40719d76 Move WebUI copy actions under a submenu 2019-07-14 20:25:11 -07:00
Mike Tzou
e1d073bc6d Merge pull request #10877 from jerrymakesjelly/advanced-preferences
Add advanced options in WebUI
2019-07-15 10:11:09 +08:00
Mike Tzou
94e2c44840 Merge pull request #10918 from Chocobo1/trackers
Various code clean up
2019-07-15 09:59:45 +08:00
Thomas Piccirello
1c3c81db99 Fix missing parenthesis
Introduced in #9995.
2019-07-14 17:41:11 -07:00
Thomas Piccirello
324d20d42c Move registering WebUI magnet handler behind toolbar option
Alert the user if the operation fails due to lack of browser support
2019-07-14 17:40:42 -07:00
Vladimir Golovnev (Glassez)
87d98403f4 Don't break torrent checking 2019-07-14 12:34:50 +03:00
Vladimir Golovnev (Glassez)
9462685c78 Ignore some actions on uninitialized torrents
Some actions can lead to an inconsistent state if applied
to an uninitialized torrent, so we just ignore them.
2019-07-14 12:34:28 +03:00
Vladimir Golovnev
b9da9ebfdf Merge pull request #10910 from glassez/fix-add-torrent
Avoid race conditions when adding torrent
2019-07-14 10:45:05 +03:00
Mike Tzou
75a2274b66 Merge pull request #9995 from thalieht/rename-queue
Rename priority to queue in the context of torrents
2019-07-14 11:13:59 +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
e917c371d9 Use camelCase for a few WebUI vars 2019-07-13 14:04:16 +03:00
thalieht
7b31868e3c Rename priority to queue in the context of torrents 2019-07-13 14:04:16 +03:00
Vladimir Golovnev (Glassez)
644dc9792d Avoid race conditions when adding torrent 2019-07-13 12:06:07 +03:00
Zhaoyu Gan
07649f713e Add advanced options in WebUI 2019-07-13 14:41:26 +08: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
Mike Tzou
afa73d4e89 Merge pull request #10916 from Chocobo1/automanaged
Implement tri-state checkbox action in menu
2019-07-13 11:24: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
0aa6f39db0 Merge pull request #10867 from airium/master
Avoid word wrap in webui footer
2019-07-12 11:00:23 +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
Mike Tzou
51fa98aa0b Merge pull request #10702 from jagannatharjun/qss-styling
Allow Styling through QSS
2019-07-10 19:32:19 +08:00
Vladimir Golovnev
7d67cc5de7 Merge pull request #10871 from glassez/fix-torrent-checking
Fix torrent checking issues
2019-07-10 06:35:30 +03:00
Prince Gupta
a24925c858 Allow styling with QSS stylesheets 2019-07-09 19:56:55 +05:30
Vladimir Golovnev (Glassez)
9399b876eb Fix torrent checking issues
Start all torrents auto-managed to prevent simultaneous checking
of multiple torrents.
Handle checking state of paused torrent to prevent it from being
resumed when qBittorrent is closed until checking isn't complete.
2019-07-09 08:54:50 +03:00
Mike Tzou
91742d4a53 Merge pull request #10870 from Chocobo1/libt
Use newer libtorrent API (part 5)
2019-07-06 10:57:08 +08:00
Chocobo1
b9094ff8a5 Use proper log message when there are no error 2019-07-05 23:46:12 +08:00
Chocobo1
664cfe7d69 Fix torrent properties not saved for paused torrents 2019-07-05 23:46:12 +08:00
Chocobo1
c4dbe84832 Use newer libtorrent API 2019-07-05 23:46:12 +08:00
Mike Tzou
33b225ac6d Merge pull request #10879 from Chocobo1/listen
Add more libtorrent options to Advanced Settings
2019-07-04 06:28:25 +08:00
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
Chocobo1
73cf3fb68f Use LogMsg() helper 2019-07-02 22:34:22 +08:00
Mike Tzou
4b25f87859 Merge pull request #10874 from Chocobo1/qt
Replace obsoleted Qt functions
2019-07-02 10:57:06 +08:00
Vladimir Golovnev
38362664ce Merge pull request #10866 from glassez/instman
Incorporate QtSingleApplication logic into qBittorrent codebase
2019-07-01 17:58:43 +03:00
Chocobo1
e6c448aa4f Replace obsoleted QProcess::finished(int)
It is replaced by QProcess::finished(int, QProcess::ExitStatus).
2019-07-01 19:08:37 +08:00
Chocobo1
4eff268095 Replace obsoleted QFontMetrics::width()
Qt 5.13 marked QFontMetrics::width() obsolete.
2019-07-01 14:48:53 +08:00
Vladimir Golovnev (Glassez)
c7f3693ad1 Implement "Application instances manager" 2019-06-30 20:02:46 +03:00
Mike Tzou
c0557c296a Merge pull request #10865 from Chocobo1/libt
Use newer libtorrent API (part 4)
2019-06-29 15:28:12 +08:00
Mike Tzou
11000412d8 Merge pull request #10864 from Chocobo1/qapp
Tighten up qtsingleapplication
2019-06-29 15:27:58 +08:00
airium
b389650465 Avoid word wrap in webui footer 2019-06-29 01:15:59 +08:00
Chocobo1
2bc91fba3e Use newer libtorrent API 2019-06-28 20:36:31 +08:00
Chocobo1
46ee193cd8 Restrict QLocalServer access
The default is world access which means even even unprivileged local
accounts can connect to it too.
2019-06-28 09:40:21 +08:00
Chocobo1
6119cb370f Drop suspiciously large data
This is to avoid exhausting system memory.
2019-06-27 20:29:02 +08:00
Mike Tzou
cd654d61fd Merge pull request #10852 from Chocobo1/menu
Improvements to search widget
2019-06-27 10:49:38 +08:00
Mike Tzou
a305032c39 Merge pull request #10853 from Chocobo1/limits
Adjust open file descriptor limit on startup
2019-06-27 10:49:17 +08:00
Chocobo1
da2bfd2457 Replace QList by QVector 2019-06-26 20:30:07 +08:00
Chocobo1
5b9b5ce577 Remove buttons from search widget
These buttons are replaced by right-click menu actions.
2019-06-26 20:30:07 +08:00
Chocobo1
4f5302adf8 Add more copy field actions to search widget
Closes #10250.
2019-06-26 20:30:07 +08:00
Chocobo1
d0bfe9a661 Adjust open file descriptor limit on startup
This raises qbt's open file descriptor limit to the available maximum
(within user privileges) and thus users don't need to adjust it
manually anymore.
2019-06-26 14:08:43 +08:00
Chocobo1
26ff9150a2 Rename label in search widget 2019-06-26 10:52:13 +08:00
Mike Tzou
3d6041ebbd Merge pull request #10850 from Chocobo1/menu
Right click menu improvements
2019-06-26 10:45:45 +08:00
Chocobo1
af5af0ad3f Remove unused lambda capture 2019-06-25 16:12:51 +08:00
Chocobo1
32a861fd1b Add right click menu to SearchJobWidget 2019-06-25 16:12:51 +08:00
Chocobo1
cf89c2f5bf Properly deallocate actions when menu closed
Fixup 3748b995ff.
2019-06-24 11:02:35 +08:00
Chocobo1
412e326cf2 Avoid allocating a new menu/action manually 2019-06-24 11:02:35 +08:00
Chocobo1
04e7b3f6d2 Move copy actions under a submenu 2019-06-24 11:02:34 +08:00
Mike Tzou
8d9b4a19bd Merge pull request #10844 from Chocobo1/cache
Remove upper limit of disk cache setting
2019-06-24 11:01:05 +08:00
Mike Tzou
ded825e419 Merge pull request #10843 from Chocobo1/boost
Remove workaround for boost 1.39
2019-06-24 11:00:47 +08:00
Chocobo1
8220f8d003 Remove MSVC-only compilation flags
Our code base is able to compile without warnings
even when these flags removed.
2019-06-23 12:38:03 +08:00
Chocobo1
7c8948c45e Move _FILE_OFFSET_BITS to its place
_FILE_OFFSET_BITS is only useful for glibc.
2019-06-23 11:44:21 +08:00
Chocobo1
e418ea03e2 Move __USE_W32_SOCKETS to its place
From boost.asio documentation:
> The following platforms may also work:
>   Win32 using Cygwin. (__USE_W32_SOCKETS must be defined.)
2019-06-23 11:39:23 +08:00
Chocobo1
0b1b3c1f84 Use numeric_limits instead of constants from C
In C++, using numeric_limits is more idiomatic compared to using constants.
2019-06-23 11:16:58 +08:00
Chocobo1
38b6ee9e75 Remove workaround for boost 1.39
... by raising minimum version to 1.40.
Bug report: https://svn.boost.org/trac10/ticket/3095
2019-06-23 11:09:05 +08:00
Chocobo1
75c80c3716 Remove limits of "Disk cache expiry interval" setting 2019-06-22 17:13:26 +08:00
Chocobo1
042cd4267f Remove upper limit of "Disk cache" setting 2019-06-22 17:13:24 +08:00
Mike Tzou
1831f71cc4 Merge pull request #10833 from Chocobo1/invokeMethod
Use functor based QMetaObject::invokeMethod
2019-06-22 11:24:47 +08:00
Mike Tzou
17c601e8b8 Merge pull request #10835 from Chocobo1/exec
Avoid creating unnecessary event loops
2019-06-22 11:24:20 +08:00
Mike Tzou
5e76f7d699 Merge pull request #10838 from Piccirello/webui-rename-char-encoding
Fix WebUI encoding of special characters
2019-06-22 11:23:44 +08:00
Mike Tzou
34fbaf3325 Merge pull request #10830 from jagannatharjun/fix-cmake
Fix CMake Windows compilation
2019-06-22 11:23:12 +08:00
Prince Gupta
ece70daaa5 Fix CMake Windows compilation 2019-06-21 18:05:19 +05:30
Tom Piccirello
368fbd9e7d Fix encoding of special characters
Special characters would get html encoded (& -> &amp;). This has been tested against several payloads (e.g. <script>alert(0)</script>) to ensure it's not vulnerable to XSS.
2019-06-20 22:15:32 -07:00
Chocobo1
e47d7fe55c Remove outdated defines 2019-06-21 01:48:55 +08:00
Chocobo1
11fdf91196 Suppress compiler warning
The debug message is emitting a format mismatch warning.
Fixup 4880dc812c.

And add curly brackets to if statement.
2019-06-21 00:32:12 +08:00
Chocobo1
88c3ffbef8 Avoid creating unnecessary event loops
This is part 2.
2019-06-20 11:42:54 +08:00
Chocobo1
e31c1ca780 Use functor based QMetaObject::invokeMethod 2019-06-20 11:36:38 +08:00
Mike Tzou
183db3475a Merge pull request #10816 from Chocobo1/ioerror
Misc. fixes
2019-06-20 11:35:37 +08:00
Chocobo1
4880dc812c Use appropriate type 2019-06-19 18:52:24 +08:00
Chocobo1
516c968373 Support year unit in userFriendlyDuration() 2019-06-19 18:52:24 +08:00
Chocobo1
1de4c2497c Fix wrong "Time Active" value displayed
Closes #9612.
2019-06-19 18:52:24 +08:00
Chocobo1
19f50a363d Fix crash when removing phantom tags
Normally a tag is stored in both session and torrent's fastresume.
A phantom tag is a tag that is stored in fastresume but not in
session.
This crash can occur when user resets his config file and choose
to remove tag from torrent.

Closes #10569.
2019-06-19 18:52:24 +08:00
Chocobo1
e83019bdfa Set wheel event to accepted only if we handle it 2019-06-19 18:52:24 +08:00
Chocobo1
a6c5a90630 Remove redundant variable 2019-06-19 18:52:24 +08:00
Chocobo1
3b015db77d Add comparison operators for ProxyConfiguration 2019-06-19 18:52:24 +08:00
Chocobo1
623210df58 Improve handleFileErrorAlert error message 2019-06-19 18:52:23 +08:00
Mike Tzou
cfd02a4355 Merge pull request #10786 from Chocobo1/dialog
Avoid creating unnecessary event loops
2019-06-19 11:02:09 +08:00
Mike Tzou
68da10c39d Merge pull request #10710 from Kolcha/mac-icon
Add some padding to macOS app icon
2019-06-18 19:58:49 +08:00
Vladimir Golovnev
ec33cdd8b5 Merge pull request #10811 from glassez/fix-unclear-name
Rename "fromNativePath" to "toUniformPath"
2019-06-18 09:15:50 +03:00
Vladimir Golovnev (Glassez)
8e65317d61 Rename "fromNativePath" to "toUniformPath"
Unlike "toNativePath" which name clearly reflects the function result
"fromNativePath" has no such clear meaning.
Since this function converts path into uniform format "toUniformPath"
is better name.
2019-06-17 15:55:49 +03:00
Chocobo1
3748b995ff Avoid creating unnecessary event loops
The `exec()` method will create another event loop and transfer
control over there which might introduce unexpected bugs.
2019-06-17 20:44:57 +08:00
Mike Tzou
206bb018dd Merge pull request #10801 from Chocobo1/timeout
Add WebAPI session timeout settings
2019-06-17 00:18:01 +08:00
Mike Tzou
46d445d042 Merge pull request #10792 from Chocobo1/rename2
Remove empty leftover folders after rename properly
2019-06-16 12:22:22 +08:00
Chocobo1
a64f3bbc6a Reorder if conditions slightly 2019-06-15 19:08:24 +08:00
Chocobo1
9893a415c0 Fix updated save path not saved for paused torrents 2019-06-15 19:08:23 +08:00
Chocobo1
7d860b6c24 Log save_resume_data_failed_alert 2019-06-15 19:08:23 +08:00
Chocobo1
4e87aebf55 Don't remove parent directories
QDir::rmpath removes *all* parent directories while QDir::rmdir removes
the specified directory.
2019-06-15 19:08:23 +08:00
Chocobo1
440860c4a9 Properly remove empty leftover folders after rename
TorrentInfo::origFilePath will return the very original path from
.torrent file, not the most recent file path before the rename operation
and thus the code would not be working as we expected.
2019-06-15 19:08:23 +08:00
Chocobo1
89124bdcc8 Add WebAPI session timeout settings
Raise default timeout to 1 hour.
2019-06-15 18:57:19 +08:00
Mike Tzou
fa3ad7eb57 Merge pull request #10800 from silverqx/focus-behavior-row-options-dlg
Focus behavior row in Options dialog
2019-06-15 11:47:08 +08:00
silverqx
3e97793ef1 Focus behavior row in Options dialog 2019-06-13 17:31:54 +02:00
Mike Tzou
a65f36592a Merge pull request #10788 from silverqx/add-zlib-version-to-gui
Add zlib version to GUI & stackdump
2019-06-13 09:41:42 +08:00
silverqx
4f4f435e76 Add zlib version to GUI & stackdump 2019-06-12 08:02:24 +02:00
Mike Tzou
3a0f0c2f58 Merge pull request #10769 from Chocobo1/rename
Fix unable to rename folder on Windows. Closes #9151.
2019-06-10 10:30:01 +08:00
Mike Tzou
56f0d0fef5 Merge pull request #10781 from Chocobo1/web
Avoid double lookup
2019-06-10 10:27:14 +08:00
Chocobo1
8191f1498a Log file rename failed errors 2019-06-09 19:07:43 +08:00
Chocobo1
eabcae1018 Fix unable to rename folder on Windows
The bug occurs when the new path and old path only differ by letter case.
2019-06-09 19:07:43 +08:00
Chocobo1
9c747d3c6d Move renameSelectedFile(BitTorrent::TorrentInfo &) 2019-06-09 19:07:43 +08:00
Chocobo1
62ccfd37b2 Move renameSelectedFile(BitTorrent::TorrentHandle *) 2019-06-09 19:07:43 +08:00
Chocobo1
5b9ff4a015 Avoid double lookup 2019-06-09 18:56:52 +08:00
Mike Tzou
63b0a5b78c Merge pull request #10775 from Chocobo1/speed
Misc. improvements
2019-06-09 01:57:20 +08:00
Chocobo1
7c9309aa52 Fix wrong indentation 2019-06-08 10:54:04 +08:00
Mike Tzou
370544764e Merge pull request #10750 from Chocobo1/modal
Fix unable to control add torrent dialogs when opened simultaneously
2019-06-06 23:16:35 +08:00
Mike Tzou
f3c0cc3cee Merge pull request #10763 from Chocobo1/connect
Use Qt5 connect syntax
2019-06-06 10:18:46 +08:00
Mike Tzou
c95650c4f3 Merge pull request #10752 from thalieht/fw-declare
Forward declare and remove some unused #include
2019-06-06 10:18:26 +08:00
Chocobo1
431e7179ac Remove redundant variable 2019-06-06 00:20:57 +08:00
Chocobo1
fbd5699786 Use switch statement 2019-06-06 00:15:09 +08:00
Chocobo1
e071c31a4e Use Qt5 connect syntax 2019-06-05 14:17:44 +08:00
Chocobo1
dc9d0ed76f Fix unable to control add torrent dialogs when opened simultaneously 2019-06-05 13:24:49 +08:00
Chocobo1
03fdc0e1c4 Remove redundant disconnect()
The dialog is going out-of-scope in these instance and the signal-slot connection will disconnect
automatically.
2019-06-05 13:22:50 +08:00
Chocobo1
014273d7ec Drop support for "BC Link" format
Fixup 19d6de795c.
2019-06-05 00:42:46 +08:00
thalieht
70f8882f87 Group Qt forward declarations separately from the others 2019-06-04 17:48:55 +03:00
thalieht
9995967fbf Remove some unused #include 2019-06-04 17:48:55 +03:00
thalieht
4370a7eb12 Forward declare in a few places 2019-06-04 17:48:55 +03:00
Vladimir Golovnev
6f6033cf1c Merge pull request #10754 from glassez/fix-magnet
Disable "Upload mode" when start preloaded torrent. Closes #10751
2019-06-04 10:56:11 +03:00
Vladimir Golovnev (Glassez)
b644d6685f Disable "Upload mode" when start preloaded torrent 2019-06-04 07:14:21 +03:00
Vladimir Golovnev (Glassez)
4ae4ae3cfc Fix wrong indentation 2019-06-04 06:55:45 +03:00
Vladimir Golovnev (Glassez)
2c145fa57c Fix incorrectly set torrent startup flag 2019-06-04 06:53:17 +03:00
Mike Tzou
b8e205c048 Merge pull request #10741 from Chocobo1/limit
Fix speed limit not applying to IPv6 peers
2019-06-04 11:09:16 +08:00
Vladimir Golovnev
ecb4a76db7 Merge pull request #10742 from glassez/fix-rss
Ignore RSS articles with non-unique identifiers
2019-06-03 17:26:57 +03:00
Vladimir Golovnev (Glassez)
68ee071331 Ignore RSS articles with non-unique identifiers 2019-06-02 13:30:00 +03:00
Vladimir Golovnev (Glassez)
d710bbd9ef Perform more RSS parsing in working thread 2019-06-02 13:29:41 +03:00
Chocobo1
411b956009 Fix speed limit not applying to IPv6 peers
`TORRENT_USE_IPV6` is not used by libtorrent 1.2 anymore.
2019-06-02 15:00:27 +08:00
Mike Tzou
4d92c7e094 Merge pull request #10737 from Chocobo1/time
Use timestamp from alert
2019-06-02 09:40:45 +08:00
Mike Tzou
87dcbbbd23 Merge pull request #10734 from Chocobo1/folder
Use native folder icon in content tree
2019-06-02 09:40:17 +08:00
Chocobo1
3f2ce8a2b7 Remove unused stats_alert handler
Fixup 0fe9cd05c4.
2019-06-01 11:43:00 +08:00
Chocobo1
39830986c2 Use alert's timestamp
This way has better accuracy than running our own timer.
2019-06-01 11:40:23 +08:00
Mike Tzou
84e683cc99 Merge pull request #10732 from Chocobo1/refactor
Avoid using deprecated stats_alert
2019-06-01 10:07:52 +08:00
Chocobo1
f52dcc08eb Use native folder icon in content tree
This icon is used in content tree where all icons should be OS native
and not the ones from qbt.
2019-06-01 10:00:42 +08:00
Chocobo1
49df1cd3c7 Use less operations when building strings 2019-05-31 14:52:08 +08:00
Chocobo1
0fe9cd05c4 Avoid using deprecated stats_alert
From libtorrent doc:
This alert has been superseded by calling post_torrent_updates() regularly on the session object.
2019-05-31 10:58:23 +08:00
Mike Tzou
db88c2d6a5 Merge pull request #10721 from Chocobo1/sort
Fix wrong comparison result
2019-05-31 10:50:55 +08:00
Mike Tzou
683196f916 Merge pull request #10720 from Chocobo1/arrow
Fix arrow too large on macOS
2019-05-31 10:50:29 +08:00
Mike Tzou
bb3634c382 Merge pull request #10711 from Chocobo1/alert
Log performance alerts from libtorrent
2019-05-31 10:50:03 +08:00
Vladimir Golovnev
c5768e3513 Merge pull request #10723 from glassez/fix-seqdl
Fix sequential downloading when redirected
2019-05-30 10:44:03 +03:00
Vladimir Golovnev (Glassez)
05fd0b5859 Fix sequential downloading when redirected 2019-05-29 15:50:02 +03:00
Chocobo1
36cf689432 Fix wrong comparison result
The QString::toInt() might overflow when the string is long.

Closes #10706.
2019-05-29 00:03:04 +08:00
Chocobo1
0d9fcb0c1d Fix arrow too large on macOS
By changing to use natvie UI tree controls.

Closes #10709.
2019-05-28 22:35:22 +08:00
Chocobo1
45bafab4e0 Log performance alerts from libtorrent 2019-05-27 14:46:33 +08:00
Nick Korotysh
61ae820206 Add some padding to macOS app icon
Added 64px padding to 1024px icon and corresponding padding to smaller
icons. A lot of round icons on macOS have the same padding.

fixes #8222, closes #8930
2019-05-27 08:27:42 +03:00
Chocobo1
9232dd30dc Sort function declarations 2019-05-27 09:29:59 +08:00
Mike Tzou
c5430030e3 Merge pull request #10690 from Chocobo1/rtl
Various visual tweaks
2019-05-26 09:23:22 +08:00
Mike Tzou
4df1bca8bb Merge pull request #10705 from Chocobo1/fix
Fix wrong logic
2019-05-25 15:46:20 +08:00
Chocobo1
1b0ffd7781 Fix wrong logic
The error is caused by silly copy-paste error.
Fixup 09ff735007.
2019-05-25 14:55:27 +08:00
Mike Tzou
485fdf910e Merge pull request #10637 from Chocobo1/ngen3
Use newer libtorrent API (part 3)
2019-05-25 14:50:59 +08:00
Chocobo1
09ff735007 Use newer libtorrent API
This commit covers trackerentry.cpp only.
2019-05-25 11:22:57 +08:00
Mike Tzou
ebdf5225a8 Merge pull request #10684 from jagannatharjun/arrow-transfercategory
Replace CheckBox with Arrow in transferlistfilterswidget
2019-05-25 11:21:06 +08:00
Mike Tzou
9387dbce41 Merge pull request #10675 from Chocobo1/tracker
Replace QList by QVector for tracker related operations
2019-05-24 10:11:20 +08:00
Chocobo1
ccbb4576b6 Tweak visuals in Options dialog 2019-05-23 21:27:50 +08:00
Chocobo1
d7afc91975 Avoid combo boxes extending to the right in Options dialog 2019-05-23 21:07:44 +08:00
Prince Gupta
e283026a3c Replace CheckBox with Arrow in transferlistfilterswidget.cpp 2019-05-22 21:08:04 +05:30
Chocobo1
1e029da5ad Fix search icon placement when using RTL languages 2019-05-22 22:22:12 +08:00
Chocobo1
ed6bb0efdc Replace QList by QVector for tracker related operations 2019-05-22 12:57:22 +08:00
Mike Tzou
f86c5442aa Merge pull request #10656 from Chocobo1/vector
Code cleanups
2019-05-20 17:44:42 +08:00
Chocobo1
802af70e2f Fix typos 2019-05-19 18:51:09 +08:00
Chocobo1
cb4c53c848 Follow the type used in libtorrent 2019-05-19 18:51:09 +08:00
Chocobo1
e92209475e Use range-based for loops 2019-05-19 18:51:09 +08:00
Chocobo1
10e1c35998 Avoid unnecessary double lookup 2019-05-19 12:06:18 +08:00
Chocobo1
c75500670d Use forwarding reference when passing function objects
So instead of passing every function objects by value (a copy is made), now function objects
will be handled properly by reference (for lvalues) or by value (for rvalues).
2019-05-19 12:06:18 +08:00
Chocobo1
6738cdd715 Constify exception references 2019-05-19 12:06:18 +08:00
Chocobo1
e288de7ec1 Forward declare as much as possible 2019-05-19 12:06:18 +08:00
Chocobo1
401bdbf3d9 Remove unused functions 2019-05-19 12:06:18 +08:00
Chocobo1
ff707ea5af Change splitToViews() return type to QVector 2019-05-19 12:06:18 +08:00
Mike Tzou
3d6dccc689 Merge pull request #10627 from Chocobo1/alg
Improve removeIf() to support other types
2019-05-16 10:45:55 +08:00
Mike Tzou
c9ff0abade Merge pull request #10638 from Chocobo1/idxRange
Fix assertion fail
2019-05-16 10:39:33 +08:00
Chocobo1
459cdf6071 Fix assertion fail
When fileSize == 0, the second index could be smaller than the first index,
thus trigger the assert check in IndexInterval constructor.

Closes #10611.
2019-05-15 10:22:21 +08:00
Mike Tzou
dca055656a Merge pull request #10600 from Chocobo1/newtorrentdlg
Change "Add new torrent" dialog to horizontal layout
2019-05-15 09:56:49 +08:00
Evgeny Lensky
62c72091ce Change "Add new torrent" dialog to horizontal layout 2019-05-14 11:03:56 +08:00
Chocobo1
c6f3da1097 Improve removeIf() to support set types
We can now replace QMutable*Iterator by removeIf() which usage is more consistent with other
algorithm functions.
2019-05-14 01:26:01 +08:00
Mike Tzou
4ed8b31641 Merge pull request #10591 from Chocobo1/ngen2
Migrate to update-to-date libtorrent functions (part2)
2019-05-14 01:20:29 +08:00
sledgehammer999
8c4a373ed7 Merge pull request #10633 from sledgehammer999/fix_travis_macos
Fix Travis-CI for macOS and libtorrent 1.1.x
2019-05-13 09:54:35 +03:00
Chocobo1
5aaf040300 Remove libtorrentfwd.h 2019-05-13 11:20:42 +08:00
Chocobo1
3955eef50d Change to lt namespace
Quoting from libtorrent doc:
> In the future, libtorrent will be the alias and lt the namespace name.
2019-05-13 11:20:41 +08:00
Chocobo1
4b263f057d Use newer libtorrent API
This commit covers session.cpp only.
2019-05-13 11:20:41 +08:00
Chocobo1
677a419f0b Use upstream defined namespace
`lt` namespace is defined since libtorrent 1.1.6 and our master branch requires >= 1.1.10,
so there is no need to add #if condition for it.
2019-05-13 11:20:41 +08:00
sledgehammer999
e08d0c4e0f Fix Travis-CI for macOS and libtorrent 1.1.x 2019-05-13 03:03:28 +03:00
Mike Tzou
6d73a7ef0a Merge pull request #10618 from jerrymakesjelly/master
Replace Bytes/s with KiB/s in the adding torrent dialogs in WebUI
2019-05-12 13:50:46 +08:00
Vladimir Golovnev
af7d8f6a43 Merge pull request #10514 from Mataniko/rss-enclosure-type
Download RSS "enclosure" element if no proper MIME type is found
2019-05-11 13:31:46 +03:00
jerrymakesjelly
4b9f0a87cd Change the speed unit from Bytes/s to KiB/s
Updated the adding torrent dialogs in WebUI. Closes #10017.
2019-05-11 12:25:07 +08:00
Mike Tzou
ca0dad7356 Merge pull request #10590 from onlined/fix/close-system-tray-blank-screen
Don't turn screen blank when closed to system tray
2019-05-11 12:24:43 +08:00
Mike Tzou
75e87de473 Merge pull request #10607 from Chocobo1/decodeQuery
Fix '+' char not decoded to space correctly
2019-05-10 09:13:09 +08:00
Chocobo1
bd8d70bf60 Refactor HTTP query parsing 2019-05-09 12:41:30 +08:00
Chocobo1
69d29af097 Fix '+' char not decoded to space correctly
Closes #10606.
2019-05-09 11:17:41 +08:00
Matan Bareket
bd2d636bb5 Download RSS enclosure element if no proper MIME type is found
In the case where an RSS feed doesn't have the "enclosure" element
with type "application/x-bittorrent", fallback to the last enclosure
element which has no "type" attribute.
2019-05-08 13:46:13 -04:00
Mike Tzou
412b51fb3c Merge pull request #10552 from CoryG89/webui-magnet-handler
Register protocol handler in WebUI for magnet links
2019-05-07 11:12:55 +08:00
Mike Tzou
a3fee32b42 Merge pull request #10437 from Chocobo1/ngen
Migrate to update-to-date libtorrent functions
2019-05-07 11:03:34 +08:00
Ekin Dursun
c0c2fe247b Don't turn screen blank when closed to system tray
Closes #9240 and possibly #9121, as @zeule suggested here: https://github.com/qbittorrent/qBittorrent/issues/9240#issuecomment-408025722.
2019-05-07 02:08:46 +03:00
Chocobo1
ae793b7395 Use upstream defined namespace alias 2019-05-06 20:26:15 +08:00
Chocobo1
56434fc8b9 Replace obsoleted QDateTime::fromTime_t() 2019-05-06 20:26:15 +08:00
Chocobo1
3f962ba336 Fix displaying invalid creation date
The bug is only observed when using libtorrent 1.2.
2019-05-06 20:26:14 +08:00
Chocobo1
3f10ac55a3 Migrate to update-to-date libtorrent functions 2019-05-06 20:26:14 +08:00
Cory
d49379789a Register protocol handler in WebUI for magnet links 2019-05-05 11:26:17 -07:00
Mike Tzou
3a3dec1707 Merge pull request #10445 from Chocobo1/crash
Work around crashing in Qt networking library
2019-05-03 22:54:25 +08:00
Mike Tzou
d001927d47 Merge pull request #10557 from Chocobo1/rootfolder
Fix "Create subfolder" option is not working in WebUI
2019-05-03 12:37:23 +08:00
Chocobo1
8aa8b19f37 Fix "Create subfolder" option is not working in WebUI
Closes #10392.
2019-05-02 20:55:50 +08:00
Mike Tzou
2d7b833ae6 Merge pull request #10537 from Chocobo1/template
Minor cleanups
2019-05-01 23:51:23 +08:00
Chocobo1
aaed5f7fe0 Remove unused headers 2019-05-01 11:09:25 +08:00
Chocobo1
375de4f8a6 Replace QMap with QHash when sensible 2019-05-01 11:09:25 +08:00
Chocobo1
44e4a5b13a Avoid performance penalty from type erasure
On average the affected code path is 0.1% faster and the result binary
is 10 KB smaller.
2019-05-01 11:09:25 +08:00
Mike Tzou
f9ac1d4cd5 Merge pull request #10518 from dzmat/more_graphs
Add 12 hour and 24 hour speed graphs. Closes #9686
2019-04-28 18:57:40 +08:00
Mike Tzou
6435e994f1 Merge pull request #10504 from Chocobo1/public
Misc improvements in WebUI
2019-04-24 14:49:28 +08:00
dzmat
7de0f9abed Change number of time axis divisions from 5 to 6 for convenience 2019-04-22 00:15:13 +07:00
dzmat
0af17bf7e9 Add 12 hour and 24 hour speed graphs 2019-04-22 00:15:13 +07:00
Chocobo1
49b57904f9 Use a random number for WebUI cache busting
Also fetch qbt version info via WebAPI properly.
2019-04-18 12:31:23 +08:00
Chocobo1
d022457e0c Use force refresh on WebUI logout
Regardless of the cache header settings, the logout action should never be
allowed to load from cache.
2019-04-17 20:17:26 +08:00
Chocobo1
6e1e7a45a1 Align WebUI login button to the right 2019-04-17 13:34:32 +08:00
Mike Tzou
18be4732b3 Merge pull request #10476 from Piccirello/webui-table-cell-hover
Set title attribute for all WebUI table cells
2019-04-17 13:13:45 +08:00
Mike Tzou
bc2cb057a9 Merge pull request #10469 from Chocobo1/travis
Reduce macOS CI build time
2019-04-17 13:12:57 +08:00
Thomas Piccirello
238ca03936 Set title attribute for all WebUI table cells
Except the Progress Bar
2019-04-15 22:44:28 -07:00
Mike Tzou
7db2d1b8cf Merge pull request #10492 from Chocobo1/server
Remove closed connections immediately
2019-04-16 12:25:40 +08:00
Mike Tzou
c7f89f55d0 Merge pull request #10473 from Chocobo1/warning
Fix unsafe type narrowing (MSVC C4267 warning)
2019-04-16 12:23:30 +08:00
Mike Tzou
08b4cce72a Merge pull request #10485 from CzBiX/login_page
Always use index.html as default page
2019-04-16 12:23:13 +08:00
Chocobo1
a2a669572c Use QSet for tracking server connections
We don't need to maintain order between connections so QSet would be more suitable.
2019-04-15 21:35:35 +08:00
Chocobo1
a35b6cc8dd Remove closed connections immediately
Previously it relied on a timer to drop dead connections but that proved to
be too slow when there is an incoming burst of connections.

Fixes #10487.
2019-04-15 21:35:10 +08:00
Chocobo1
41773a5465 Fix unsafe type narrowing
Appending the warning below:
qBittorrent\src\base/utils/version.h(176): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data
qBittorrent\src\base/utils/version.h(185): note: see reference to function template instantiation 'std::array<T,2> Utils::Version<T,2,2>::parseList<StringsList>(const StringsList &)' being compiled
        with
        [
            T=unsigned short,
            StringsList=QList<QByteArray>
        ]
2019-04-15 20:23:26 +08:00
CzBiX
d254a98662 Always use index.html as default page 2019-04-13 18:41:29 +08:00
Mike Tzou
19dfec1e0a Merge pull request #10464 from thalieht/torrent-size-limit
Increase the download request size limit from 10 to 100 MiB
2019-04-11 10:14:49 +08:00
thalieht
2f3b7642c2 Show user friendly size in error 2019-04-10 11:39:27 +03:00
thalieht
25102b9c5d Increase the download size limit to 100 MiB 2019-04-10 11:39:27 +03:00
Chocobo1
73b4fb09dc Reduce macOS CI build time
The `homebrew: update: true` directive updates the whole macOS env which
is unnecessary and increases build time excessively. This commit reverts
back to the old way.
Also the pre-installed cmake & pkg-config version is sufficient so no need
to outdate them.
2019-04-09 16:10:10 +08:00
Mike Tzou
460b73ebda Merge pull request #10438 from Chocobo1/timer
Work around the crash occurred in QTimer
2019-04-09 13:53:48 +08:00
Mike Tzou
4a02922bfb Merge pull request #10458 from Chocobo1/post
Correctly handle '+' sign in x-www-form-urlencoded data
2019-04-09 13:53:12 +08:00
Mike Tzou
7361f730a3 Merge pull request #10449 from thalieht/encryption
Rename "Prefer encryption" to "Allow encryption"
2019-04-09 13:43:17 +08:00
Chocobo1
4bf4313862 Initialize class variable via constructor 2019-04-08 23:29:14 +08:00
Mike Tzou
6a4cb5f0e1 Merge pull request #10390 from Chocobo1/travis
Add more libtorrent 1.2 builds to TravisCI
2019-04-07 21:10:27 +08:00
Chocobo1
94aeeed95f Work around the crash occurred in QTimer
See Qt commit:
https://code.qt.io/cgit/qt/qtbase.git/commit/src/corelib/kernel/qtimer.cpp?id=a623fe8d2a60ff333d5779f877e3b20f0e141ff1

Fixes #9985.
2019-04-07 15:13:33 +08:00
Chocobo1
d86a984e25 Correctly handle '+' sign in x-www-form-urlencoded data
Fixes #10451.
2019-04-07 13:58:16 +08:00
thalieht
371a090cec Rename "Prefer encryption" to "Allow encryption"
Because it actually prefers non-encryption but allows it if requested.
2019-04-05 14:18:49 +03:00
Chocobo1
1ea61db1fb Disable downloading tracker favicons by default
Workaround for a crash in Qt networking library, source:
https://github.com/qbittorrent/qBittorrent/issues/9667#issuecomment-464445025

Closes #9667.
2019-04-05 13:54:40 +08:00
Chocobo1
efe50baddc Add c++14 to QBT_ADD_CONFIG when appropriate 2019-04-01 16:14:28 +08:00
Mike Tzou
e499317695 Merge pull request #10396 from Chocobo1/webui
Document current WebUI browser compatibility
2019-03-26 13:02:14 +08:00
sledgehammer999
74fc86e2ab Update Changelog 2019-03-25 13:39:42 +02:00
sledgehammer999
24fef762ce Merge pull request #10400 from thalieht/search-hotkey-keypad-enter
Make num enter key work the same as return in searchjobwidget
2019-03-25 13:21:07 +02:00
Chocobo1
7e99ce6d7f Document current WebUI browser compatibility 2019-03-23 12:32:20 +08:00
thalieht
3731a3ea65 Make num enter key work the same as return in searchjobwidget 2019-03-22 20:01:48 +02:00
Chocobo1
05b6265a31 Add more libtorrent 1.2 builds to TravisCI 2019-03-19 14:27:19 +08:00
Vladimir Golovnev
6de02b0f2a Merge pull request #10373 from glassez/libtorrent-1.2
Add preliminary support of libtorrent v1.2
2019-03-19 06:08:22 +03:00
sledgehammer999
6c9368ef36 Merge pull request #10385 from sledgehammer999/desktopFile
Remove wrong ifdef
2019-03-18 16:27:54 +02:00
Vladimir Golovnev (Glassez)
ead078a38e Add preliminary support of libtorrent v1.2
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
sledgehammer999
f403fdb2e8 Remove wrong ifdef 2019-03-17 14:15:50 +02:00
Mike Tzou
20f2c86d25 Merge pull request #10214 from AceLewis/master
Remove autocorrect/autocapitalise in WebUI
2019-03-17 15:05:19 +08:00
Mike Tzou
d1b0c230ed Merge pull request #10366 from Chocobo1/logger
Avoid performance penalty when logger is full
2019-03-17 15:04:53 +08:00
Mike Tzou
05b6865618 Merge pull request #10365 from thalieht/adv-label-links
Add documentation links to some advanced settings
2019-03-15 14:34:33 +08:00
Chocobo1
b7d739ab3f Fix build error
Apparently the function is not available on Windows platforms.
2019-03-15 14:29:54 +08:00
Chocobo1
cb9a160366 Utilize parent pointer appropriately 2019-03-15 14:29:07 +08:00
Chocobo1
874bc84efc Remove excessive usage of pointer 2019-03-15 14:29:06 +08:00
Chocobo1
a3019f56b0 Clean up code 2019-03-15 14:29:06 +08:00
Chocobo1
04fd6e9d04 Avoid performance penalty when logger is full 2019-03-15 14:29:06 +08:00
thalieht
4c53447d35 Remove the max half-open connections option from GUI
Its functionality was deprecated long ago.
2019-03-13 21:08:40 +02:00
thalieht
bcfa62cc76 Rename "#" column to "Tier" in the tracker list 2019-03-13 21:08:40 +02:00
thalieht
cccaca0c01 Center align the section labels in advanced settings 2019-03-13 21:08:40 +02:00
thalieht
3fca49e44d Add documentation links to some advanced settings 2019-03-13 21:08:40 +02:00
Vladimir Golovnev
36f6e9b288 Merge pull request #9702 from knackebrot/master
Fix building qbittorrent-nox on Windows
2019-03-13 18:35:44 +03:00
Mike Tzou
c47d6b517a Merge pull request #10355 from Chocobo1/label
Improve AdvancedSettings::addRow()
2019-03-11 00:25:35 +08:00
Vladimir Golovnev
928ce940c9 Merge pull request #10346 from glassez/download-manager
Improve "Download manager"
2019-03-10 09:13:07 +03:00
Vladimir Golovnev (Glassez)
4ee6a0ba29 Use Qt-provided HTTP redirection handling 2019-03-08 13:06:42 +03:00
Vladimir Golovnev (Glassez)
746916a963 Use DownloadHandler behind the scenes 2019-03-08 13:00:37 +03:00
sledgehammer999
c2d1af9853 Merge pull request #10338 from sledgehammer999/raise_qt5_ver
Raise minimum Qt version to 5.9.0
2019-03-08 00:42:26 +02:00
knackebrot
c7b451b18f Allow headless builds on Windows
Daemonizing is disabled because no direct equivalent exists in win32.
2019-03-07 13:59:10 +01:00
Chocobo1
f9e10616d0 Improve AdvancedSettings::addRow()
1. Add context to connect().
2. Use QLabel in the left table cell, this allows using rich text formatting, such as HTML links.
2019-03-07 16:22:23 +08:00
Mike Tzou
ccd8f3e0f1 Merge pull request #10340 from Chocobo1/move
Move helper functions to Utils::Gui namespace
2019-03-07 15:11:58 +08:00
Mike Tzou
480aa01ea6 Merge pull request #10345 from paolo-sz/master
Avoid crashes on torrent search
2019-03-07 15:08:52 +08:00
paolo-sz
1ea7907e09 Add default tooltip "Searching..." on tab creation. 2019-03-05 20:36:49 +01:00
paolo-sz
22835c0350 Avoid crashes on torrent search
qbittorrent closes itself without any error message when a search tab
should be notified of a status change: fixed bad pointer variable catch
in lambda code.
2019-03-05 20:36:49 +01:00
Chocobo1
78b9eafed2 Replace deprecated qt_mac_set_dock_menu() 2019-03-05 17:17:07 +08:00
Vladimir Golovnev (Glassez)
6cb15706f5 Reduce number of DownloadManager signals 2019-03-05 11:28:29 +03:00
Chocobo1
adbd34c795 Move helper functions to Utils::Gui namespace 2019-03-05 14:55:22 +08:00
sledgehammer999
5c63ad3b95 Raise minimum Qt version to 5.9.0 2019-03-04 16:48:49 +02:00
Mike Tzou
c109b7a57a Merge pull request #10332 from Chocobo1/install
Update INSTALL file
2019-03-04 12:01:02 +08:00
sledgehammer999
8329ca2ed6 Merge pull request #10322 from sledgehammer999/travis_deb
Use custom packages for travis and RC_1_2
2019-03-03 20:35:20 +02:00
Mike Tzou
4ce3cda676 Merge pull request #10319 from eszlari/patch-1
Linux/Wayland: make window title bar icon work
2019-03-03 12:40:59 +08:00
Chocobo1
aa2172f1ad Update INSTALL dependencies 2019-03-02 13:06:30 +08:00
Mike Tzou
0f1fc7be9d Merge pull request #10302 from Chocobo1/uptr
Replace QScopedPointer with std::unqiue_ptr
2019-03-02 12:26:14 +08:00
Mike Tzou
37606891db Merge pull request #10323 from Chocobo1/qt
Replace deprecated functions/variables
2019-03-02 12:25:52 +08:00
Peter Eszlari
9f250713d2 Linux/Wayland: make window title bar icon work 2019-02-28 22:41:08 +01:00
Chocobo1
3dd969df64 Replace deprecated QSignalMapper class 2019-02-28 12:03:08 +08:00
Chocobo1
c6ae1aa9d9 Replace deprecated QString::null 2019-02-28 12:02:03 +08:00
Chocobo1
6dab93f7fd Replace deprecated QDesktopWidget class 2019-02-28 12:02:03 +08:00
Chocobo1
c657134344 Replace deprecated QSslSocket::setDefaultCiphers() 2019-02-28 12:01:36 +08:00
Chocobo1
168d3fbdac Replace deprecated trUtf8() 2019-02-28 12:01:36 +08:00
Chocobo1
c33284fa8c Add compile flag to show Qt deprecation warnings 2019-02-28 12:01:36 +08:00
Mike Tzou
46bc1d12b9 Merge pull request #10314 from thalieht/const2
More const
2019-02-28 11:33:35 +08:00
sledgehammer999
7765c1c739 Use prebuilt packages of RC_1_2 for Travis 2019-02-26 20:26:16 +02:00
Mike Tzou
d7ea9a5f55 Merge pull request #10318 from Chocobo1/ptr
Convert to use private pointer for ui object
2019-02-26 12:13:46 +08:00
thalieht
77aea3c59e Add const to a few pointer arguments 2019-02-25 17:05:15 +02:00
thalieht
ce437817de Make various minor changes 2019-02-25 17:05:15 +02:00
thalieht
89dce36e98 Use uniform initialization on some default arguments 2019-02-25 17:05:15 +02:00
thalieht
8a19a0d4a0 Remove const in declarations' arguments that are passed by value 2019-02-25 17:05:15 +02:00
thalieht
70f1537d9f Add const to almost all remaining vars and arguments that qualify 2019-02-25 17:05:15 +02:00
Chocobo1
e5dca50025 Convert to use private pointer for ui object 2019-02-25 01:22:40 +08:00
Mike Tzou
bb041c0eca Merge pull request #10292 from Chocobo1/rmInvalid
Load torrent from data directly
2019-02-21 23:18:02 +08:00
Mike Tzou
1c14a08390 Merge pull request #10296 from thalieht/clang-tidy
Some suggestions from Clang-tidy
2019-02-21 23:17:29 +08:00
Chocobo1
5c0d9b7eab Load torrent from data directly 2019-02-20 00:14:41 +08:00
Mike Tzou
e621a98a0a Merge pull request #10291 from Chocobo1/redirect
Fix crash due to network redirections
2019-02-20 00:03:53 +08:00
Mike Tzou
12b2b8ad99 Merge pull request #10289 from Chocobo1/travisci
Update .travis.yml
2019-02-20 00:01:21 +08:00
Chocobo1
5e3fddf456 Replace QScopedPointer with std::unqiue_ptr
These 2 types are very similar and we should prefer the one from C++
standard library, this reduces the number of types in our code base.

Also see:
https://stackoverflow.com/questions/40346393/should-i-use-qscopedpointer-or-stdunique-ptr#comment67966940_40346991
2019-02-18 16:06:40 +08:00
Chocobo1
8fe1ff87f1 Limit DownloadHandler max redirection to 20
Closes #10219.
2019-02-17 22:02:48 +08:00
thalieht
86df25a3e9 Remove some unused stuff 2019-02-16 18:54:18 +02:00
thalieht
8c944bd4e1 Avoid repeating the return type 2019-02-16 18:54:18 +02:00
thalieht
9959a901fe Replace deprecated header 'signal.h' with 'csignal' 2019-02-16 18:54:17 +02:00
thalieht
92a290895b Convert vars into refs to avoid copy construction from const refs 2019-02-16 18:54:17 +02:00
thalieht
400792d18e Use isEmpty() instead of size() for emptiness 2019-02-16 18:54:17 +02:00
thalieht
d8cbc9266a Use 'auto' to avoid duplicating the type name 2019-02-16 18:54:17 +02:00
thalieht
947c7e1d64 Convert to range-based for loop 2019-02-16 16:53:26 +02:00
Chocobo1
409557ef30 Clean up code 2019-02-15 19:47:06 +08:00
thalieht
8a3f942385 Don't use 'else' after return/break 2019-02-13 18:23:25 +02:00
Chocobo1
313a95bdd1 Log DownloadManager SSL errors 2019-02-13 20:09:08 +08:00
Chocobo1
184ac3e473 Update .travis.yml
Add build job with libtorrent RC_1_2 branch.
2019-02-13 19:50:03 +08:00
Mike Tzou
78ab0e4ba9 Merge pull request #10220 from thalieht/const
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
445adb0ab4 Convert pass-by-value arguments to const refs where applicable 2019-02-12 02:45:55 +02:00
thalieht
ca3ce87e06 Add const to many vars and arguments
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Mike Tzou
12aea82031 Merge pull request #10273 from Chocobo1/fix
Fix wrong arg placeholder
2019-02-10 13:31:09 +08:00
Chocobo1
79d7ba8205 Fix wrong arg placeholder 2019-02-09 21:26:45 +08:00
Vladimir Golovnev
0413a05246 Merge pull request #10242 from glassez/ordered-recheck
Force recheck multiple torrents one by one. Closes #9120
2019-02-08 08:19:30 +03:00
Mike Tzou
efed3fc78c Merge pull request #10256 from Chocobo1/license
Add license header
2019-02-08 12:07:08 +08:00
Mike Tzou
c540e57f55 Merge pull request #10227 from Chocobo1/login
Prevent login credential appearing in URL
2019-02-07 13:16:24 +08:00
Mike Tzou
6f0a66ce26 Merge pull request #10255 from Chocobo1/algorithm
Make use of std algorithms and C++14 features
2019-02-07 10:45:40 +08:00
Chocobo1
364a837dbd Revise comments about C++14 2019-02-05 13:35:54 +08:00
Chocobo1
6d29a3af60 Make use of std algorithms 2019-02-05 13:35:54 +08:00
Chocobo1
f789df7edf Add license header 2019-02-04 17:28:55 +08:00
Vladimir Golovnev
e9f3e20e67 Merge pull request #10243 from glassez/content-menu
Close context menu when torrent content model is reset. Closes #9522
2019-02-02 21:13:41 +03:00
AceLewis
bfdd674054 Remove autocorrect/autocapitalise from filepaths on WebUI 2019-02-02 13:50:02 +01:00
Chocobo1
4483b72bfd Move JavaScript code to its own file 2019-02-02 15:00:53 +08:00
Chocobo1
8096e49c24 Display warning when Javascript is disabled 2019-02-02 14:55:08 +08:00
Vladimir Golovnev (Glassez)
5a86c4ac52 Close context menu when content model is reset
Closes #9522.
2019-02-01 18:44:26 +03:00
Vladimir Golovnev (Glassez)
61925f74fd Force recheck multiple torrents one by one
Closes #9120.
2019-02-01 18:15:54 +03:00
Chocobo1
32474b05c5 Remove mootools lib from login page 2019-02-01 13:38:14 +08:00
Chocobo1
814eef1e56 Fix wrong arg placehoder 2019-02-01 13:38:14 +08:00
Chocobo1
0738b3860b Prevent login credential appearing in URL
Closes #10221.
2019-02-01 13:38:12 +08:00
Mike Tzou
40eb8a1f4a Merge pull request #10175 from Chocobo1/cert
Load WebUI certificate & key from file path
2019-02-01 13:37:13 +08:00
Mike Tzou
0facdf3dfb Merge pull request #10190 from Piccirello/webui-sorted-icon
Fix direction of Web UI sorted column icon
2019-02-01 13:20:54 +08:00
Vladimir Golovnev
5c00d89d57 Merge pull request #10231 from glassez/properties
Improve Properties widget
2019-01-31 12:03:46 +03:00
Mike Tzou
9d91b17e33 Merge pull request #10188 from eszlari/appdata-fixes
Appdata: add release, content_rating
2019-01-31 13:28:18 +08:00
Mike Tzou
899b0c1104 Merge pull request #10096 from Piccirello/webui-libtorrent-version
Match WebUI About page to GUI
2019-01-31 13:14:46 +08:00
Chocobo1
52de31ac79 Add migration code for WebUI https related change 2019-01-29 12:52:42 +08:00
Vladimir Golovnev (Glassez)
c631dbdaa1 Improve Properties widget
Drop redundant dependencies.
Refresh after BitTorrent session refreshing  (instead of using timer).
2019-01-28 12:42:12 +03:00
Chocobo1
5cdb3b6a2d Load WebUI certificate & key from file path
This allow users to update certificate & key more easily, i.e. without the need to import them
into qbt.

Closes #6675, #7547, #8315, #8564.
2019-01-28 16:33:48 +08:00
Chocobo1
48d358872f Cleanup header inclusion 2019-01-28 14:34:13 +08:00
Vladimir Golovnev
5b82b681cb Merge pull request #10225 from glassez/http-request
Separate URL components before percent-decoding. Closes #9116
2019-01-28 08:46:41 +03:00
sledgehammer999
bb3ad8acd3 Merge pull request #10191 from sledgehammer999/drop_google
Don't query Google for tracker favicons
2019-01-27 22:19:56 +02:00
sledgehammer999
6fdc02f947 Merge pull request #10201 from sledgehammer999/dead_code
Remove leftover tracker authentication code
2019-01-27 22:19:21 +02:00
Vladimir Golovnev (Glassez)
b0446380c6 Separate URL components before percent-decoding
Allow special characters in query string parameters.
Closes #9116.
2019-01-27 15:33:19 +03:00
Mike Tzou
fc534e88a3 Merge pull request #10155 from Chocobo1/exception
Remove exception handling
2019-01-23 13:44:34 +08:00
sledgehammer999
4a414d50f1 Remove leftover tracker authentication code 2019-01-23 02:38:46 +02:00
Peter Eszlari
b917f4ed01 Add content_rating, release tags to appdata 2019-01-22 16:10:24 +01:00
Mike Tzou
b8def07cd8 Merge pull request #10146 from Piccirello/webui-escape-key
Add Web UI support for escape key
2019-01-22 11:30:50 +08:00
sledgehammer999
009fd0e211 Don't query Google for tracker favicons
It is a bad idea for user privacy to automatically contact a 3rd party
about tracker domains. Especially when the user isn't informed about
this and the 3rd party is Google.

Reverts 1b9882b3a3
2019-01-21 16:15:09 +02:00
Thomas Piccirello
d1dc9a39ae Match WebUI About page to GUI 2019-01-20 18:40:25 -08:00
Thomas Piccirello
86c21baf40 Simplify tab logic 2019-01-20 18:39:15 -08:00
Thomas Piccirello
ece27b84cc Fix wrong element id being used 2019-01-20 16:00:29 -08:00
Thomas Piccirello
81943fb3b0 Fix direction of Web UI sorted column icon 2019-01-20 15:52:38 -08:00
sledgehammer999
3b949c4a8a Merge pull request #10179 from qbittorrent/webui-broken-link
Fix broken image link
2019-01-20 21:58:09 +02:00
Chocobo1
04227f5a41 Add QBT_APP_64BIT define
Now we use QT_POINTER_SIZE to detect CPU bitness, it has the advantage of applicable to all CPU
architectures not limiting to x86 arch.
2019-01-19 10:14:10 +08:00
Chocobo1
6d7e5f82ae Include the correct header
And remove the unused ones
2019-01-19 10:06:33 +08:00
Chocobo1
cf4db1b418 Remove useless exception handling 2019-01-19 10:06:31 +08:00
Tom Piccirello
972b8d11fe Fix broken image link 2019-01-18 17:49:55 -08:00
Mike Tzou
81c09d34ad Merge pull request #10163 from airium/allow-larger-checking-memory-usage
Allow setting larger checking memory usage in GUI
2019-01-19 01:30:55 +08:00
sledgehammer999
f67ded678c Merge pull request #10086 from PeterDaveHello/OptimizePNG
Optimize PNG images losslessly with zopflipng
2019-01-17 12:20:07 +02:00
sledgehammer999
118d14c93f Merge pull request #10172 from sledgehammer999/copyright
Update copyright year
2019-01-17 10:25:48 +02:00
sledgehammer999
2ac7f2defe Update copyright year 2019-01-17 01:08:51 +02:00
sledgehammer999
bbabf6dc1a Merge pull request #10107 from sledgehammer999/translators
Mention Swedish translator
2019-01-17 00:54:48 +02:00
sledgehammer999
6c6d75f607 Mention Swedish translator
Closes #10103
2019-01-17 00:53:38 +02:00
airium
dbca4346aa Allow setting larger checking memory usage in GUI 2019-01-16 14:23:21 +08:00
Mike Tzou
ec90b69c9e Merge pull request #10061 from Piccirello/webui-cache-bust
Include application version in css/js url for cache busting
2019-01-16 12:32:04 +08:00
Mike Tzou
eecdd4c6cf Merge pull request #10072 from Kolcha/mac-info-plist
Cleanup Info.plist
2019-01-16 12:12:22 +08:00
Mike Tzou
ea7ac59a61 Merge pull request #10117 from Chocobo1/appdata
Update appdata
2019-01-15 13:19:39 +08:00
Nick Korotysh
2a5dd7f5ec Cleanup Info.plist
Added few required/recommended and removed obsolete/deprecated keys
according to Apple developers documentation.
Changed CFBundleIdentifier according to reverse DNS convention.
Updated copyright year.
2019-01-14 16:47:07 +03:00
Thomas Piccirello
dbaebf4f33 Rename parametrics.js to speedslider.js 2019-01-14 02:00:08 -08:00
Thomas Piccirello
851c02acb0 Capitalize event name 2019-01-14 00:57:24 -08:00
Thomas Piccirello
2f33ecf37b Fix bug where input wouldn't always be focused 2019-01-14 00:57:24 -08:00
Thomas Piccirello
74a772aafb Add Web UI support for escape key 2019-01-14 00:57:24 -08:00
Mike Tzou
2e5c09aeba Merge pull request #10130 from Chocobo1/svg
Fix icon issues
2019-01-14 10:52:45 +08:00
Peter Dave Hello
eaaf8b8e85 Optimize PNG images losslessly with zopflipng
18 images compressed as below:
dist/unix/menuicons/128x128/apps/qbittorrent.png        | Bin 7736 -> 7674 bytes
dist/unix/menuicons/128x128/status/qbittorrent-tray.png | Bin 7736 -> 7674 bytes
dist/unix/menuicons/16x16/apps/qbittorrent.png          | Bin 986 -> 775 bytes
dist/unix/menuicons/16x16/status/qbittorrent-tray.png   | Bin 986 -> 775 bytes
dist/unix/menuicons/192x192/apps/qbittorrent.png        | Bin 11625 -> 11562 bytes
dist/unix/menuicons/192x192/status/qbittorrent-tray.png | Bin 11625 -> 11562 bytes
dist/unix/menuicons/22x22/apps/qbittorrent.png          | Bin 1169 -> 1163 bytes
dist/unix/menuicons/22x22/status/qbittorrent-tray.png   | Bin 1169 -> 1163 bytes
dist/unix/menuicons/48x48/apps/qbittorrent.png          | Bin 2995 -> 2960 bytes
dist/unix/menuicons/48x48/status/qbittorrent-tray.png   | Bin 2995 -> 2960 bytes
dist/unix/menuicons/72x72/apps/qbittorrent.png          | Bin 4321 -> 4288 bytes
dist/unix/menuicons/72x72/status/qbittorrent-tray.png   | Bin 4321 -> 4288 bytes
dist/unix/menuicons/96x96/apps/qbittorrent.png          | Bin 5712 -> 5624 bytes
dist/unix/menuicons/96x96/status/qbittorrent-tray.png   | Bin 5712 -> 5624 bytes
src/icons/loading.png                                   | Bin 178 -> 174 bytes
src/icons/skin/mascot.png                               | Bin 21876 -> 21084 bytes
src/icons/skin/splash.png                               | Bin 59072 -> 58581 bytes
src/icons/sphere.png                                    | Bin 277 -> 250 bytes
2019-01-13 17:10:45 +08:00
Vladimir Golovnev
7e98035df5 Merge pull request #10136 from glassez/drop-old-libtorrent
Drop support of libtorrent < 1.1.10
2019-01-12 09:44:24 +03:00
Vladimir Golovnev
198034f976 Merge pull request #10145 from glassez/drop-legacy-webapi
Drop legacy WebAPI support
2019-01-11 17:41:53 +03:00
Vladimir Golovnev (Glassez)
6d6af8e70d CMake: Check for required libtorrent version 2019-01-11 15:13:33 +03:00
Vladimir Golovnev (Glassez)
302c99d7d5 Drop support of libtorrent < 1.1.10 2019-01-11 15:13:17 +03:00
Mike Tzou
b7091cf9a4 Merge pull request #10006 from Piccirello/webui-tables
Allow WebUI Trackers and Content tables to be manipulated
2019-01-11 14:10:27 +08:00
Chocobo1
a8ba5bda79 Update WebUI img to use svg images 2019-01-11 13:53:32 +08:00
Chocobo1
6f34afce21 Fix speed limit icon too large on WebUI
Closes #10127.
2019-01-11 13:51:46 +08:00
Chocobo1
83d4641a4d Fix misaligned icons in STATUS list in GUI
The 2 changed icons has different width/height ratio than other icons in STATUS list, thus
they take more width than others when rendered in GUI.
2019-01-11 13:51:46 +08:00
Vladimir Golovnev (Glassez)
2ce3aa9731 Drop legacy WebAPI support 2019-01-10 20:16:06 +03:00
Mike Tzou
77fc731dec Merge pull request #10125 from Chocobo1/boost
Replace boost::function with std::function
2019-01-07 22:02:05 +08:00
Chocobo1
b7627db98c Remove unused headers 2019-01-06 19:19:57 +08:00
Chocobo1
06e82d10f6 Replace boost::function with std::function 2019-01-06 19:19:57 +08:00
Chocobo1
d013e0922d Use the proper Qt type 2019-01-06 18:32:01 +08:00
Thomas Piccirello
f0e67cbb53 Remove excanvas from WebUI
Excanvas adds Canvas support to IE 8 and lower, which we no longer support.
2019-01-04 23:48:17 -08:00
Chocobo1
8dfcb028a6 Update .appdata descriptions 2019-01-05 10:50:02 +08:00
Mike Tzou
d7c561df6b Merge pull request #10106 from Chocobo1/js
Various fixes in WebUI
2019-01-05 10:45:15 +08:00
Chocobo1
168695bd15 Use reverse DNS convention for metadata files naming
Also update appdata install path.

Closes #10111.
2019-01-05 10:37:23 +08:00
sledgehammer999
88295f8075 Merge pull request #10094 from Kolcha/pb-fix
Draw progress bar in Fusion style on macOS systems
2019-01-04 00:31:34 +02:00
sledgehammer999
6eaab41820 Merge pull request #10073 from sledgehammer999/stylized_icons
[cleanup]Converted remaining icons to svg
2019-01-04 00:25:11 +02:00
sledgehammer999
f4bb65b46e Optimize svg files using SVGO 2019-01-04 00:24:30 +02:00
Bert Verhelst
9f8f9b6702 Converted remaining icons to svg 2019-01-04 00:24:30 +02:00
Chocobo1
a0f3678163 Fix only the first newline char is replaced
Must use regex to replace all instances of newline chars.
2019-01-04 00:56:54 +08:00
Chocobo1
9289b009b6 Fix missing semicolon in WebUI 2019-01-04 00:56:43 +08:00
Thomas Piccirello
28fa5a895c Allow WebUI Content tab to be sorted 2019-01-03 00:34:59 -08:00
Thomas Piccirello
06edabb9be Encode torrent name before passing in URL 2019-01-03 00:34:59 -08:00
Thomas Piccirello
26a9af850b Move WebUI Peers code to separate file 2019-01-03 00:34:59 -08:00
Thomas Piccirello
a5266c7018 Prevent WebUI tables from being highlighted 2019-01-03 00:34:59 -08:00
Thomas Piccirello
5d114614bb Allow WebUI Trackers table to be manipulated 2019-01-03 00:34:59 -08:00
Mike Tzou
f3c65f34b6 Merge pull request #10075 from Chocobo1/login
Add autocomplete attribute to WebUI
2019-01-03 14:15:11 +08:00
sledgehammer999
6b2a382ab8 Merge pull request #10066 from sledgehammer999/drop_migration_code
Drop upgrade code
2019-01-02 21:42:31 +02:00
Nick Korotysh
bd1856594b Draw progress bar in Fusion style on macOS systems
Qt has a bug QTBUG-72558, which leads to incorrect progress bar
position, when drawing it in delegate.
Also, since OS X 10.10 Yosemite macOS default style was changed,
and progress bars became very tiny and without text (percentage).
These two cases make qBittorrent look pretty awful, but drawing
progress bar in Fusion style solves both issues.
2019-01-02 10:01:32 +03:00
Mike Tzou
b87987ec89 Merge pull request #10074 from Chocobo1/magneturi
Drop support for "BC Link" format
2019-01-01 23:13:05 +08:00
Chocobo1
2b903fc3d1 Move Utils::Misc::isUrl() function
All usage of this function gets to call Net::DownloadManager eventually.
2018-12-31 20:00:15 +08:00
Chocobo1
6759446639 Cleanup code
Also remove redundant code, it is already handled correctly in subsequent function calls.
2018-12-31 20:00:15 +08:00
Chocobo1
19d6de795c Drop support for "BC Link" format
The format is marked obsolete on 2009.12.28 and has been replaced by magnet links.

http://wiki.bitcomet.com/inside_bitcomet#bc_link_format_obsoleted_as_of_v117
https://www.bitcomet.com/en/changelog
2018-12-31 20:00:15 +08:00
Chocobo1
d133ccc69f Add autocomplete attribute to WebUI
This helps the password manager to identify each field and provide
adequate actions.
2018-12-31 19:36:53 +08:00
sledgehammer999
d322e10a83 Merge pull request #10027 from glassez/compile-ts
Compile translations at build time
2018-12-31 11:31:45 +02:00
Mike Tzou
3772968f49 Merge pull request #10076 from Chocobo1/pr_9756
Prevent flickering preview dialog
2018-12-31 13:45:55 +08:00
sledgehammer999
1fff760722 Drop upgrade code 2018-12-31 00:41:17 +02:00
sledgehammer999
6236aee8d5 Merge pull request #10046 from sledgehammer999/translator
Mention more translators
2018-12-30 18:20:53 +02:00
Chocobo1
dd2763d725 Forward declare TorrentHandle 2018-12-29 18:39:54 +08:00
silver
0b47021504 Prevent flickering preview dialog
Avoid instantiation of a preview dialog, when torrent is not
previewable
2018-12-29 18:39:54 +08:00
Thomas Piccirello
877a2a2802 Include application version in css/js url for cache busting
This change forces new versions of all css and js files to be picked up when qBittorrent is updated.
2018-12-28 13:35:49 -05:00
Thomas Piccirello
9197b0a5ea Add version to lib file name. Move parametrics out of lib folder. 2018-12-28 13:34:48 -05:00
Mike Tzou
4e8ab08425 Merge pull request #10024 from Chocobo1/explicit
Mark constructors as explicit
2018-12-28 09:02:27 +08:00
Chocobo1
a5c53ff756 Simplify InfoHash, TrackerEntry class internals 2018-12-26 12:04:41 +08:00
Chocobo1
2a84345835 Mark constructors as explicit 2018-12-26 12:04:40 +08:00
Mike Tzou
94998b5da0 Merge pull request #10037 from Chocobo1/configure
Enforce C++14 requirement
2018-12-26 12:03:56 +08:00
sledgehammer999
5b62aaa9f8 Mention more translators
Closes #10043
2018-12-25 14:19:07 +02:00
sledgehammer999
fb6bb932da Update Changelog 2018-12-24 18:51:24 +02:00
sledgehammer999
7c172edd50 Sync translations from Transifex and run lupdate 2018-12-24 18:44:53 +02:00
sledgehammer999
05895f360b Update transifex config file 2018-12-24 18:43:19 +02:00
Chocobo1
814488863d Enforce C++14 requirement 2018-12-24 15:11:44 +08:00
Chocobo1
6bd5d0b8e9 Cleanup build scripts 2018-12-24 15:10:57 +08:00
Vladimir Golovnev
dd4cb43e3f Merge pull request #10035 from thalieht/no-meta-resume
Fix regression on resuming torrents without metadata
2018-12-24 08:22:47 +03:00
thalieht
d9416299f4 Fix regression on resuming torrents without metadata 2018-12-23 19:23:34 +02:00
Vladimir Golovnev (Glassez)
7b3eed323b QMake: Compile translations at build time 2018-12-22 16:02:17 +03:00
Mike Tzou
8aa2789ded Merge pull request #10023 from Chocobo1/html
Change qbt exit message to HTML5
2018-12-21 19:31:59 +08:00
Mike Tzou
25cefee0f8 Merge pull request #9959 from Chocobo1/strict
Use Javascript strict mode
2018-12-20 20:16:39 +08:00
Chocobo1
8dd334dc5d Change qbt exit message to HTML5 2018-12-19 18:29:00 +08:00
Mike Tzou
8ab94d7704 Merge pull request #9979 from Chocobo1/i18n_bak
Unify translation files loading action
2018-12-19 15:52:48 +08:00
Chocobo1
e98d4e874f Unify translation files loading action
Since it is possible alternative WebUI could be coded in languages other than English,
WebUI must be able to load user-provided webui_en.qm.
At least one translated string must exist in order to generate an usable .qm file.
2018-12-18 23:14:09 +08:00
sledgehammer999
6f638058d1 Merge pull request #10013 from sledgehammer999/revert_locale
Use configured locale only for translating
2018-12-18 16:28:05 +02:00
Vladimir Golovnev
38f4bea6f1 Merge pull request #9988 from elFarto/master
Keep track of REPACK/PROPER downloads
2018-12-18 08:58:25 +03:00
Stephen Dawkins
70435ab5bf Keep track of REPACK/PROPER downloads
When using the smart episode filter, if the episode contains REPACK and/or
PROPER, these should be stored to prevent it from redownloading a duplicate
episodes.

Closes #9898.
2018-12-17 09:52:12 +00:00
sledgehammer999
9491d40f22 Update transifex config file 2018-12-17 01:33:18 +02:00
sledgehammer999
3f9300dff4 Sync translations from Transifex and run lupdate 2018-12-17 01:22:33 +02:00
sledgehammer999
b69dd05216 Update WebUI .ts files 2018-12-17 01:16:23 +02:00
sledgehammer999
63cf216550 Use configured locale only for translating
Don't use other aspects of it eg for date formatting. We should depend
on the system locale for all these. The user probably likes it that way,
otherwise he would have changed it.
2018-12-17 00:13:28 +02:00
sledgehammer999
fd310e4e69 Merge pull request #10002 from Chocobo1/travisci
Upgrade TravisCI to xenial
2018-12-14 22:57:16 +02:00
sledgehammer999
d6f2647472 Merge pull request #9992 from Kolcha/mac-file-icon
Make file icon look like other macOS icons
2018-12-14 22:55:34 +02:00
Mike Tzou
deed457764 Merge pull request #9993 from Chocobo1/referer
Enforce referrer-policy in WebUI
2018-12-14 13:23:04 +08:00
Chocobo1
72ce5c26db Upgrade TravisCI to xenial
* Remove cmake installation, it is already pre-installed by TravisCI.
* Limit ccache cache size to 512 MB. Previously the size was 5 GB for
macOS and it took 1~3 mins just for packing & uploading the cache,
limiting the size should shorten total build time.
2018-12-14 13:19:00 +08:00
Mike Tzou
eebbf3b1ee Merge pull request #9981 from Piccirello/webui-torrent-filter
Add torrent name filtering to WebUI
2018-12-14 13:18:29 +08:00
Chocobo1
c1912e17c1 Revise CSP header
The majority of the CSP is tuned for built-in WebUI, it may not be
suitable for alternative UI.

Also add QLatin1String to strings. This code path is called repeatedly,
it is worth adding QLatin1String to squeeze out the last bit of
performance.
2018-12-13 15:31:32 +08:00
Chocobo1
d0886f8db0 Reformat WebUI code 2018-12-12 12:30:39 +08:00
Chocobo1
ba32525b45 Fix errors from using strict mode 2018-12-12 12:09:55 +08:00
Chocobo1
1cb065edc6 Use Javascript strict mode 2018-12-12 12:07:31 +08:00
Mike Tzou
1c525d9c19 Merge pull request #9375 from Piccirello/webui-trackers
Add additional tracker info to WebUI
2018-12-12 12:06:32 +08:00
Thomas Piccirello
7f349732ee Send numeric status without translation 2018-12-11 01:37:33 -05:00
Thomas Piccirello
718f66e6a2 Remove condition for unsupported libtorrent version 2018-12-11 01:37:32 -05:00
Thomas Piccirello
9e1f7a72b7 Simplify map initialization 2018-12-11 01:37:32 -05:00
Thomas Piccirello
33351e3d8d Add WebUI Trackers context menu 2018-12-11 01:37:32 -05:00
Thomas Piccirello
4947b0a44f Add DHT, PeX, and LSD to WebUI Tracker list 2018-12-11 01:37:32 -05:00
Thomas Piccirello
b8e4c6b0be Add additional Tracker columns to WebUI 2018-12-11 00:41:18 -05:00
Thomas Piccirello
dd790d94c9 Use const where appropriate 2018-12-11 00:41:18 -05:00
Thomas Piccirello
c89e9d4354 Reorder and rename Tracker list context menu option
Adds an ellipses to indicate that the Edit option opens a dialog. Also moves Edit to top of the list to convey action's prominence.
2018-12-11 00:41:18 -05:00
Thomas Piccirello
b481787574 Rename Tracker List columns
"Received" renamed to "Peers", "Peers" renamed to "Leeches".
2018-12-11 00:41:18 -05:00
sledgehammer999
cd2c448e6d Bump Web API version 2018-12-11 00:41:18 -05:00
Mike Tzou
cf9d903ba9 Merge pull request #9541 from Piccirello/webui-file-priority
Set priority for multiple files in one WebAPI request
2018-12-11 13:32:53 +08:00
Thomas Piccirello
57e625494b Update Copyright email address 2018-12-10 23:21:09 -05:00
Thomas Piccirello
66015164d7 Fix display bugs in WebUI Files tab. Remove <IE9 support
Priority select boxes would frequently go blank due to an unexpected priority value. On first load, the torrent-scoped file checkbox's state was inconsistent with the state of the torrent's files.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
a44ed9cfd3 Fix incorrect priority value sent from WebUI
Closes #9070.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
c5b8f62780 Set priority for multiple files in one WebAPI request
Closes #6259.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
f27dc977e9 Replace prio namespace with FilePriority enum class 2018-12-10 23:21:09 -05:00
Chocobo1
7fd30fa90f Enforce referrer-policy in WebUI
This stops leaking private data to other websites via Referrer header.
2018-12-10 22:17:04 +08:00
Nick Korotysh
afbcf2095f Make file icon look like other macOS icons 2018-12-10 11:16:32 +03:00
Mike Tzou
e1f19b7c75 Merge pull request #9986 from Piccirello/webui-peers-columns
Match WebUI Peers table column order to GUI
2018-12-10 12:34:11 +08:00
Mike Tzou
3ff7d16cfc Merge pull request #9982 from Chocobo1/fixes
Fix TravisCI linux builds
2018-12-10 12:33:51 +08:00
Thomas Piccirello
66f6823965 Add torrent name filtering to WebUI
Closes #721
2018-12-09 11:30:56 -05:00
Vladimir Golovnev
fc08091765 Merge pull request #9940 from glassez/error-msg
Show error message when Session failed to start
2018-12-09 11:16:17 +03:00
Mike Tzou
2eb213e2f9 Merge pull request #9758 from Piccirello/new-search-webui-2
Add Search feature to WebUI
2018-12-09 16:01:21 +08:00
Mike Tzou
c093561532 Merge pull request #9980 from Chocobo1/opensslVersion
Add OpenSSL version to GUI & stackdump
2018-12-09 15:57:33 +08:00
Mike Tzou
0418401ddd Merge pull request #9976 from Piccirello/fix-js-error
Fix JavaScript error
2018-12-09 15:56:38 +08:00
Thomas Piccirello
f3c1e82199 Match WebUI Peers table column order to GUI 2018-12-09 00:36:43 -05:00
Mike Tzou
f32865b0c8 Merge pull request #9752 from Piccirello/webui-autotmm
Add missing Preferences to WebUI
2018-12-08 19:58:27 +08:00
Chocobo1
1b2cdda7e2 Use gcc-5 for TravisCI linux builds
Remove workarounds for CXXFLAGS.
Using 3 compilation jobs should cause process trashing, tune it down to 2.
TravisCI container builds is deprecated, so remove the `sudo: false` command.
2018-12-08 14:15:34 +08:00
Chocobo1
2a428ffd37 Use CC, CXX from environment when available 2018-12-08 13:15:18 +08:00
Chocobo1
f13bcbd772 Add OpenSSL version to GUI & stackdump 2018-12-08 12:46:50 +08:00
Thomas Piccirello
a8d5b146be Fetch data less frequently when torrents tab isn't visible 2018-12-07 23:33:15 -05:00
Thomas Piccirello
b7ad751ec3 Add Search tab to WebUI
Closes #859, #8107.
2018-12-07 23:33:15 -05:00
Chocobo1
a137f1493e Use correct locale to display date 2018-12-08 12:19:56 +08:00
Chocobo1
de437b905b Fix MSVC C4267 warning
The warning was: "warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of
data"
2018-12-08 12:19:56 +08:00
Tom Piccirello
adcfbf0b8c Fix JavaScript error
Fixes a JavaScript error caused by the element lookup returning null
2018-12-07 18:41:32 -05:00
Thomas Piccirello
3aeaf6a054 Disallow setting a blank alternative WebUI location 2018-12-07 00:57:59 -05:00
Thomas Piccirello
402715004c Add slow torrent options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
2ebc6a056e Add "Use alternative Web UI" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
c237accf82 Add "Apply rate limit to peers on LAN" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
e499e1ba85 Add email "From" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
abf43b695b Set WebUI download options using set preferences
"Start torrent" and "Create subfolder" are now set depending on the user's set preferences, which matches the behavior exhibited by the GUI.
2018-12-07 00:55:29 -05:00
Thomas Piccirello
7151d6babd Show list of categories on WebUI download page 2018-12-07 00:55:29 -05:00
Thomas Piccirello
a7c2ee3ce6 Hide WebUI text input for custom monitor save locations 2018-12-07 00:55:29 -05:00
Thomas Piccirello
19ccd8c7d3 Add "When adding a torrent" options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
d05cf47169 Add WebUI Auto TMM options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
bf4df54fb8 Replace all line breaks and fix legend code style. 2018-12-07 00:55:29 -05:00
Thomas Piccirello
127e4acb24 Add speed limit icons to WebUI Speed options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
b9229babfc Add WebUI Random port button and proxy unencrypted password notice 2018-12-07 00:55:29 -05:00
Thomas Piccirello
66e3be1579 Replace WebUI Options fixed-width labels
This allows the labels to auto-expand based on the language used, and also removes unnecessary whitespace. Additionally, this results in a look more consistent with the GUI which right-aligns labels.
2018-12-07 00:55:29 -05:00
Thomas Piccirello
99ca872011 Reorder WebUI options to match GUI 2018-12-07 00:52:50 -05:00
Mike Tzou
6bb4eb825b Merge pull request #9942 from Chocobo1/pbkdf2
Do password hashing properly
2018-12-06 16:22:22 +08:00
Mike Tzou
1eef5b6876 Merge pull request #9373 from FranciscoPombal/checking_mem_usage_adv_settings
Add checking_mem_usage option to AdvancedSettings
2018-12-06 16:20:02 +08:00
Mike Tzou
0ab5b8fcba Merge pull request #9824 from thalieht/style
Convert all foreach() to range-based for()
2018-12-06 16:19:17 +08:00
FranciscoPombal
74be5d9030 Add checking_mem_usage option to AdvancedSettings 2018-12-06 03:10:24 +08:00
Vladimir Golovnev
de9067d6a3 Merge pull request #9967 from thalieht/mac-start-minimized
Save option to start minimized in Mac
2018-12-05 20:30:51 +03:00
Vladimir Golovnev (Glassez)
89deccd9b5 Show error message when Session failed to start 2018-12-05 19:57:44 +03:00
Chocobo1
593052dd93 Revise startup message in nox version
Only print the WebUI username when password is still the default.
2018-12-05 13:28:43 +08:00
Chocobo1
2c8890bd06 Apply PBKDF2 to GUI lock 2018-12-05 13:28:42 +08:00
Chocobo1
05d6a29416 Apply PBKDF2 when storing passwords 2018-12-05 13:28:42 +08:00
Chocobo1
8a6cac8338 Make OpenSSL a direct dependency 2018-12-05 13:28:42 +08:00
Mike Tzou
eb957bb790 Merge pull request #9953 from Chocobo1/announce
Use ip parameter from tracker request if provided
2018-12-05 11:13:03 +08:00
sledgehammer999
31078cb7fd Merge pull request #9907 from sledgehammer999/cxx11_autotools
Autotools: Better C++ mode detection and handling
2018-12-04 17:32:37 +02:00
sledgehammer999
63e4dc566a Autotools: Replace CPPFLAGS with CXXFLAGS 2018-12-04 16:54:51 +02:00
sledgehammer999
d04d6bfcf8 Autotools: Print Boost LDFLAGS nicer 2018-12-04 16:53:48 +02:00
thalieht
6a21acbf1a Save option to start minimized in Mac 2018-12-04 11:43:32 +02:00
sledgehammer999
8f5bbe24ce Autotools: Improve handling of C++ mode 2018-12-04 01:42:14 +02:00
Mike Tzou
1baa71c97a Merge pull request #9938 from Chocobo1/tr
Fix translation issues
2018-12-03 13:30:14 +08:00
Chocobo1
ede9b1a7c4 Fix typo 2018-12-03 12:06:32 +08:00
Chocobo1
b4564f5f4e Use ip parameter from tracker request if provided
Closes #9949.
2018-12-03 00:14:15 +08:00
Chocobo1
b56937f5fa Use QHostAddress for storing IP 2018-12-02 14:18:18 +08:00
Chocobo1
36429887dc Fix wrong locale used in log message 2018-12-01 20:39:20 +08:00
Chocobo1
297ef52dcb Fix weekday names translations
Closes #9933.
2018-12-01 20:32:35 +08:00
Chocobo1
0ad831e48a Fix strings not translated
Closes #9934.
2018-12-01 20:32:34 +08:00
thalieht
1f36b8b89f Combine qAsConst() with copyAsConst() to asConst() 2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555 Convert all foreach() to range-based for() 2018-11-28 23:40:12 +02:00
thalieht
d668a4fe6d Fix coding style for various things 2018-11-28 23:37:35 +02:00
Mike Tzou
5efdd211cc Merge pull request #9892 from Chocobo1/progress
Code cleanup
2018-11-29 01:16:07 +08:00
Vladimir Golovnev
9e00f08ea6 Merge pull request #9883 from glassez/queue
Save torrents queue in separate file
2018-11-28 16:07:29 +03:00
Thomas Piccirello
4d3a894bcb Allow tables to be added without a parent panel 2018-11-28 00:21:56 -05:00
Thomas Piccirello
881b692c58 Simplify implementation 2018-11-28 00:21:56 -05:00
Thomas Piccirello
b2f454399c Add ability to pass urls to the webui download page 2018-11-28 00:21:56 -05:00
Chocobo1
0339e6ee35 Clean up code 2018-11-27 22:01:27 +08:00
Vladimir Golovnev (Glassez)
68508ba657 Save torrents queue in separate file 2018-11-27 16:55:45 +03:00
Vladimir Golovnev (Glassez)
e146c2f227 Fix signed/unsigned integers comparison warning 2018-11-27 16:55:44 +03:00
Mike Tzou
a97543d258 Merge pull request #9919 from Piccirello/webui-sidebar
Show ellipsis when WebUI sidebar is too narrow
2018-11-27 21:02:21 +08:00
Mike Tzou
a7c6e873d4 Merge pull request #9889 from Piccirello/instantiate-search
Only instantiate SearchPluginManager as needed
2018-11-27 21:00:46 +08:00
Thomas Piccirello
64c20bf6b2 Allow WebUI sidebar to be collapsed 2018-11-25 15:05:31 -05:00
Thomas Piccirello
2ef16f669b Show ellipsis when WebUI sidebar is too narrow 2018-11-25 14:57:49 -05:00
Vladimir Golovnev
0e8323659e Merge pull request #9869 from Piccirello/download-bug
Fix WebUI bug on override of Start Torrent option
2018-11-25 06:40:22 +03:00
Mike Tzou
45cfac6c00 Merge pull request #9891 from Chocobo1/i18n
Fix missing words in WebUI
2018-11-24 10:55:13 +08:00
Chocobo1
b79a231d2e Fix missing words in WebUI
This is because Qt translator returns empty string when the translation
is not provided, now we fallback to the original string from source code.

Closes #9868.
2018-11-23 23:42:20 +08:00
Mike Tzou
70707a2664 Merge pull request #9884 from Piccirello/webui-cookie-samesite
Add SameSite attribute to WebUI session cookie
2018-11-22 10:40:37 +08:00
Thomas Piccirello
4885fe6b4c Only instantiate SearchPluginManager as needed 2018-11-21 16:59:38 -05:00
Thomas Piccirello
cd47380b85 Add SameSite attribute to WebUI session cookie
This attribute prevents the cookie from being submitted on any cross-site request, strongly limiting CSRF.

Closes #9877.
2018-11-20 22:12:24 -05:00
Mike Tzou
d05897c89a Merge pull request #9859 from Chocobo1/host
Add option for WebUI Host header validation
2018-11-20 12:37:55 +08:00
Mike Tzou
9826aec4cf Merge pull request #9820 from Piccirello/webui-col-icon
Show icon in WebUI sorted column
2018-11-19 15:06:01 +08:00
Tom Piccirello
2d7138839d Fix WebUI bug on override of Start Download option
Disabled form values aren't submitted, causing the add_paused value not to be sent when Start Torrent was checked. qBittorrent would then fall back to the global Start Download preference.

Closes #9855.
2018-11-18 22:46:19 -05:00
Chocobo1
58be2d4bc2 Put WebUI security related options into a groupbox 2018-11-19 11:05:04 +08:00
Chocobo1
344e47dcfb Add option for WebUI Host header validation
Closes #9743.
2018-11-19 11:05:04 +08:00
Mike Tzou
39ee27785c Merge pull request #9835 from Chocobo1/cppver
Implement proper C++11 mode detection
2018-11-19 10:53:32 +08:00
sledgehammer999
45878fb7dd Sync translations from Transifex and run lupdate 2018-11-19 01:35:31 +02:00
Mike Tzou
d3e012148e Merge pull request #9858 from Chocobo1/clamp
Clamp values properly
2018-11-18 19:43:34 +08:00
Chocobo1
d866033a8e Fix divide-by-zero crash
Previously here was using a cheap method to avoid divisor becoming < 0, but from
the crash stacktrace it seems this is not enough, now the divisor is properly
clamped to have 1 as the minimum.
Also it will now display "Unknown" for invalid calculation results.

Closes #9857.
2018-11-18 13:50:23 +08:00
Vladimir Golovnev
4f565d9f09 Merge pull request #9844 from glassez/fix-rss
Improve RSS Feed updating. Closes #9833
2018-11-17 11:32:04 +03:00
Vladimir Golovnev (Glassez)
64d7cf4794 Improve RSS Feed updating
Don't process "out-of-limit" articles.
Closes #9833.
2018-11-16 10:30:24 +03:00
Mike Tzou
9090f2d321 Merge pull request #9832 from thalieht/fieldwidth
Allow qBt to resize the search filter in search job
2018-11-14 03:58:37 +08:00
Chocobo1
819a84eb7a Implement proper C++11 mode detection
Newer compilers have C++14 mode as default and package maintainers tend
to not specifying a C++ version when building a package, this causes
compatibility issues when (for example) qbt is compiled in C++11 and
dependency lib is in C++14. See issue #9485.

What this commit does:
1. Checks if compiler supports at least C++11
2. Checks if compiler is set in at least C++11 mode
2018-11-13 23:06:41 +08:00
thalieht
59fcfdc13b Allow resizing search filter in search job
Allow qBt to resize the search filter in search job because it causes
qBt's width to exceed the screen's width for laptop users.
2018-11-13 11:20:29 +02:00
Thomas Piccirello
555382779c Show icon in WebUI sorted column 2018-11-12 19:37:54 -05:00
sledgehammer999
ceb4a0d5fe Change FossHub RSS url for updates
The new RSS format is compatible with our current parser. FossHub will
redirect old URL to the new one so older clients will not be affected.
2018-11-11 18:30:00 +02:00
Mike Tzou
547140ec46 Merge pull request #9822 from Chocobo1/fixCrash
Don't double delete a pointer
2018-11-09 00:11:09 +08:00
Chocobo1
626b9eb380 Don't double delete a pointer
`m_searchFilterAction` is owned by Qt, so we shouldn't delete it
manually.
2018-11-08 21:02:44 +08:00
Eugene Shalygin
019da6a98c Merge pull request #9509 from zeule/cmake-cxx14
cmake: use C++14 when available
2018-11-07 14:07:16 +01:00
Mike Tzou
2ce57b97be Merge pull request #9799 from Chocobo1/removeCheckbox
Remove speed limit checkbox in Options dialog
2018-11-07 13:40:43 +08:00
Vladimir Golovnev
d2d28ef19c Merge pull request #9815 from dzmat/fix_zero_graphs
Fix speed graph "high speeds" bug. Closes #9807
2018-11-06 17:15:21 +03:00
dzmat
6fa64c81b7 Fix speed graph "high speeds" bug 2018-11-06 15:53:20 +03:00
Vladimir Golovnev
54e4806e3d Merge pull request #9817 from Piccirello/torrent-dl-success
Handle downloading .torrent file as success
2018-11-06 15:39:51 +03:00
Vladimir Golovnev
46ec72f688 Merge pull request #9580 from glassez/start_paused
Improve handling of torrent startup/recheck
2018-11-06 15:34:21 +03:00
Chocobo1
266ce1d226 Clean up SpeedLimitDialog class 2018-11-05 11:07:52 +08:00
Chocobo1
3fa5358c3f Remove speed limit checkbox in Options dialog
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Tom Piccirello
1b81356a67 Handle downloading .torrent file as success
We don't know whether the download will be successful, so default to success. Closes #9811.
2018-11-04 14:43:33 -05:00
Mike Tzou
a57a026f4c Merge pull request #9804 from Chocobo1/fix_search
Fix defects in search engine
2018-11-04 12:51:49 +08:00
Chocobo1
c1c28ce195 Improve parser for search engine versions.txt
The parse could fail when there is an extra empty line at the end of
file, this patch fixes it.
2018-11-03 01:01:46 +08:00
Chocobo1
ee030cc4eb Fix wrong type passed to arg() 2018-11-03 00:34:25 +08:00
Chocobo1
d52c6230e9 Fix defects found by lgtm.com 2018-11-03 00:34:25 +08:00
Mike Tzou
53f9d031c9 Merge pull request #9800 from Chocobo1/warning
Fix compiler warnings
2018-11-03 00:33:19 +08:00
Vladimir Golovnev (Glassez)
1214cf0fa1 Don't update torrent status unnecessarily 2018-11-02 19:25:39 +03:00
Vladimir Golovnev (Glassez)
9dadb919ef Improve force recheck of paused torrent 2018-11-02 19:25:38 +03:00
Vladimir Golovnev (Glassez)
a8c00456e4 Restore torrent in two steps
Add/restore all torrents in "paused" state and then resume those
that need to be really "resumed" (added/restored in "resumed" state).
Keep torrents with missing files paused.
Force recheck torrent with missing files when it's resumed by the user.
2018-11-02 19:25:26 +03:00
Chocobo1
209e6a889a Fix MSVC warning C4804
Full message of the warning:
webui\api\searchcontroller.cpp(54): warning C4804: '>': unsafe use of type 'bool'
in operation
2018-11-02 14:35:35 +08:00
Vladimir Golovnev
dea6b3d7e0 Merge pull request #9562 from dzmat/round_speed_labels
Improve scaling of speed graphs
2018-11-01 09:46:26 +03:00
Vladimir Golovnev
69bf848f32 Merge pull request #9777 from glassez/fix-altwebui
Fix Alternative Web UI to be available. Closes #9720
2018-10-29 09:20:14 +03:00
Vladimir Golovnev (Glassez)
f309a5279e Fix Alternative Web UI to be available 2018-10-29 08:32:57 +03:00
Vladimir Golovnev
2a67f640f0 Merge pull request #9774 from glassez/fix-locale
Consider empty locale  setting as not set. Closes #9735
2018-10-28 17:43:07 +03:00
Vladimir Golovnev
4fee16fafb Merge pull request #8217 from Piccirello/webui-statusbar-freespace
Free disk space in WebUI status bar
2018-10-28 10:02:49 +03:00
Vladimir Golovnev (Glassez)
5712c05e68 Consider empty locale setting as not set 2018-10-27 20:59:08 +03:00
Vladimir Golovnev
b5d253ae66 Merge pull request #9766 from glassez/fix-indent
Fix indentation in tstool.py
2018-10-27 07:52:29 +03:00
Vladimir Golovnev (Glassez)
f0f329b402 Fix indentation in tstool.py 2018-10-26 20:46:02 +03:00
Vladimir Golovnev
30dadfceea Merge pull request #9718 from qbittorrent/webapi-version-bump
Bump WebAPI version
2018-10-25 08:41:53 +03:00
Mike Tzou
2fd4d50f3a Merge pull request #9754 from silverqx/previewable-ts-ext
Recognize TS files as previewable
2018-10-25 12:56:02 +08:00
silver
0b20750cd5 Recognize *.ts files as previewable 2018-10-24 16:18:35 +02:00
Vladimir Golovnev
7e36cc746f Merge pull request #8584 from Piccirello/new-search-api-2
WebUI search API. Closes #2495
2018-10-24 13:13:16 +03:00
Thomas Piccirello
f2957c721d Use QElapsedTimer 2018-10-22 23:17:46 -04:00
Thomas Piccirello
2aea235e34 Add free disk space to WebUI status bar
Closes #6829.
2018-10-22 22:06:14 -04:00
dzmat
fabd7e34f5 Improve scaling of speed graphs
Make Y axis scale to fix on predetermined nice looking positions
2018-10-21 16:45:32 +07:00
Mike Tzou
c57a7292b6 Merge pull request #9698 from Chocobo1/travis
Fix TravisCI cmake build on macOS
2018-10-18 10:28:04 +08:00
Chocobo1
c269d63bc1 Fix TravisCI cmake build on macOS
Instead of hard coding a macOS version to use, now we follow TravisCI default
version, currently: xcode9.4.
2018-10-18 00:57:58 +08:00
Tom Piccirello
41462a39c7 Bump WebAPI version 2018-10-17 10:54:40 -04:00
Mike Tzou
1c3112e402 Merge pull request #9710 from Piccirello/webui-autotmm-context-bug
Fix WebUI Auto TMM context menu bug
2018-10-16 16:46:23 +08:00
Thomas Piccirello
bab18036aa Fix WebUI Auto TMM context menu bug
When multiple torrents are selected with different Auto TMM values, the Auto TMM context menu option is hidden. This option is never unhidden, requiring a refresh of the page.
2018-10-15 21:08:42 -04:00
Thomas Piccirello
ae374f6903 Catch invalid values 2018-10-15 04:31:29 -04:00
Eugene Shalygin
5ccd4b3611 Merge pull request #9691 from zeule/cmake
cmake: restore out-of-source build
2018-10-14 11:28:51 +02:00
Eugene Shalygin
e590fff2fe cmake: restore out-of-source build
Qt translations have to be compiled in a shared library or executable,
and since we use static libraries for the components, webui translation
files have to be compiled into the main executable.
2018-10-14 11:06:20 +02:00
Mike Tzou
18a64f109d Merge pull request #9683 from Chocobo1/win_fs
Add isNetworkFileSystem() detection on Windows
2018-10-14 01:29:22 +08:00
Vladimir Golovnev
7befc79081 Merge pull request #9600 from dzmat/averager
Rewrite averaging code and reduce horizontal graphs resolution
2018-10-13 16:52:58 +03:00
dzmat
23d924643f Reduce horizontal graphs resolution
Rewrite averaging code and reduce horizontal graphs resolution for
30 minutes and 6 hours graphs to decrease CPU usage.
2018-10-13 18:28:38 +07:00
Vladimir Golovnev
ff72be9c2d Merge pull request #9481 from mj-p/master
Don't recheck just checked torrent. Closes #8743, #9370
2018-10-13 09:34:27 +03:00
Vladimir Golovnev
5d2e35d14d Merge pull request #9026 from glassez/www-translate
Use independent translation for WebUI
2018-10-12 13:39:18 +03:00
Vladimir Golovnev
3e8f3d61fb Merge pull request #9586 from Piccirello/webui-categories
Add categories WebAPI
2018-10-12 10:27:13 +03:00
Vladimir Golovnev
72e148e0f1 Merge pull request #9590 from dzmat/disable_graphs_collection
Implement option for disabling speed graphs
2018-10-12 08:24:33 +03:00
Chocobo1
acdf5363b2 Simplify #if conditions 2018-10-12 00:04:08 +08:00
Chocobo1
cff5af2e76 Add isNetworkFileSystem() detection on Windows
This allows network mounts to be monitored correctly by polling timer.
2018-10-12 00:03:12 +08:00
Mike Tzou
fb8fad3fa1 Merge pull request #9673 from Chocobo1/fs_watch
Add SMB2 magic number
2018-10-11 23:11:06 +08:00
Vladimir Golovnev
305c1fc851 Merge pull request #8980 from silverqx/clear-on-esc
Clear LineEdit on ESC
2018-10-11 17:31:38 +03:00
Chocobo1
9b552c463f Add FileSystemWatcher log messages 2018-10-11 11:01:22 +08:00
Chocobo1
25a0147f61 Add SMB2 magic number
Closes #9671.
2018-10-10 10:36:26 +08:00
Vladimir Golovnev (Glassez)
c1a4ef1377 Use independent translation for WebUI 2018-10-09 11:10:08 +03:00
Vladimir Golovnev (Glassez)
becb002d87 Create WebUI translation update tool 2018-10-09 11:10:07 +03:00
Vladimir Golovnev
85d49e2540 Merge pull request #9595 from elFarto/master
Allow to disable downloading REPACK/PROPER matches
2018-10-09 08:20:48 +03:00
Stephen Dawkins
d8054f9cb3 Allow to disable downloading REPACK/PROPER matches 2018-10-09 08:14:12 +03:00
dzmat
2d0f0cb372 Allow to disable speed graphs 2018-10-08 23:51:02 +07:00
Thomas Piccirello
6d619e9491 Add categories WebAPI
Closes #5330.
2018-10-07 14:52:34 -04:00
silverqx
ea404445f6 Clear LineEdit on ESC 2018-10-04 20:01:12 +02:00
sledgehammer999
b09e32ebc0 Merge pull request #9635 from sledgehammer999/tune_alert_mask
Use a more detailed alert mask where possible
2018-10-02 19:36:27 +03:00
Mike Tzou
5aaa51881e Merge pull request #9614 from Piccirello/js-defects
Fix minor JavaScript defects
2018-10-02 10:19:47 +08:00
sledgehammer999
2f1a0ffe5c Use a more detailed alert mask where possible
Closes #9547
2018-10-02 02:42:06 +03:00
Vladimir Golovnev
1de7c385d5 Merge pull request #9585 from Piccirello/webui-translate-status
Translate WebUI torrents Status column
2018-10-01 18:23:51 +03:00
Vladimir Golovnev
3236f65533 Merge pull request #9606 from dzmat/patch-1
Update uncrustify.cfg
2018-10-01 18:21:04 +03:00
Thomas Piccirello
0b6ae68801 Add WebUI search API controller
Closes #2495.
2018-09-30 20:07:27 -04:00
dzmat
998545512a Update uncrustify.cfg
Suddenly uncrustify does not append spaces after comma in function's argument lists. I found only one option which looks fit for it.
2018-09-30 15:46:33 +07:00
Administrator account
f6ed605414 Don't recheck just checked torrent
Closes #8743.
Closes #9370.
2018-09-29 17:13:44 +03:00
Mike Tzou
649798c989 Merge pull request #9611 from Chocobo1/fixes
Fix minor defects
2018-09-28 02:42:03 +08:00
Thomas Piccirello
1e6942e967 Fix minor JavaScript defects 2018-09-26 23:10:51 -04:00
Chocobo1
43fbf8ab3b Remove default parameter in derived function
When derived function have different default value than base, it might cause
unnecessary confusion, see: https://stackoverflow.com/q/3533589
2018-09-27 00:43:24 +08:00
Chocobo1
b8d87f641f Avoid variable shadowing 2018-09-26 23:53:17 +08:00
Chocobo1
66ffb01629 Add include guard to headers 2018-09-26 23:49:33 +08:00
Mike Tzou
08df3277df Merge pull request #9575 from Chocobo1/python
Fix asking to install Python
2018-09-26 12:36:05 +08:00
Chocobo1
f26a5c3581 Update Python URLs 2018-09-25 11:46:40 +08:00
Chocobo1
7d808cfc99 Fix asking to install Python
The dialog asking users to install python is borked since the last refactor, this
commit fixes it.
2018-09-25 11:46:39 +08:00
Chocobo1
60ecc4fe8f Move python related functions
Also the functions are slightly changed to return full path of the found
python executable.
2018-09-25 11:46:39 +08:00
Thomas Piccirello
65934a4c69 Add locale to js file path
This reduces the likelihood of a cached file being used after the locale is changed.
2018-09-23 16:27:47 -04:00
Thomas Piccirello
7b85473d2b Translate WebUI torrents Status column
Closes #9554.
2018-09-22 18:13:47 -04:00
sledgehammer999
6c0af1b078 Merge pull request #9553 from sledgehammer999/misc_fixes
Misc fixes
2018-09-22 20:09:54 +03:00
sledgehammer999
76f186f395 Merge pull request #9564 from dzmat/littlfix
Replace magic number with system define.
2018-09-22 14:10:11 +03:00
sledgehammer999
06c8142826 Make strings actually translatable 2018-09-22 14:05:41 +03:00
sledgehammer999
e8213b2c6a Remove unused variable 2018-09-22 14:05:40 +03:00
dzmat
fc93f2eb78 Replace magic number with system define 2018-09-21 22:33:43 +07:00
Eugene Shalygin
9b7a884d2b Merge pull request #9330 from zeule/cmake
Reword the CMake warning message
2018-09-20 20:43:35 +02:00
Eugene Shalygin
c8a6fe9974 Reword the warning message 2018-09-20 18:27:10 +02:00
Mike Tzou
5a638e4d28 Merge pull request #9525 from Chocobo1/pep8
Reformat python code to be compliant with PEP8
2018-09-19 17:41:47 +08:00
sledgehammer999
de951d6637 Sync translations from Transifex and run lupdate 2018-09-18 22:31:50 +03:00
Chocobo1
bbe76231cf Reformat python code to be compliant with PEP8
The following command is used:
`pycodestyle --ignore=E265,E722 --max-line-length=100 <py files>`
2018-09-18 12:33:09 +08:00
Eugene Shalygin
141af072b9 cmake: use C++14 when available
Libtorrent does the same and we have to follow since
its ABI depends on the C++ standard version.

Partially closes #9485.
2018-09-16 18:29:15 +02:00
sledgehammer999
bdc788c824 Bump Web API version 2018-09-16 09:37:32 +03:00
Vladimir Golovnev
fe9fb03e38 Merge pull request #9482 from proninyaroslav/patch-1
Fix typo in variable name
2018-09-13 19:45:14 +03:00
Vladimir Golovnev
28a6ac3197 Merge pull request #9228 from Piccirello/addCategory
Add save path and category editing to WebUI
2018-09-13 19:43:28 +03:00
sledgehammer999
6660184091 Merge pull request #9483 from sledgehammer999/save_queued_state_change
Save state change from queued to paused
2018-09-12 11:29:27 +03:00
sledgehammer999
7d493f5367 Fix macOS builds in travis-ci 2018-09-11 22:05:34 +03:00
sledgehammer999
c520e657ce Save state change from queued to paused 2018-09-11 21:00:04 +03:00
Yaroslav Pronin
4e28033c9c Fix typo in variable name 2018-09-11 17:56:55 +00:00
sledgehammer999
bfb1210c43 Merge pull request #9406 from thalieht/preselecttext
Preselect name without extension when renaming files
2018-09-11 14:33:25 +03:00
Vladimir Golovnev
5e35335ad4 Merge pull request #9254 from thalieht/searchStuff
Add a shortcut to download selected torrents from search job
2018-09-10 07:19:02 +03:00
Vladimir Golovnev
d18de18128 Merge pull request #9461 from thalieht/tracker
Show "N/A" if there is no scrape response
2018-09-10 07:14:28 +03:00
sledgehammer999
01feae60ee Merge pull request #9449 from sledgehammer999/favicon_key
Save option about tracker favicons under correct key
2018-09-09 01:30:00 +03:00
sledgehammer999
118545d0f4 Merge pull request #9383 from sledgehammer999/huge_alert_queue
Decrease probability of missing important alerts
2018-09-09 01:29:28 +03:00
Mike Tzou
5cb41c3c2d Merge pull request #9387 from Piccirello/webui-pref-tweaks
Minor WebUI visual changes
2018-09-08 14:51:26 +08:00
thalieht
94613c2fa2 Fix some warnings 2018-09-07 19:40:08 +03:00
thalieht
e2b46f01bb Show "N/A" if there is no scrape
Disambiguates whether the tracker send a response of 0 peers/seeds/downloaded or didn't send one at all.
2018-09-07 19:39:53 +03:00
Mike Tzou
487ea36782 Merge pull request #9444 from Chocobo1/dpi
Fix GUI scaling issue on Linux
2018-09-06 16:04:44 +08:00
sledgehammer999
eb9f07bcc6 Save option about tracker favicons under correct key 2018-09-06 02:45:09 +03:00
sledgehammer999
9ce619eac8 Decrease probability of missing important alerts
During startup we can get above 1000 alerts at each pop even with only
30 torrents in the queue. This is because libtorrent will post
piece_finished_alert and file_completed_alert for each torrent. These
alerts push out of the way the ones we care about.
The alert queue will be grown to max only if needed. So we don't use
more memory. It will greatly depend on how many torrents a user has in
their session.

When getting fastresume_rejected_alert we need to act as fast as
possible in pausing it, otherwise there's a chance it will begin
downloading and writing to disk before we pause it.
2018-09-06 02:06:44 +03:00
thalieht
ffc2193df9 Preselect name without extension when renaming files
And preselect the whole string for everything else.
2018-09-05 16:55:42 +03:00
Thomas Piccirello
fef1ad6083 Allow WebUI sidebar filters to be hidden 2018-09-05 02:40:33 -04:00
Chocobo1
79dae55a61 Fix GUI scaling issue on Linux
It seems `QT_AUTO_SCREEN_SCALE_FACTOR` doesn't work as expected.
Closes #6935.
2018-09-05 12:17:30 +08:00
Mike Tzou
8544351754 Merge pull request #9436 from Piccirello/disable-dht
Don't disable DHT when using force proxy
2018-09-05 12:01:20 +08:00
Thomas Piccirello
c10d237f7a Don't disable DHT when using force proxy
Closes #9292
2018-09-02 19:48:03 -04:00
Thomas Piccirello
adad883eb6 Increase WebUI Options initial height 2018-08-31 11:38:17 -04:00
Thomas Piccirello
b05a443cad Adjust WebUI Options form alignment 2018-08-31 11:38:10 -04:00
Thomas Piccirello
63c53766b4 Add save path and editing to WebUI new category dialog 2018-08-31 11:27:05 -04:00
thalieht
ce3e68670d Refactor in searchjob to always color visited entries
Now it colors multiple entries, when visited at once, via the hotkey or
the Download button.
2018-08-31 15:57:07 +03:00
Mike Tzou
846d8993a9 Merge pull request #9410 from Chocobo1/clazy
Minor fixes
2018-08-30 12:07:34 +08:00
Chocobo1
371c7008e1 Update INSTALL file
Closes #9385.
2018-08-29 19:22:33 +08:00
sledgehammer999
6f04754a63 Merge pull request #9408 from FlingeR/patch-openbsd
Support the OpenBSD filesystem
2018-08-28 23:19:35 +03:00
Elias M. Mariani
33af699191 Support the OpenBSD filesystem 2018-08-28 13:58:09 -03:00
Chocobo1
718b3f0bf5 Reset button text to default
This is to avoid Qt auto-generating code like this:
  `buttonAdd->setText(QStringLiteral(""));`
Which makes no sense and triggers clazy warning (Wclazy-empty-qstringliteral).
2018-08-28 14:14:01 +08:00
Chocobo1
254782def6 Avoid copy-construct QString in for loop 2018-08-28 14:13:59 +08:00
sledgehammer999
be419d5ecf Fix TravisCI macOS builds 2018-08-27 22:00:58 +03:00
sledgehammer999
af6c5ae5bd Merge pull request #9390 from thalieht/fixprioritysaving
Save fastresumes when changing torrent priorities
2018-08-27 21:33:02 +03:00
thalieht
ec9120adf0 Save torrents priorities on torrent finished
Save fastresumes for all torrents that shifted in the queue when a torrent finished.
2018-08-25 22:02:14 +03:00
thalieht
95b02bbb2e Save fastresumes when changing torrent priorities 2018-08-25 22:02:14 +03:00
Vladimir Golovnev (Glassez)
386d0565fe Always save actual queue position 2018-08-25 22:02:14 +03:00
Vladimir Golovnev
9fa78c7b50 Merge pull request #9331 from thalieht/seqfirstlast
Allow setting seq & first/last from context menu without metadata
2018-08-22 17:16:44 +03:00
Vladimir Golovnev
93f9b3de8b Merge pull request #9314 from thalieht/searchregexfilter
Add option to use regexps in the search job's search filter's context menu
2018-08-22 17:15:37 +03:00
Mike Tzou
5f175e113a Merge pull request #9365 from Chocobo1/qchar
Fix WebUI unreachable issue
2018-08-21 11:52:39 +08:00
sledgehammer999
c83d89385a Merge pull request #9357 from Chocobo1/svg
Fix icon height/width ratio
2018-08-20 18:47:55 +03:00
Chocobo1
903a747dba Add config file for SVGO 2018-08-20 17:58:19 +08:00
Chocobo1
e9a8ac0544 Fix icon height/width ratio
It was causing misalignment in TransferListFiltersWidget text label.
2018-08-20 17:43:47 +08:00
Thomas Piccirello
a0e6007fc1 Include category save path in web api sync data 2018-08-18 22:04:21 -04:00
Thomas Piccirello
d89ef22d85 Require torrent category creation to be explicit 2018-08-18 22:04:21 -04:00
Chocobo1
262c3a75bd Fix WebUI unreachable issue
QVariant doesn't have constructor for plain char, by default it converts
a plain char into an integer, hence the WebUI issue.
Closes #9333.
2018-08-19 03:33:08 +08:00
Mike Tzou
ee57b68901 Merge pull request #9346 from Chocobo1/lastact
Fix values sorted wrong in "Last Activity" column
2018-08-17 11:07:09 +08:00
Chocobo1
d7aa0819d9 Fix values sorted wrong in "Last Activity" column
I suspect there could be other negative values.
Closes #9012.

Also apply the changes to TR_RATIO_LIMIT, avoiding similar problems.
2018-08-16 11:30:26 +08:00
sledgehammer999
2d94c4cb6e Merge pull request #9336 from sledgehammer999/fix_mingw_warnings
Fix mingw warning about unrecognized escape sequence
2018-08-15 16:01:52 +03:00
Mike Tzou
0c4a7ed9c8 Merge pull request #9284 from Chocobo1/svg
Migrate to SVG icons
2018-08-15 15:06:31 +08:00
sledgehammer999
14e5fc8e33 Fix mingw warning about unrecognized escape sequence
Warning introduced by commit 6203f23f06
2018-08-14 22:45:21 +03:00
thalieht
7ed0d13de2 Allow setting seq & first/last from context menu without metadata 2018-08-14 13:58:22 +03:00
thalieht
400eafce2b Rename 2 methods to eliminate ambiguity 2018-08-14 13:40:00 +03:00
thalieht
4dcb0b922e Add regex option in the search filter's context menu
In the search job widget.
2018-08-14 13:38:34 +03:00
Chocobo1
71dcc76a64 Replace png icons with svg 2018-08-14 17:03:14 +08:00
Chocobo1
866408151c Remove GuiIconProvider::generateDifferentSizes()
Let Qt do the scaling seems to be fine.
2018-08-14 16:48:58 +08:00
Mike Tzou
078325a3eb Merge pull request #9318 from eli-schwartz/fix-desktop-file
Fix regression that broke installing desktop file
2018-08-14 00:08:44 +08:00
Eli Schwartz
acdf9061fe Fix regression that broke installing desktop file
In commit 5d94db9c79 the desktop file was
moved from src/ to dist/ but the relative path from src/src.pro was
switched to an absolute path from the repository root. This broke
detection of the file from within qmake.

Fix by using the same $DIST_PATH used elsewhere for consistency, which
uses ../dist/.
2018-08-12 23:14:44 -04:00
sledgehammer999
ac1839fa6b Bump Web API version 2018-08-12 21:08:42 +03:00
sledgehammer999
239f98e450 Sync translations from Transifex and run lupdate 2018-08-12 21:07:08 +03:00
Mike Tzou
cced81ddf0 Merge pull request #9315 from Chocobo1/lupdate
Fix lupdate errors
2018-08-13 01:52:40 +08:00
Chocobo1
6f2b1823ad Fix lupdate errors
I suspect lupdate isn't smart enough to figure out what tr() is suppose
to do, so just make it a static function in class.
The error was: tr() cannot be called without context
2018-08-13 01:24:34 +08:00
Chocobo1
d9461f348f Generate i18n .ts files in the correct directory
Fixup 5b7c089dd2.
Closes #9313.
2018-08-13 00:11:28 +08:00
sledgehammer999
6c9a4df515 Merge pull request #8538 from thalieht/searchFilter
Add a name filter for search results
2018-08-12 16:44:53 +03:00
sledgehammer999
366239ca7b Merge pull request #9244 from Couchy/inhibit_sleep_options
Inhibit sleep for running downloads or uploads regardless of network activity
2018-08-12 16:31:01 +03:00
sledgehammer999
a3172590d0 Merge pull request #9255 from thalieht/filterRegex
Add option to use regexps in the transfer list's search filter's context menu
2018-08-12 16:22:00 +03:00
Mike Tzou
f44ff63361 Merge pull request #9278 from Couchy/torrent_file_error_handling
Improve error handling when loading torrent files
2018-08-12 00:21:56 +08:00
sledgehammer999
9dd1049f24 Merge pull request #9274 from sledgehammer999/tray_close_notification
Notify users on 1st time close/minimize to tray
2018-08-11 00:13:41 +03:00
Couchy
3808b5df16 Avoid allocating large memory when loading a .torrent file
`QIODevice::read(qint64 maxSize)` will allocate full `maxSize` of memory no matter
what the real file size was, this caused users to experience out-of-memory
exception on 32-bit qbt.
Also handle the OOM execption if it still fails.

Closes #9064, #9075, #9130, #9239, #9246, #9279.
2018-08-11 00:48:35 +08:00
Mike Tzou
5f61ffa184 Merge pull request #9303 from Chocobo1/fix
Fix I/O error after fetching magnet metadata
2018-08-11 00:14:06 +08:00
thalieht
2485525896 Add option for regexps in the transferlist search filter's context menu 2018-08-10 12:44:10 +03:00
Chocobo1
63991cb58e Fix I/O error after fetching magnet metadata
It is caused by an extra path seperator, so removing it fixes it.
Fixup 9612a75faa.
2018-08-10 12:48:04 +08:00
sledgehammer999
05d76e7282 Update AppVeyor config 2018-08-10 01:16:42 +03:00
sledgehammer999
fd30bf7423 Notify users on 1st time close/minimize to tray 2018-08-09 16:48:34 +03:00
sledgehammer999
2befd2927a Revert "Set "close to tray" to false as default"
This reverts commit dc9ec0e408.
2018-08-09 16:37:23 +03:00
Vladimir Golovnev
260b03de92 Merge pull request #9265 from glassez/dont-save-paused
Never save resume data for already paused torrents
2018-08-08 08:45:15 +03:00
Mike Tzou
879ba230af Merge pull request #9280 from Chocobo1/upgrade
Make ProgramUpdater upgrade to 64-bit qbt when running on 64-bit Windows
2018-08-08 01:12:25 +08:00
Chocobo1
8e1f3ac016 Make ProgramUpdater upgrade to 64-bit qbt when running on 64-bit Windows 2018-08-06 17:36:32 +08:00
Mike Tzou
89081d5365 Merge pull request #9268 from Chocobo1/clean
Put temporary files in qbt own temp folder and cleanups
2018-08-04 01:18:56 +08:00
Lukas Greib
48cd993c92 Inhibit sleep regardless of activity
"Active torrents" is a somewhat unintuitive concept as a basis for
preventing sleep, as torrents can become active or inactive on the
network at any time. This brings some predictability to the inhibit
sleep option, and will inhibit sleep as long as there are unpaused
downloads or uploads, regardless of network activity.

Closes #1696, #4592, #4655, #7019, #7159, #7452
2018-08-03 09:58:15 -04:00
Vladimir Golovnev
d106d908ef Merge pull request #9273 from thalieht/closetotray
Set "close to tray" to false as default
2018-08-03 11:16:50 +03:00
thalieht
dc9ec0e408 Set "close to tray" to false as default 2018-08-02 17:11:41 +03:00
Chocobo1
1c7abfdf46 Avoid regenerating .qm files unnecessarily
Translations included at top level is to avoid regenerating the .qm files every
time when src.pro is processed.
Partially revert 5b7c089dd2.
2018-08-02 17:44:06 +08:00
Chocobo1
9612a75faa Put temporary files in qbt own temp folder 2018-08-02 17:44:06 +08:00
Chocobo1
e1727c9a6a Refactor GuiIconProvider::generateDifferentSizes() 2018-08-02 17:44:06 +08:00
Vladimir Golovnev (Glassez)
2a6e38aa28 Never save resume data for already paused torrents 2018-08-01 21:29:32 +03:00
Vladimir Golovnev (Glassez)
7716a27d0d Reorder resume data saving conditionals
Having conditionals which can break saving of torrent resume data
in order from more likely to less likely is more effective.
2018-08-01 21:29:01 +03:00
Chocobo1
9df67b52b8 Add const to function signature 2018-08-01 01:40:50 +08:00
Mike Tzou
fea7a96e68 Merge pull request #9257 from Chocobo1/prio
Avoid potentially setting the wrong piece priorities
2018-08-01 00:07:22 +08:00
Mike Tzou
8dae7f4a87 Merge pull request #9229 from Piccirello/forceReannounce
Add WebUI Force Reannounce option
2018-07-31 00:19:34 +08:00
Chocobo1
73b5efbb23 Avoid potentially setting the wrong piece priorities
Updating file priorities is an async operation in libtorrent, when we
just updated it and immediately query it, we might get the
old/wrong values, so we rely on `updatedFilePrio` in this case.
2018-07-30 13:22:05 +08:00
Chocobo1
a68cdc5225 Refactor code
Make the code slightly easier to read.
2018-07-30 02:43:23 +08:00
thalieht
c55daeec38 Set "enter" as shortcut to download the selected torrents in search job 2018-07-29 21:42:21 +03:00
Chocobo1
9bd8587c68 Add const to function parameters 2018-07-30 02:23:51 +08:00
Mike Tzou
e59841d35c Merge pull request #9218 from Chocobo1/new
Code cleanup
2018-07-24 00:11:47 +08:00
Chocobo1
650f585bf3 Remove static keyword overuse 2018-07-23 13:40:25 +08:00
Chocobo1
a70219eea0 Move member variable initialization
Move the initialization from constructor body to member initializer
list.
Remove superfluous initializer.
2018-07-23 13:40:25 +08:00
Chocobo1
517fc39950 Remove unnecessary dynamic allocation
Also remove unneeded `if ()` conditional.
2018-07-23 13:40:25 +08:00
Chocobo1
56766dc08b Avoid binding constant reference to returned object
In such cases, it makes no sense doing so.
2018-07-23 13:40:25 +08:00
Mike Tzou
5d4da09093 Merge pull request #9217 from Chocobo1/char
Replace single-character string with character literal
2018-07-23 12:23:37 +08:00
Thomas Piccirello
13075e5099 Send all rechecks in one request 2018-07-22 20:33:39 -04:00
Thomas Piccirello
cdad0dc7d3 Add WebUI Force Reannounce option 2018-07-22 20:33:17 -04:00
Chocobo1
0217d5b4c0 Replace single-character string with character literal
Also remove unnecessary dynamic allocation.
2018-07-21 23:26:15 +08:00
sledgehammer999
17405dfc10 Merge pull request #9202 from sledgehammer999/toc_coding
Add a TOC in the coding guidelines
2018-07-21 11:09:34 +03:00
sledgehammer999
eb20b53af4 Remove trailing dot from headings 2018-07-20 23:01:57 +03:00
sledgehammer999
90dfdcc36d Add a TOC in the coding guidelines 2018-07-20 23:01:56 +03:00
Mike Tzou
7e3cf99bb9 Merge pull request #9210 from Chocobo1/options
Add options in AddNewTorrentDialog
2018-07-21 01:22:10 +08:00
Chocobo1
cb687ba3bd Add options in AddNewTorrentDialog
The new checkboxes are: "Download in sequential order", "Download first
and last pieces first".
2018-07-21 00:36:08 +08:00
Mike Tzou
aed971883d Merge pull request #9192 from Chocobo1/msg
Revise dialog messages
2018-07-18 00:08:00 +08:00
Chocobo1
1b406c97da Revise dialog messages
Using critical dialog is a bit too strong as qbt didn't actually run
into something that fails, so downgrade to warning dialog.
2018-07-17 00:06:16 +08:00
Mike Tzou
59d70c8a96 Merge pull request #9193 from Chocobo1/fix
Simplify code
2018-07-17 00:01:31 +08:00
Mike Tzou
837308deb6 Merge pull request #9185 from Chocobo1/cache
Cache more preference values in WebApplication
2018-07-16 23:53:58 +08:00
sledgehammer999
a87d1d43fc Merge pull request #9199 from zeule/cmake
Use proper include files in the QtSingleApplication find module.
2018-07-16 14:28:00 +03:00
Eugene Shalygin
af7b40ecc2 Use proper include files in the QtSingleApplication find module.
Look for qtsinglecoreapplication.h when Qt5Widgets module was not found,
and qtsingleapplication.h otherwise. Fixes #9196.

This also removes Qt4 support from the QtSingleApplication find module.
2018-07-16 11:22:42 +02:00
Chocobo1
42eac2ee3c Simplify code
This avoids "deferencing null pointer" warning from static analyzers.
2018-07-15 13:30:11 +08:00
Chocobo1
ec7dfee887 Fix typo 2018-07-15 10:19:24 +08:00
Vladimir Golovnev
c7f1f1494e Merge pull request #9187 from glassez/tracker-favicon
Download favicon using appropriate protocol
2018-07-14 12:01:58 +03:00
Vladimir Golovnev
11cd828e8a Merge pull request #9186 from glassez/fix-dm
Apply proxy settings on DownloadManager creation
2018-07-14 12:01:28 +03:00
Vladimir Golovnev
5d931ef9ab Merge pull request #9180 from glassez/resume-data
Save resume data on torrent change events. Closes #9174
2018-07-14 11:59:48 +03:00
Chocobo1
e04aae686f Cache more preference values
These values from Preference class are frequently used.
Also group related variables together.
2018-07-14 15:48:18 +08:00
thalieht
ae03ecea21 Add hotkey for toggling focus between the search LineEdits 2018-07-14 09:26:24 +03:00
thalieht
2e9c61c452 Limit the scope of find torrents hotkey in MainWindow
To TransferListWidget because it will interfere with the SearchWidget's focus hotkey
2018-07-14 09:26:24 +03:00
thalieht
df9aa6dc36 Add a name filter for search results
Closes #8226
2018-07-14 09:26:24 +03:00
Vladimir Golovnev (Glassez)
f7c252886f Apply proxy settings on DownloadManager creation 2018-07-13 13:18:57 +03:00
Vladimir Golovnev (Glassez)
088273a767 Download favicon using appropriate protocol
Some trackers use UDP protocol but we can't download its favicon
using UDP. Just try to download it using HTTP.
2018-07-13 13:13:53 +03:00
Vladimir Golovnev (Glassez)
cd44ab2fc6 Improve torrent initialization
Don't post "torrent resumed" event when torrent starts in "resumed"
state.
Fix confusing names. Now "resumed torrent" means "unpaused torrent"
only. When we load previously added torrent it is called "restored
torrent".
2018-07-12 21:03:36 +03:00
Thomas Piccirello
b2ffd6e03b Instantiate SearchPluginManager with other application components 2018-07-11 20:11:33 -04:00
Vladimir Golovnev (Glassez)
7ebd63a60f Save resume data on torrent change events
Closes #9174.
2018-07-10 17:45:09 +03:00
sledgehammer999
de8050701d Revert email address changes in copyright notices 2018-07-10 00:37:44 +03:00
Mike Tzou
c81756111c Merge pull request #9109 from tjjh89017/master
Add aio_threads option to AdvanceSetting Page
2018-07-10 01:01:50 +08:00
tjjh89017
670a8e27af Add async io threads option to AdvancedSettings 2018-07-08 22:58:35 +08:00
Mike Tzou
553bd8e22c Merge pull request #9161 from Chocobo1/save
Revise resume data save interval
2018-07-08 02:33:51 +08:00
Chocobo1
d61435e4bf Allow save resume interval to be disabled
Also raise the allowable upper limit
2018-07-05 13:22:20 +08:00
Chocobo1
6a16fc1ca2 Prolong resume data save interval 2018-07-05 13:22:13 +08:00
Chocobo1
a0348c46fc Remove unnecessary resources inclusion 2018-07-05 02:34:04 +08:00
Vladimir Golovnev
9d58a189d7 Merge pull request #9103 from thalieht/snaketocamel
Convert the names used in ui and c++ files from snake_case to camelCase
2018-07-04 21:16:02 +03:00
thalieht
456270bbb1 Delete several unused #include 2018-07-03 08:38:32 +03:00
thalieht
eb508d67ef Fix coding style 2018-07-03 08:38:32 +03:00
thalieht
6d4434ad66 Convert the names used in ui and c++ files from snake_case to camelCase 2018-07-03 08:38:32 +03:00
Mike Tzou
ca68b86550 Merge pull request #9141 from Chocobo1/delay
Omit removing python cache artifacts on qbt start
2018-07-03 13:07:31 +08:00
Mike Tzou
97b3761dbf Merge pull request #9094 from Chocobo1/recursive
Fix crash in Recursive Download dialog
2018-07-02 21:25:47 +08:00
Vladimir Golovnev
b0afa33e22 Merge pull request #9125 from glassez/downloader
Implement "Sequential downloading" feature. Closes #6835
2018-07-02 15:24:58 +03:00
Chocobo1
2528c6e39a Fix python version detection
Closes #9146.
2018-07-02 00:57:08 +08:00
Chocobo1
8c32302377 Clear python cache conditionally
Clear the cache artifacts on plugin install and plugin uninstall events.
2018-07-01 20:57:39 +08:00
Vladimir Golovnev (Glassez)
d78414307e Make TorrentInfo loading behavior uniform 2018-06-29 15:48:36 +03:00
Vladimir Golovnev (Glassez)
112a9bcfa2 Use new DownloadManager interface 2018-06-29 15:48:17 +03:00
Vladimir Golovnev (Glassez)
8d438e159c Implement "Sequential downloading" feature
Closes #6835.
2018-06-29 15:48:02 +03:00
Vladimir Golovnev (Glassez)
a9a6b74416 Implement DownloadRequest helper 2018-06-29 12:18:56 +03:00
Chocobo1
77b71e392e Refactor function
In SearchPluginManager::updateNova(), omit removing __pycache__ folder and pyc
files, those files will be recreated anyway.
Add const to variables
2018-06-28 17:21:13 +08:00
Chocobo1
f951bf678d Rename function 2018-06-28 16:13:52 +08:00
Chocobo1
5c50c5b24d Cache SearchPluginManager::engineLocation() result
Also the folder is only created on first usage.
2018-06-28 16:06:16 +08:00
Chocobo1
361afb401b Replace less-efficient QProcess::setEnvironment
Also small refactor
2018-06-28 15:56:39 +08:00
Chocobo1
ad5c88be3d Simplify function 2018-06-28 15:50:50 +08:00
Chocobo1
6bf3f1d0b8 Add checkbox for recursive download dialog
Also group similar options together.
2018-06-26 23:26:45 +08:00
Chocobo1
78d7cc0570 Work around crash when procesing recursive download
The messagebox is modal and exec() it makes it generates a new local
event loop, however the new local event loop will continue to process
libtorrent events (in Session::readAlerts()), at the time exec()
returns, the original libt::alert pointers are lost and resume
processing alerts will cause the crash.
One solution is to make the messagebox use show() and avoid exec().

Closes #9086.
2018-06-26 23:26:23 +08:00
Mike Tzou
1a7021156e Merge pull request #9113 from Chocobo1/python
Reduce queries to python version
2018-06-26 20:28:09 +08:00
Chocobo1
3e6c8a05dd Reduce queries to python version
Instead of doing at least 2 queries for python infos, now requires only
1 query (in ideal condition), and the result is cached.
2018-06-24 19:41:44 +08:00
Chocobo1
51e82762c5 Move related functions to Utils::Python 2018-06-24 06:21:15 +08:00
Mike Tzou
383a354700 Merge pull request #9069 from AltruisticCompany/mkpath
Create non-existing path in setLocationAction()
2018-06-21 15:45:33 +08:00
Goshik
1daadfc4ec Create non-existing path in setLocationAction()
When using qbittorrent-nox it is not always possible to manually create
the target path for torrent moving. This commit allows automatic path
creation. It also allows to display error messages in the
'Set location' window.
2018-06-19 14:10:11 +03:00
Mike Tzou
8da5ccee03 Merge pull request #9102 from Chocobo1/cfg
Turn on Control Flow Guard for MSVC builds
2018-06-19 18:33:48 +08:00
Mike Tzou
8f6e066332 Merge pull request #9092 from hannsen/patch-1
PEP 8 compliant version comments in search plugins
2018-06-18 00:56:28 +08:00
Mike Tzou
40f4223d02 Merge pull request #9083 from Chocobo1/qrc
Move files to where it belongs
2018-06-18 00:51:19 +08:00
Chocobo1
33bb3719d7 Move optimization flags
Those flags aren't strictly required when compiling but they are
recommended to be on.
2018-06-18 00:46:50 +08:00
Chocobo1
171bc77059 Turn on Control Flow Guard for MSVC builds
The performance impact should be negligible according to the
documentation on msdn.
Closes #9101.
2018-06-18 00:46:31 +08:00
Vladimir Golovnev
7d9cc04c88 Merge pull request #9090 from thalieht/renamefiles
Rename files and classes to match them
2018-06-16 13:08:38 +03:00
Mike Tzou
dc20fff6e4 Merge pull request #9059 from Piccirello/meta-key
Add WebUI support for Mac ⌘ (Command) key
2018-06-16 12:21:20 +08:00
thalieht
d34ddb2e3c Change file names and classes names to match them 2018-06-15 20:12:59 +03:00
hannsen
a162550d7f Properly normalize version string before parsing it
This allows python scripts to be formatted in PEP 8 style.
2018-06-14 13:00:31 +08:00
Vladimir Golovnev
0433d5f074 Merge pull request #9042 from thalieht/codingstyle
Fix coding style final
2018-06-13 12:41:56 +03:00
Mike Tzou
fd2fc65ba9 Merge pull request #9018 from Chocobo1/boostDef
Revise usage of BOOST_NO_CXX11_RVALUE_REFERENCES
2018-06-13 14:20:01 +08:00
Chocobo1
8be949fec3 Revise usage of BOOST_NO_CXX11_RVALUE_REFERENCES
Now the flag will be present when building with boost version <= 1.59.
Closes #8990.
2018-06-13 13:51:58 +08:00
Thomas Piccirello
232f0f4b0b Add WebUI support for Mac ⌘ (Command) key
The Command key will now be recognized for WebUI Table multi-selection, as Ctrl is.
2018-06-12 20:32:24 -04:00
Thomas Piccirello
091ad6103e Implement key functions in Class and refactor 2018-06-12 20:32:07 -04:00
Mike Tzou
c66738dc05 Merge pull request #9066 from AltruisticCompany/setlocation
Show current save path in 'Set location' window
2018-06-13 02:46:56 +08:00
Mike Tzou
4100282673 Merge pull request #9073 from Chocobo1/apple
Replace deprecated function on macOS
2018-06-12 12:19:54 +08:00
thalieht
4022799881 Fix coding style 2018-06-12 07:17:05 +03:00
Chocobo1
5b7c089dd2 Move qm_gen.pri 2018-06-11 21:02:45 +08:00
Chocobo1
5d94db9c79 Move .desktop file 2018-06-11 20:01:33 +08:00
Chocobo1
6203f23f06 Move .ico files into icons dir 2018-06-11 20:01:33 +08:00
Chocobo1
26a4703398 Move .qrc files into its own directory 2018-06-11 20:01:33 +08:00
Mike Tzou
c8c7ed4a2e Merge pull request #9053 from Chocobo1/optionWheel
Disable certain mouse wheel events in Options dialog
2018-06-10 13:06:04 +08:00
Chocobo1
0073f2c8ab Replace deprecated function on macOS
Closes #8993.
2018-06-09 13:49:20 +08:00
Mike Tzou
da87c2d9ae Merge pull request #9060 from Chocobo1/preinc
Replace post-increment with pre-increment
2018-06-09 12:40:30 +08:00
Goshik
682ef9e2a8 Show current save path in 'Set location' window
The feature is useful when the user needs to move their torrent to a
sub or parent folder. If more than one torrent is chosen, the path
of the first selected torrent is used. The window was made wider to
allow more convenient editing of long paths.
2018-06-08 18:34:14 +03:00
Chocobo1
5ddbf9bba9 Replace post-increment with pre-increment
And post-decrement with pre-decrement.
2018-06-08 08:44:06 +08:00
Eugene Shalygin
04aea413ba Merge pull request #9055 from zeule/cmake
Update CMake build scripts
2018-06-07 21:31:09 +02:00
Eugene Shalygin
0e655b4f9a Fix option name in winconf-xxx.cmake
The mistake was made by commit 7712d0ada0
2018-06-06 14:58:17 +02:00
Chocobo1
96819f3798 Disable certain mouse wheel events in Options dialog
The mouse wheel events for QComboBox & QSpinBox widgets in Options
dialog are filtered out.
2018-06-06 15:17:49 +08:00
Eugene Shalygin
fa770871e9 Refactor CMake build scripts
1. Use FeatureSummary module to show configuration results.

2. Invert option()/find_package() relationship: instead of
calling find_package(... REQUIRED) when option is set, rely on optional
find package call and PackageName_FOUND variable.

3. Refactor handling options that result in simple preprocessor defines
(actually copy the snippet from libtorrent) so that everything is done
in a single function call.

4. Populate target properties in order to get rid of
include_directories() calls.
2018-06-05 11:39:11 +02:00
Chocobo1
0b050e2a30 Remove duplicate private sections in class
And group related methods & variables together.
2018-06-05 12:22:32 +08:00
Mike Tzou
40330c4606 Merge pull request #9027 from Chocobo1/cache
Send Cache-Control header in WebUI responses
2018-06-05 01:04:42 +08:00
Mike Tzou
731865427e Merge pull request #9008 from Chocobo1/changelog
Add changelog URL link in updater
2018-06-04 20:51:18 +08:00
Chocobo1
eaa276b284 Fix WebUI cache behavior for css files
The style.css in public & private folders share the same URI, this
confuses the browser cache, so rename one of them.
2018-06-04 20:50:09 +08:00
Chocobo1
050b78f378 Send Cache-Control header in WebUI responses
Tune the caching time to be shorter, in case there is a program
update.
Change the cacheability to private, as WebUI resources are not intended
to be cached at proxy.
For uncacheable responses, send out "no-store" explicitly to halt
browser caching.
2018-06-04 20:50:08 +08:00
Mike Tzou
5f8feec1c1 Merge pull request #9013 from Piccirello/strengthen-csp
More restrictive Content Security Policy
2018-06-03 21:43:39 +08:00
Vladimir Golovnev
e61c882fee Merge pull request #9015 from thalieht/style
Fix coding style
2018-06-03 14:48:04 +03:00
Mike Tzou
c4e4e7432d Merge pull request #9009 from Chocobo1/login
Add logging messages in WebUI login action
2018-06-03 19:47:05 +08:00
Mike Tzou
658702dcbb Merge pull request #8992 from Chocobo1/regex
Replace QRegExp with QRegularExpression
2018-06-01 01:05:14 +08:00
thalieht
356d6a6589 Fix coding style 2018-05-31 19:45:09 +03:00
Chocobo1
09f759355f Replace QRegExp with QRegularExpression
Revise `static` keyword usage, static is added to frequently used
instances.
2018-05-31 22:56:49 +08:00
Chocobo1
c22e6b4502 Cleanup header include order
Add missing header.
Cleanup license.
2018-05-31 22:56:25 +08:00
Chocobo1
5c72a52ea2 Reset WebUI ban counter on login success 2018-05-31 22:55:54 +08:00
Chocobo1
d782d62b34 Add logging messages in WebUI login action 2018-05-31 22:55:54 +08:00
Thomas Piccirello
9b874b8941 Rename variables for clarity 2018-05-31 00:54:57 -04:00
Thomas Piccirello
43656aaa1e Add form-action to CSP
This option restricts all form submissions to the WebUI's origin.
qBittorrent only ever submits forms to the origin, so this is intended as a security measure.
2018-05-31 00:54:57 -04:00
Thomas Piccirello
8f98f87d12 Add upgrade-insecure-requests to CSP when HTTPS is enabled
This option automatically upgrades all http connections to https.
It ensures http urls cannot be accessed when in https mode, and is intended as a security measure.
2018-05-31 00:54:57 -04:00
Mike Tzou
6e96bbb2e9 Merge pull request #9001 from Chocobo1/csp
Improve WebUI security measures
2018-05-31 00:34:21 +08:00
Mike Tzou
93d4f2d595 Merge pull request #8984 from Chocobo1/magnetDialog
Refactor DownloadFromURLDialog
2018-05-30 13:55:42 +08:00
Chocobo1
68c6ddf05d Add changelog link in program updater
Closes #8997.
2018-05-30 13:54:15 +08:00
Vladimir Golovnev
15153a4446 Merge pull request #8976 from glassez/feed-uid
Don't use RSS feed URLs as base for file names. Closes #8399
2018-05-29 14:30:23 +03:00
Chocobo1
e8d378e167 Improve WebUI security measures
CSP was erroneously disabled in bad4d94f77
when clickjacking protection is off, now it is back.
Also added CSP 'frame-ancestors' directive when clickjacking
protection is enabled.
2018-05-29 13:40:52 +08:00
Chocobo1
ee202b721d Refactor function 2018-05-29 09:36:08 +08:00
Chocobo1
727800ef2c Improve DownloadFromURL behavior
URL should be considered case sensitive.
2018-05-29 09:36:08 +08:00
Chocobo1
34ed0cba08 Move DownloadFromURLDialog to its own file
Simplify code, no functionality changes.
Remove debug messages.
Capitalize dialog name.
Capitalize class name.
Update license text.
2018-05-29 09:36:03 +08:00
Chocobo1
817b7bb4f2 Add missing header include 2018-05-29 02:07:55 +08:00
Mike Tzou
1d25d95740 Merge pull request #8953 from Chocobo1/constexpr
Add constexpr to various classes
2018-05-29 00:21:52 +08:00
Mike Tzou
4a51f14328 Merge pull request #8967 from Chocobo1/protect
Add options to control WebUI security measures
2018-05-28 14:21:53 +08:00
sledgehammer999
2ef7adec89 Sync translations from Transifex and run lupdate 2018-05-27 21:01:16 +03:00
sledgehammer999
6ad8d730cc Bump Web API version 2018-05-27 19:23:25 +03:00
sledgehammer999
a1a6a7ef56 Merge pull request #8868 from Chocobo1/macos
Fix GUI scaling factor on macOS
2018-05-27 17:39:00 +03:00
Vladimir Golovnev (Glassez)
200f4d0f07 Don't use RSS feed URLs as base for file names
RSS feed URLs can be too long and exceed max path limit.
Add RSS feed UIDs and use UIDs as base for file names instead of URLs.
Closes #8399.
2018-05-26 10:37:32 +03:00
sledgehammer999
8a976d40be Merge pull request #8979 from sledgehammer999/comp_dbus
Fix compilation without D-Bus support
2018-05-25 18:23:45 +03:00
sledgehammer999
9f4e93df14 Merge pull request #8983 from Chocobo1/warning
Initialize variables properly
2018-05-25 18:21:33 +03:00
Chocobo1
4751b79f42 Initialize variables properly
The warnings are emitted when compiling on msys2, mingw

The warning was:
gui/torrentcontentmodel.cpp:135:33: warning: missing initializer for
member '_SHFILEINFOW::iIcon' [-Wmissing-field-initializers]

..\..\qBittorrent\src\app\stacktrace_win.h:141:30: warning: missing
initializer for member '_IMAGEHLP_LINE64::Key'
[-Wmissing-field-initializers]
2018-05-25 21:22:31 +08:00
sledgehammer999
80e93e23f9 Fix compilation without D-Bus support
Closes #8977
2018-05-24 17:40:23 +03:00
sledgehammer999
7c6a5afbff Merge pull request #8962 from sledgehammer999/suppress_errors
Suppress multiple I/O errors for the same torrent
2018-05-24 16:35:03 +03:00
sledgehammer999
51499c4bdd Merge pull request #8978 from airium/fix_pdb
Update conf.pri.windows from #8701
2018-05-24 16:34:14 +03:00
airium
868a65abd8 Update strace_win to stacktrace in conf.pri.windows
It is advised to update the stack trace statement since #8701, otherwise people may forget to change it, which results in that no pdb file is generated for Windows distribution package.
2018-05-24 00:55:39 +01:00
Vladimir Golovnev
935bb5bd1c Merge pull request #8966 from glassez/rss-date
Use RSS feed update time as a fallback. Closes #8959
2018-05-23 17:20:46 +03:00
Chocobo1
e099f6ad33 Add constexpr to IndexInterval class
Add const to IndexRange private members.
Remove redundant inline specifier.
Add missing parentheses.
2018-05-23 14:30:56 +08:00
Chocobo1
9631a9c2ad Add constexpr to TriStateBool class 2018-05-23 14:30:56 +08:00
Chocobo1
b38925413d Improve Utils::Version class
Add operator>=() and operator<=().
More methods are suitable to be constexpr.
Remove redundant boundary checking.
2018-05-23 13:47:41 +08:00
Mike Tzou
cd21071c69 Merge pull request #8954 from Chocobo1/firstlast
Relax behavior of "Download first and last piece first"
2018-05-23 13:26:02 +08:00
Mike Tzou
84df2794dc Merge pull request #8944 from Chocobo1/literal
Make use of QStringLiteral
2018-05-23 13:23:41 +08:00
sledgehammer999
1bcbe65819 Merge pull request #8908 from adem4ik/master
Update Windows icons
2018-05-22 22:42:41 +03:00
sledgehammer999
b9546ccd4c Suppress multiple I/O errors for the same torrent
When a file error happens libtorrent spews a ton of `file_error_alert`
which result in log floods and notification balloon floods. The later
might render the program inaccessible because the constant
notifications prevent the user from interacting with the tray icon.

Closes #8934
2018-05-22 21:29:50 +03:00
sledgehammer999
9df6ecafd0 Merge pull request #8961 from sledgehammer999/stats_dialog
Fix Stats dialog size
2018-05-22 20:24:50 +03:00
Chocobo1
9eeef0be97 Add option to control CSRF protection
Some users are using WebUI with simple port-forwarding from their router,
providing an option to control the protection will save them from setting up an
non-trival web proxy.
Closes #7274.
2018-05-22 12:57:03 +08:00
Vladimir Golovnev (Glassez)
4f8ed09183 Add missing 'return' statement 2018-05-21 21:24:02 +03:00
Chocobo1
bad4d94f77 Add option to control WebUI clickjacking protection
Some users actually want embedding WebUI into their custom build iframe.
Closes #7370.
2018-05-22 01:07:25 +08:00
Chocobo1
e8a69dd60c Update Options dialog layout in WebUI 2018-05-21 23:57:11 +08:00
Vladimir Golovnev (Glassez)
9b80c4f7eb Use RSS feed update time as a fallback
Some sites omit publication date in its RSS feed articles
that prevents "Ignore Subsequent Matches" to work properly.
Closes #8959.
2018-05-21 15:47:14 +03:00
Vladimir Golovnev
1b14706b08 Merge pull request #8955 from glassez/initial-rename
Rename torrent if content was initially renamed. Closes #8910
2018-05-21 08:04:43 +03:00
Vladimir Golovnev
0aee1cf7d0 Merge pull request #8945 from glassez/rss-rule
Improve code of  RSS auto-downloading rule. Closes #8933
2018-05-21 08:04:12 +03:00
Vladimir Golovnev
12e40ca865 Merge pull request #8948 from glassez/save-path
Add last used save path to the front of history. Fixes #8922
2018-05-21 08:03:29 +03:00
sledgehammer999
b4c1a949cc Fix Stats dialog size
Partially reverts e31ec20ec4.
Closes #8870.
2018-05-20 23:35:20 +03:00
Vladimir Golovnev (Glassez)
a54f57611c Rename torrent if content was initially renamed
Closes #8910.
2018-05-19 20:21:21 +03:00
Vladimir Golovnev (Glassez)
3be945a401 Add last used save path to the front of history 2018-05-19 19:43:01 +03:00
Chocobo1
95b19ec303 Relax behavior of "Download first and last piece first"
Now it applies the setting to all files in torrent, no matter whether
the file is previewable or not.

Torrent client shouldn't be smart by deciding which file this
option will be applied to, i.e. it should just follow the user's decision.
2018-05-19 21:48:13 +08:00
Chocobo1
da75a010c7 Refactor code
Add const to variables.
Add Logger message.
Simplify code logic.
2018-05-19 21:48:13 +08:00
Chocobo1
eb72b9ca7d Simplify the saving & loading of a setting
Remove excessive usage of constexpr.
2018-05-19 20:56:43 +08:00
Vladimir Golovnev
c29e5c76dc Merge pull request #8936 from surfernsk/master
Fix open destination folder with Nautilus > 3.28. Closes #8923
2018-05-19 15:06:03 +03:00
Vladimir Golovnev (Glassez)
53b9bcaaac Place "Use Smart Episode Filter" more correctly 2018-05-19 14:52:38 +03:00
Vladimir Golovnev (Glassez)
844f76c2ca Make "Ignoring days" to behave like other filters
This prevents confusing in GUI when it shows matched RSS
articles which be really ignored by the rule.
2018-05-19 14:52:24 +03:00
Evgeny Lensky
c7601d7a43 Fix open destination folder with Nautilus > 3.28
Closes #8923.
2018-05-19 18:45:26 +07:00
Mike Tzou
07c15127ba Merge pull request #8915 from Chocobo1/runext4
Improve "Run External Program" behavior
2018-05-19 14:58:45 +08:00
Vladimir Golovnev (Glassez)
256f6954c5 Improve code of RSS auto-downloading rule
Closes #8933.
2018-05-18 13:26:04 +03:00
Chocobo1
ceaf755ac6 Make use of QStringLiteral
Only changed instances that are initialized at program start.
2018-05-18 02:14:49 +08:00
Vladimir Golovnev
e157ca2430 Merge pull request #8932 from glassez/rss-settings
Properly set RSS settings via API. Closes #8925
2018-05-17 06:07:25 +03:00
Vladimir Golovnev
b857bb9652 Merge pull request #8939 from glassez/requestparser
Properly fill UploadedFile::filename field when parse HTTP request. Closes #8928
2018-05-17 06:06:56 +03:00
Chocobo1
fcbcf4039b Use smaller type 2018-05-17 10:57:12 +08:00
Vladimir Golovnev (Glassez)
90f09e7570 Properly fill UploadedFile::filename field
Closes #8928.
2018-05-16 20:13:55 +03:00
Mike Tzou
7bfe08d466 Merge pull request #8926 from Chocobo1/lint
Detect endianness at compile time
2018-05-16 20:07:03 +08:00
Vladimir Golovnev
e2da7928b1 Merge pull request #8922 from glassez/save-path
Add option to remember last used save path. Closes #7323
2018-05-15 19:30:09 +03:00
Vladimir Golovnev (Glassez)
98ca274169 Rename RSS properties to follow other names 2018-05-15 16:05:51 +03:00
Chocobo1
0a49f76c0a Detect endianness at compile time 2018-05-15 21:02:00 +08:00
Vladimir Golovnev (Glassez)
2a0b104e5e Properly set RSS settings via API
Closes #8925.
2018-05-15 15:59:28 +03:00
Vladimir Golovnev (Glassez)
71e5a40857 Add option to remember last used save path
Replace in "Add new torrent" dialog confusing "Set as default save path" option
with "Remember last used save path" option that affects only selected value in
"Save path" combo box.
Closes #7323.
2018-05-15 10:38:24 +03:00
Mike Tzou
3b1fa19ea8 Merge pull request #8895 from Chocobo1/locale
Apply locale changes immediately in WebUI
2018-05-15 00:29:45 +08:00
Mike Tzou
a0f200be0d Merge pull request #8894 from Chocobo1/tr
Make strings translatable
2018-05-14 12:53:40 +08:00
sledgehammer999
e3ce9b2645 Merge pull request #8903 from sledgehammer999/fix_upgrade_artifacts
Delete non-commited fastresume files
2018-05-13 17:24:47 +03:00
Vladimir Golovnev
7afbc346d5 Merge pull request #8906 from glassez/fix-webui
Fix WebUI bugs
2018-05-13 17:02:24 +03:00
sledgehammer999
35eee0b590 Don't migrate torrents that have newer fastresumes 2018-05-13 15:50:10 +03:00
sledgehammer999
7626ebe7a6 Delete non-commited fastresume files
Old v3.3.x format had a number at the end indicating the queue position.
The naming scheme was '<infohash>.fastresume.<queueposition>'.
However, QSaveFile, which uses QTemporaryFile internally, might leave
non-commited files behind eg after a crash. These files have the
naming scheme '<infohash>.fastresume.XXXXXX' where each X is a random
character. We try to detect the latter and remove it without "migrating"
the fastresume to the new saving system.
2018-05-13 15:50:10 +03:00
sledgehammer999
bde736c18a Merge pull request #8900 from sledgehammer999/fix_delete_logs
Fix deletion of old logs
2018-05-13 15:00:39 +03:00
Chocobo1
61e61a1fd5 Rename variables
Variable name should not start with underscore as C++ standard stated it
is reserved.
2018-05-13 19:24:59 +08:00
Vladimir Golovnev
8906c47798 Merge pull request #8782 from mj-p/filterByHashes
Filter torrent info endpoint by hashes
2018-05-13 13:20:00 +03:00
sledgehammer999
8a99e29122 Merge pull request #8716 from sledgehammer999/move_progress
Move and recheck progress
2018-05-13 13:02:03 +03:00
sledgehammer999
375b15727d Show rechecking progress
When having big torrents, the rechecking might take a while to
complete. Users need some sort of feedback that progress is being made.
Also, I changed the float to qreal since that's the return type.
2018-05-13 12:32:17 +03:00
sledgehammer999
7484889836 Fix deletion of old logs 2018-05-13 12:11:19 +03:00
Chocobo1
263524e856 Improve "Run External Program" behavior
This follows utorrent behavior: they don't append backslash character at
the end of path variables.
Closes #8836.
2018-05-13 15:21:27 +08:00
Chocobo1
5ae926a376 Refactor code
Add const to variables.
No functionality change.
2018-05-13 15:05:30 +08:00
Chocobo1
92a4e73a22 Apply locale changes immediately in WebUI 2018-05-13 15:05:29 +08:00
Mike Tzou
2230d96705 Merge pull request #8808 from Chocobo1/save
Improve SettingsStorage behavior
2018-05-13 14:24:14 +08:00
Mike Tzou
1000b1a6fc Merge pull request #8893 from Chocobo1/warning
Enable more compiler warnings on linux
2018-05-13 14:23:54 +08:00
sledgehammer999
e5c73cee4a Log successful torrent move 2018-05-12 20:49:33 +03:00
sledgehammer999
565ffa7d1e Add 'Moving' state for torrents being relocated/moved
This is another indication to the user that something is happening
behind the scenes.
Uses the same icon/color as "Checking" status.
Torrents in the `Moving` state are considered as "Active". This should
prevent accidental program exit from the user and inhibit system sleep.
2018-05-12 20:49:33 +03:00
adem
b3f98fc975 Update Windows icons 2018-05-12 11:34:53 +04:00
Vladimir Golovnev (Glassez)
88f2a66aac Fix params handling for some legacy API methods
Closes #8880.
2018-05-12 07:35:35 +03:00
Vladimir Golovnev (Glassez)
0fda49c060 Improve legacy API params handling 2018-05-12 07:35:31 +03:00
Vladimir Golovnev (Glassez)
afcf232bd8 Fix invalid API calls in WebUI
Closes #8899.
2018-05-12 07:35:27 +03:00
Vladimir Golovnev
29ec830e5c Merge pull request #8904 from glassez/fix-mingw
Fix compilation with MinGW
2018-05-12 07:34:22 +03:00
Vladimir Golovnev (Glassez)
32e2791f56 Fix compilation with MinGW 2018-05-12 06:24:05 +03:00
sledgehammer999
0d35527035 Merge pull request #8881 from thalieht/qt5signalslot
Use qt5 syntax for a few remaining SLOT()
2018-05-11 22:41:46 +03:00
Chocobo1
b1304057ec Fix i18n in WebUI
Closes #8844.
2018-05-11 20:20:51 +08:00
Chocobo1
c26ff40029 Make strings translatable
Closes #8866.
2018-05-11 19:29:02 +08:00
Chocobo1
4e42f97c8f Enable more compiler warnings on linux 2018-05-11 19:25:14 +08:00
thalieht
4cfa163bbd Use qt5 syntax for a few remaining SLOT() 2018-05-11 08:19:41 +03:00
Vladimir Golovnev
768262ae64 Merge pull request #8747 from thalieht/codingstyle
Fix coding style
2018-05-10 09:03:40 +03:00
thalieht
fb2bcb57bb Clarify guidelines and fix some typos 2018-05-09 17:06:22 +03:00
thalieht
20ca90800d Fix coding style 2018-05-09 17:06:22 +03:00
Vladimir Golovnev
6c6e23910d Merge pull request #8760 from thalieht/connectqt5
Use qt5 connect() syntax
2018-05-09 16:46:43 +03:00
thalieht
586e1a0830 Move some connect() from propertieswidget to their corresponding widget 2018-05-09 16:08:22 +03:00
thalieht
6b4455e13d Use qt5 connect() syntax 2018-05-09 16:08:22 +03:00
Chocobo1
4d04af4043 Replace raster qbt logo with vector version
Add helper function for svg icons.
2018-05-09 16:33:17 +08:00
Chocobo1
f934042a98 Fix GUI scaling factor on macOS
macOS seems have an unique way to handle widget size, that is, it doesn't require
application to resize widgets manually, Qt will handle the resize job
automatically.

Closes #8841.
2018-05-09 16:33:14 +08:00
Chocobo1
0b63f35a54 Use 32px icons for favicon
One less resource to manage and 16px size can be downsampled from 32px
on-the-fly anyway.
2018-05-09 15:53:34 +08:00
Mike Tzou
7af83ab704 Merge pull request #8807 from Chocobo1/tracker_msg
Fix displayed tracker message
2018-05-09 14:38:17 +08:00
Mike Tzou
0f8127a897 Merge pull request #8834 from Chocobo1/cmake
Improve cmake script
2018-05-09 14:36:06 +08:00
Mike Tzou
99a1343b9d Merge pull request #8862 from Chocobo1/cleanup
Code cleanups
2018-05-09 14:33:49 +08:00
Vladimir Golovnev
eab5dad32d Merge pull request #8860 from Kolcha/mac_warning
Add missing "override"
2018-05-08 17:14:21 +03:00
Vladimir Golovnev
3a0e5e51df Merge pull request #8761 from thalieht/nullptr
Replace the zeroing of pointers with nullptr
2018-05-08 17:10:37 +03:00
Nick Korotysh
0b8c620fd3 Add missing "override" 2018-05-08 08:33:07 +03:00
Chocobo1
c0df292567 Remove debug messages 2018-05-08 12:18:18 +08:00
Chocobo1
defba23d61 Refactor code
Remove forward declarations of Qt types.
Fix header include order.
2018-05-08 12:18:18 +08:00
Vladimir Golovnev
48bdd5fa86 Merge pull request #8855 from glassez/fix-prio-api
Fix wrong API method names. Closes #8828
2018-05-08 07:07:31 +03:00
Mike Tzou
7242d68c4b Merge pull request #8854 from Chocobo1/gcc8
Fix compile warnings on gcc 8
2018-05-08 11:57:49 +08:00
Vladimir Golovnev (Glassez)
85dd446198 Fix wrong API method names
Closes #8828.
2018-05-07 17:46:01 +03:00
Chocobo1
6d923f703a Fix displayed tracker messages
Before this change, we were displaying debug messages constructed by
libtorrent, now we show messages returned by trackers.

Closes #8739.
2018-05-07 21:49:31 +08:00
Chocobo1
90f42e6737 Refactor functions
Add const to variables
Remove debug messages
2018-05-07 21:49:31 +08:00
Chocobo1
58861c35b0 Fix compile warnings on gcc 8
The warning was:
warning: catching polymorphic type ‘class std::exception’ by value
[-Wcatch-value=]
2018-05-07 21:39:54 +08:00
Chocobo1
051ba4fa48 Comment out Werror flag in cmake script
Werror flag should be only enabled on developer's machine, not for
users using the product.
Also fix formatting.
2018-05-07 18:23:47 +08:00
Mike Tzou
7aa18dbb22 Merge pull request #8832 from Chocobo1/tr
Fix translations
2018-05-07 14:30:44 +08:00
Chocobo1
203bafc4c3 Revert commit
Apparently the translations were working in previous state, but affected by
lupdate issue:
https://github.com/qbittorrent/qBittorrent/issues/8220#issuecomment-385712673

The reverts commit fb698896c9.
Closes #8831.
2018-05-05 21:46:36 +08:00
Chocobo1
9f809114f0 Really fix translation in fspathedit
QT_TRANSLATE_NOOP3 is a macro, so we cannot use a runtime string for the context
argument.
Fix up 1d778676cd.
2018-05-05 21:09:47 +08:00
Chocobo1
d20f40184f Fix translation strings not found
The translation context doesn't exist, so the translations were not found, fixed
now.
Closes #8829.
2018-05-05 21:08:47 +08:00
Chocobo1
239352ad88 Print warning about cmake support status 2018-05-05 20:54:09 +08:00
Mike Tzou
d8c14ffe97 Merge pull request #8814 from Chocobo1/tr_fix
Fix tr() related issues
2018-05-05 13:48:09 +08:00
sledgehammer999
c5472edc6f Bump to v4.2.0alpha 2018-05-05 00:53:20 +03:00
sledgehammer999
400743fc64 Update Changelog 2018-05-05 00:51:24 +03:00
sledgehammer999
ea8c57be23 Sync translations from Transifex and run lupdate 2018-05-05 00:39:47 +03:00
sledgehammer999
591cde53cf Merge pull request #8825 from sledgehammer999/fix_tabs
Add RSS/Log widgets to the QTabWidget on macOS
2018-05-04 23:59:07 +03:00
sledgehammer999
90bb67c654 Add RSS/Log widgets to the QTabWidget on macOS
Fixes commit a468c84b30
2018-05-04 19:56:42 +03:00
Marcel Petersen
fc58e8a0c6 Filter torrent info endpoint by hashes
Added hashes parameter to info action.
Allows filtering seralized torrents by passing it into the TorrentFilter.
2018-05-02 10:07:48 +02:00
sledgehammer999
8f7fda492c Sync translations from Transifex and run lupdate
Closes #8220 #8169
2018-05-01 18:50:24 +03:00
Chocobo1
e423314ac2 Work around false-positive warning from lupdate
In short, lupdate will get confused when seeing `template <class T>`,
see: QTBUG-55478
2018-05-01 23:28:34 +08:00
sledgehammer999
f92d85c536 Merge pull request #8813 from Chocobo1/tr
Fix untranslated string
2018-05-01 17:59:49 +03:00
Chocobo1
9fabe59b80 Fix usage of Q_DECLARE_TR_FUNCTIONS()
The context parameter shouldn't be enclosed in double quotes.
2018-05-01 22:42:55 +08:00
sledgehammer999
55c98d8706 Merge pull request #8811 from sledgehammer999/fix_RC_1_0
Fix compilation against libtorrent 1.0.x
2018-05-01 15:04:25 +03:00
sledgehammer999
6e94b03c13 Fix compilation against libtorrent 1.0.x
Closes #8798
2018-05-01 10:39:53 +03:00
Mike Tzou
e3a82d4614 Merge pull request #8347 from FranciscoPombal/new_contributing_guidelines
New CONTRIBUTING.md, based on the old one, Atom's and uBlock Origin's
2018-05-01 12:00:13 +08:00
Chocobo1
c61f641613 Fix untranslated string
Closes #8809.
2018-05-01 11:49:10 +08:00
Chocobo1
f6d74e3996 Retry saving settings when operation failed 2018-04-30 13:01:10 +08:00
Chocobo1
099314d17f Make settings file recovery more robust
We should not blindly remove the leftover settings file, as the following write()
operation could fail and the user would lost all settings.
We should try renaming it instead.
2018-04-30 13:01:10 +08:00
Chocobo1
708b5a6904 Refactor SettingsStorage class
Make use of (i.e. returning) QFile::rename operation status
Make log message more verbose
Add const
Remove empty lines
Inline typedef
2018-04-30 13:01:10 +08:00
sledgehammer999
b64a51337e Update Changelog 2018-04-28 10:33:32 +03:00
sledgehammer999
19dcf7851b Sync changelog entries from v4_0_x branch 2018-04-28 10:31:58 +03:00
sledgehammer999
fb346e15e8 Sync translations from Transifex and run lupdate 2018-04-27 02:04:37 +03:00
Mike Tzou
827d8c0dad Merge pull request #8748 from Chocobo1/header
Clarify header inclusion order
2018-04-26 23:41:58 +08:00
Mike Tzou
beef041e71 Merge pull request #8773 from Chocobo1/log
Fix path separator in log messages
2018-04-25 12:58:32 +08:00
Chocobo1
8b575484e6 Fix path separator in log messages 2018-04-24 01:02:54 +08:00
FranciscoPombal
d4b77a6541 Revise CONTRIBUTING.md
New version is based on old one, Atom's and uBlock Origin's.
2018-04-24 00:56:46 +08:00
sledgehammer999
4ba6334506 Update libtorrent bottle for Travis macOS 2018-04-22 22:42:23 +03:00
sledgehammer999
b78899cb9a Merge pull request #8724 from Chocobo1/rand
Use RNG provided by OS
2018-04-22 22:33:16 +03:00
Mike Tzou
0dec7b9f4f Merge pull request #8742 from tostercx/master
Add "Preserve file order" option to torrent creator. Closes #5652
2018-04-22 23:33:25 +08:00
Chocobo1
81a4f3ced0 Use RNG provided by OS
The general consensus is to use random facility provided by OS instead
of using other software random generators.
2018-04-20 23:34:46 +08:00
Vladimir Golovnev
b155b8609f Merge pull request #8767 from glassez/fix-legacy-api
Fix pauseAll/resumeAll legacy API methods. Closes #8766
2018-04-20 15:39:57 +03:00
Chocobo1
970ad7cf28 Sort filenames when creating torrent
First all dir paths are retrieved, then filenames in each path
are retrieved and sorted, then concatenate the sorted filenames together.
2018-04-20 14:35:48 +03:00
toster
c4625f50a8 Pass isAlignmentOptimized flag to piece size calculation 2018-04-20 14:31:20 +03:00
Vladimir Golovnev (Glassez)
001bd38557 Fix pauseAll/resumeAll legacy API methods
Closes #8766.
2018-04-20 14:30:25 +03:00
Mike Tzou
7aae915a68 Merge pull request #8754 from Chocobo1/fix
Fix memory leak
2018-04-19 11:42:01 +08:00
Chocobo1
5f1ac96f66 Clarify header inclusion order 2018-04-18 13:56:40 +08:00
Chocobo1
68c2d81072 Fix memory leak 2018-04-17 20:34:01 +08:00
Chocobo1
4dea03fc74 Remove unused constants 2018-04-17 20:29:43 +08:00
thalieht
3e4099fe5b Replace the zeroing of pointers with nullptr 2018-04-15 13:06:31 +03:00
Mike Tzou
a70942ed53 Merge pull request #8598 from Piccirello/limit-share-ratio
WebUI Add Limit Share Ratio context menu option
2018-04-15 00:39:27 +08:00
Mike Tzou
7e8c72f424 Merge pull request #8732 from Chocobo1/rename
Fix renaming completed files
2018-04-15 00:39:00 +08:00
toster
e538eae726 Make alignment optimization optional
Disabling alignment optimization allows preserving file order in torrent
files and closes #5652
2018-04-14 06:46:41 +03:00
Chocobo1
898239a42e Fix renaming completed files
Check whether the file is already downloaded before appending QB_EXT to
filename.

Closes #8039.
2018-04-12 14:13:59 +08:00
Mike Tzou
1055cc0f45 Merge pull request #8691 from Chocobo1/js
Partially revert "Remove unused JavaScript library"
2018-04-12 00:07:37 +08:00
Thomas Piccirello
9f36b54b04 WebUI Add Limit Share Ratio context menu option
Closes #6815, #7602.
2018-04-11 23:45:54 +08:00
Thomas Piccirello
1f42ab8c4f Remove unused/superfluous variables 2018-04-11 23:45:54 +08:00
Thomas Piccirello
3f0fbc0810 WebUI rename property to match its definition 2018-04-11 23:45:54 +08:00
sledgehammer999
7e4b62c68d Merge pull request #8701 from Kolcha/musl-support
Allow to disable Stacktrace support
2018-04-11 17:10:01 +03:00
sledgehammer999
784b154228 Merge pull request #8721 from sledgehammer999/fix_string_arg
Fix wrong QString::arg() usage that leads to crash
2018-04-11 17:04:32 +03:00
sledgehammer999
ddba79ef3d Fix wrong QString::arg() usage that leads to crash
We need to be careful when using the multi-arg version of
QString::arg() and passing as 2nd, 3rd etc parameter an int.
It doesn't do the same as passing multiple QStrings.
2018-04-11 17:01:43 +03:00
Nick Korotysh
7712d0ada0 Allow to disable Stacktrace support
Enable backtrace stuff only if GNU C library used, because current
backtrace implementation based  on  <execinfo.h> , which is not a
part of standard C library, it is a GNU extension.

This will be usefull when building  with  custom POSIX-compilant C
library (like musl) and no <execinfo.h> available.

Note: configure script will detect presence of  <execinfo.h>  and
enable/disable feature depending on it.

Feature is enabled by default.
2018-04-10 20:51:11 +03:00
Mike Tzou
38837db8de Merge pull request #8699 from Chocobo1/linking
Add helper for loading Windows system functions
2018-04-11 00:13:55 +08:00
sledgehammer999
d997d887e5 Merge pull request #8650 from luis-pereira/fix-invalid-iterator-crash
Fix crashes due to invalid iterator use
2018-04-10 16:18:44 +03:00
sledgehammer999
341a971cd3 Merge pull request #8711 from sledgehammer999/recheck_paused
Avoid data corruption when rechecking paused torrents
2018-04-10 16:18:12 +03:00
Mike Tzou
fa380c8b2c Merge pull request #8622 from Chocobo1/formatter
Unify coding style for WebUI files
2018-04-10 14:51:32 +08:00
Luís Pereira
758c70283f Fix crashes due to invalid iterator use
Although the iterators are constant we are indirectly changing them.
Introduced by commit ac42ccb5e4.
Closes #8633
2018-04-09 23:40:08 +03:00
sledgehammer999
747c70a58e Avoid data corruption when rechecking paused torrents
Libtorrent can recheck only unpaused torrents. We get around this by
unpausing the torrent, issuing the recheck and pausing again after we
get alerted by libtorrent that the recheck has finished. This alert is
asyncronous. There is a small time frame where the program might start
downloading and writing data to the file before we pause it. This can
lead to data corruption if the file on disk is totally different that
the one expected by the torrent AND the file on disk is a valid file on
its own. OR in case the user points the new torrent to the wrong
directory by mistake.
To get around this the torrent is placed in upload_mode and out of
automanagement.
2018-04-09 23:25:52 +03:00
sledgehammer999
6ca2e42bca Merge pull request #8715 from glassez/max-ratio
Fix setting preferences via WebAPI. Closes #7335
2018-04-09 23:08:12 +03:00
Vladimir Golovnev (Glassez)
cb505a07fe Fix setting preferences via WebAPI
Closes #7335.
2018-04-09 18:54:43 +03:00
Chocobo1
5819b6dd39 Use Unicode version of InitiateSystemShutdown 2018-04-09 21:18:07 +08:00
Chocobo1
644e7d0450 Use dynamic linking for SetSuspendState function 2018-04-09 21:18:07 +08:00
Chocobo1
b0e3d77975 Add helper for loading Windows system functions 2018-04-09 21:18:04 +08:00
Chocobo1
643a209812 Sort include headers
Also add anonymous namespace.
2018-04-09 21:16:00 +08:00
Mike Tzou
c3311e83a0 Merge pull request #8687 from Chocobo1/folder
Stop creating Download folder on start
2018-04-09 13:20:48 +08:00
Mike Tzou
3301e9cb69 Merge pull request #8690 from Chocobo1/options
Avoid showing an empty row in AdvancedSettings
2018-04-08 13:14:21 +08:00
Chocobo1
cf2c0bd47e Apply formatting to Web UI files 2018-04-07 21:45:56 +08:00
Mike Tzou
df0c5c41c5 Merge pull request #8681 from dzmat/uncrutify_tinkering
Make uncrustify.cfg available to QtCreator IDE
2018-04-05 21:43:32 +08:00
Chocobo1
59e6757242 Avoid showing an empty row in AdvancedSettings
Fixup 543cbc6d1c.
2018-04-05 21:34:07 +08:00
Chocobo1
6bbcf9b3d6 Stop creating Download folder on start
The existence of this folder isn't required to run qbt and it can be
created when adding torrent.
Closes #8290.
2018-04-05 14:12:47 +08:00
Chocobo1
208d21ff73 Add js-beautify config
Try to standardize coding style for HTML & JavaScript via this tool
2018-04-05 12:19:54 +08:00
Chocobo1
2df71dbde5 Partially revert "Remove unused JavaScript library"
This reverts commit 470e993c2d.
2018-04-05 03:22:34 +08:00
Mike Tzou
9e4f246c89 Merge pull request #8672 from Chocobo1/js
Move JavaScript libraries to its own folder
2018-04-04 19:23:10 +08:00
Mike Tzou
e4fc8e4156 Merge pull request #8669 from Chocobo1/runext
Split args manually in runExternalProgram()
2018-04-03 22:19:29 +08:00
dzmat
883d4d81d5 Make uncrustify.cfg available to Qt Creator IDE 2018-04-03 18:35:28 +07:00
Mike Tzou
041b86981f Merge pull request #8665 from Chocobo1/iostream
Use lightweight printf instead of iostream
2018-04-02 20:17:12 +08:00
Chocobo1
470e993c2d Remove unused JavaScript library 2018-04-02 01:34:49 +08:00
Chocobo1
cbf10ebb7f Update clipboard.js to v2.0.0 2018-04-02 01:34:49 +08:00
Chocobo1
89f06274bb Move JavaScript libraries to its own folder 2018-04-02 01:34:43 +08:00
Chocobo1
c07cd440cd Split args manually in runExternalProgram()
Need to split arguments manually because QProcess::startDetached(QString)
will strip off empty parameters.
E.g. `python.exe "1" "" "3"` will become `python.exe "1" "3"`.
Closes #8454.
2018-04-01 18:42:42 +08:00
Mike Tzou
e90be67fec Merge pull request #8640 from Chocobo1/guide2
Clarify braces usages in CODING_GUIDELINES
2018-04-01 18:16:04 +08:00
Chocobo1
37ea01bd44 Use lightweight printf instead of iostream
Using iostream usually adds a lot of other operators (<<, endl), whereas
*printf takes only 1 function call.

Also use qUtf8Printable whenever possible.
2018-03-31 03:21:53 +08:00
Mike Tzou
ccc91e2e52 Merge pull request #8629 from Chocobo1/guide
Extend Coding Guidelines to cover other languages
2018-03-30 14:31:55 +08:00
Chocobo1
d31954761f Clarify braces usages in CODING_GUIDELINES
Merge "Curly braces" & "If blocks" sections into "New lines & curly braces" section.

Add note about the list is not exhaustive and style can be determine on code review.
2018-03-29 02:50:48 +08:00
Mike Tzou
aa122b062e Merge pull request #8615 from Chocobo1/watcher
Improve FS watcher
2018-03-27 14:34:08 +08:00
Chocobo1
65921eaf7b Remove QPointer wrapper 2018-03-25 15:53:31 +08:00
Chocobo1
bfbd978d3f Move helper function to Utils::Fs 2018-03-25 13:26:03 +08:00
Chocobo1
1876dbd523 Fix typo 2018-03-25 13:26:02 +08:00
Chocobo1
ea7eb7c0ec Add delay before processing FS changes
This prevents file renaming errors in monitored folder on linux, for
example: ABC.torrent.part -> ABC.torrent
2018-03-25 13:26:02 +08:00
Chocobo1
19c733ce95 Use specific name for rejected files 2018-03-25 13:26:02 +08:00
Chocobo1
2ba5dd1344 Reduce debug messages 2018-03-25 13:26:02 +08:00
Chocobo1
61eddfce90 Refactor functions in FileSystemWatcher
Use c++11 range-loop
Add const
Better ifdef placement
Inline functions
2018-03-25 13:26:02 +08:00
Chocobo1
0840556f77 Do cleanups in FileSystemWatcher
Use Qt5 connect syntax
Sort headers
Add license
Add anonymous namespace
Replace macro defines with const variables
2018-03-25 13:25:28 +08:00
Mike Tzou
f564e8a1c4 Merge pull request #8621 from Chocobo1/html5
Update WebUI to be more compliant with HTML5 standard
2018-03-24 22:41:31 +08:00
Chocobo1
315d9835b2 Extend Coding Guidelines to cover other languages 2018-03-23 15:21:50 +08:00
Chocobo1
ed03456999 Update WebUI to be more compliant with HTML5 standard
Use modern and shorter "charset" attribute.
Remove "type", "charset" attributes in script/style tags, these are redundant in HTML5.
2018-03-23 00:04:43 +08:00
Mike Tzou
e1a14007f8 Merge pull request #8618 from Piccirello/remove-css
Remove unused CSS from WebUI login page
2018-03-23 00:02:12 +08:00
Thomas Piccirello
a15cfae03a Fix spacing 2018-03-21 00:04:21 -04:00
Thomas Piccirello
c2a195360a Resolve JavaScript errors 2018-03-21 00:04:21 -04:00
Thomas Piccirello
a4f99995bb Consolidate CSS into style.css 2018-03-21 00:04:18 -04:00
Thomas Piccirello
16616f4e0e Remove unused CSS from WebUI login page 2018-03-20 15:25:04 -04:00
Vladimir Golovnev
a5294e1e08 Merge pull request #8558 from luis-pereira/containter-anti-pattern
Don't create temporary containers just to iterate over them
2018-03-19 13:06:01 +03:00
Vladimir Golovnev
a8dbff06a3 Merge pull request #8607 from glassez/rss
Process loaded RSS articles in case of parsing error
2018-03-19 09:35:30 +03:00
Vladimir Golovnev (Glassez)
d9cd5d4680 Resolve (X)HTML entities in RSS content
Many sites include various HTML entities in the content of RSS feeds.
The most of these entities are not declared in the underlying XML,
so the documents are considered by parser to be malformed.
This patch allows you to successfully parse such soft-malformed
RSS feeds.
Closes #8527.
Closes #8569.
2018-03-18 18:59:55 +03:00
Luís Pereira
ac42ccb5e4 Don't create temporary containers just to iterate over them
Stops temporary containers being created needlessly due to API misuse.
For example, it’s common for developers to assume QHash::values() and
QHash::keys() are free and abuse them, failing to realize their
implementation internally actually iterates the whole container, allocates
memory, and fills a new QList.

Added a removeIf generic algorithm, similar to std ones. We can't use std
algorithms with Qt dictionaries because Qt iterators have different
behavior from the std ones.

Found using clazy.
2018-03-18 16:22:12 +03:00
Mike Tzou
68ca95faf0 Merge pull request #8603 from Chocobo1/typo
Fix typo
2018-03-17 00:49:41 +08:00
Vladimir Golovnev (Glassez)
8d285c66aa Process loaded RSS articles in case of error
For some reason, the RSS feed may contain malformed XML data and it may not be
successfully parsed by the XML parser. We are still trying to load as many articles
as possible until we encounter corrupted data. So we can have some articles even in
case of parsing error.
Closes #8527.
Closes #8569.
2018-03-16 18:29:38 +03:00
Mike Tzou
1f28122428 Merge pull request #8595 from Chocobo1/runExt
Add Tags parameter to "Run External Program"
2018-03-16 19:37:34 +08:00
Mike Tzou
6ec179e0f7 Merge pull request #8594 from Chocobo1/ui
Properly align text label
2018-03-15 13:41:23 +08:00
Chocobo1
423511765a Fix typo 2018-03-14 23:37:08 +08:00
Vladimir Golovnev
c061d67b14 Merge pull request #8597 from Piccirello/fix
Use correct API method URL in WebUI
2018-03-14 15:19:00 +03:00
Thomas Piccirello
4863078744 Use correct API method URL in WebUI
Fix up 27d8dbf.
Closes #8596.
2018-03-14 03:08:46 -04:00
Chocobo1
88881de8c6 Add Tags parameter to "Run External Program"
Closes #8586.
Also sort headers.
2018-03-14 10:12:32 +08:00
Chocobo1
690c439ae6 Properly align text label 2018-03-14 00:35:20 +08:00
Mike Tzou
e78b5202bc Merge pull request #8585 from Chocobo1/lint
Fix compiler/clazy warnings
2018-03-13 22:36:10 +08:00
Vladimir Golovnev
c9be1d0a19 Merge pull request #8494 from paolo-sz/master
Fix for "Content" panel messed up
2018-03-13 16:54:05 +03:00
Vladimir Golovnev
3348eef423 Merge pull request #8488 from thalieht/fix
Move suffix-labels inside the corresponding spinboxes
2018-03-12 16:58:05 +03:00
Vladimir Golovnev
931af6c97e Merge pull request #8313 from Piccirello/search-categories
Calculate search categories based on selected plugin
2018-03-12 14:29:51 +03:00
Vladimir Golovnev
cea2948593 Merge pull request #8556 from Piccirello/compiler-warnings
Fix missing initializer warning during build
2018-03-12 14:28:38 +03:00
Chocobo1
a468c84b30 Fix warnings from unused variables 2018-03-12 14:36:28 +08:00
Thomas Piccirello
7278625f53 Calculate supported categories based on selected plugin 2018-03-12 01:33:45 -04:00
Thomas Piccirello
7b3e692f68 Fix missing initializer warning
This issue occurs when using gcc versions < 5.
2018-03-12 01:21:21 -04:00
Chocobo1
fdb0d97b28 Remove unused function 2018-03-11 23:27:04 +08:00
Chocobo1
08a2439f46 Check directly if container is empty or not 2018-03-11 23:12:16 +08:00
Chocobo1
6767487e40 Remove unused variable 2018-03-11 22:31:17 +08:00
Chocobo1
141a2d2856 Prevent detach from containers 2018-03-11 22:25:07 +08:00
thalieht
2eea57e609 Use spinbox suffix to display time unit 2018-03-11 12:08:00 +02:00
thalieht
0b185e347b Use spinbox suffix to display rate unit 2018-03-11 12:07:38 +02:00
thalieht
1e1db31ab5 Use unique layout names 2018-03-11 12:07:24 +02:00
Mike Tzou
7233274110 Merge pull request #8562 from Chocobo1/lint
Fix warnings from clazy
2018-03-11 12:41:58 +08:00
paolo-sz
d4e2b21534 Fix Content widget misbehavior
Starting from QT 5.10.1 Content widget is messed up and its settings are
lost while restarting.
Setting StretchLastSection property to false seems to solve the issue.
(Closes #8439).
2018-03-10 18:56:18 +01:00
Vladimir Golovnev
4f206f987a Merge pull request #8561 from glassez/tracker
Properly reply to announce request
2018-03-10 17:08:29 +03:00
Vladimir Golovnev (Glassez)
dfddda57b9 Properly reply to announce request 2018-03-09 17:41:06 +03:00
Mike Tzou
0cacd71503 Merge pull request #8403 from Piccirello/webui-download-height
Make WebUI iframe windows scrollable on iOS. Closes #8401, #7932.
2018-03-09 19:46:29 +08:00
Chocobo1
fdf3ebbb6c Remove usage of deprecated functions
Also use proper type for storing date/time data
2018-03-09 19:20:58 +08:00
Chocobo1
a3d9e457a0 Add context parameter in connect() 2018-03-09 13:44:17 +08:00
Chocobo1
ffb5c0635e Remove unused slot declaration for function 2018-03-09 01:50:23 +08:00
Chocobo1
b4f23d8154 Use faster code path
From Qt doc: Using this function is faster than using QFileInfo(file).exists() for
file system access.
2018-03-09 01:34:35 +08:00
Chocobo1
ed310c2dac Avoid temporary QString allocations
Fix up 0457fd260e
2018-03-09 01:34:35 +08:00
Chocobo1
50167d40d7 Allow ADL lookup for helper function 2018-03-09 01:34:19 +08:00
Mike Tzou
5261d4375f Merge pull request #8551 from Chocobo1/override
Fix warnings from linters
2018-03-09 00:36:52 +08:00
Thomas Piccirello
0b56cd5fa0 Make WebUI iframe windows scrollable on iOS
Closes #8401, #7932.
2018-03-08 01:30:13 -05:00
Vladimir Golovnev
e22946ef61 Merge pull request #8525 from glassez/url-query
Parse URL query string at application level
2018-03-07 17:16:21 +03:00
Chocobo1
0457fd260e Avoid temporary QString allocations
This fixes clazy warning: Use multi-arg instead [-Wclazy-qstring-arg]
2018-03-07 20:06:00 +08:00
Chocobo1
c60b7b213e Add missing 'override' specifier
This fixes clang warning:
'notify' overrides a member function but is not marked 'override'
[-Winconsistent-missing-override]
2018-03-07 20:05:52 +08:00
Mike Tzou
c759c4301e Merge pull request #8547 from Chocobo1/fix
Fix broken WebUI
2018-03-07 00:48:16 +08:00
Chocobo1
307736e263 Fix broken WebUI
Fix up c47e4efade.
Closes #8545.
2018-03-06 14:03:01 +08:00
Mike Tzou
7aa5bc4bc1 Merge pull request #8484 from Piccirello/improve-webui-stats
Improve WebUI stats dialog (addendum to #8349)
2018-03-06 00:49:49 +08:00
Thomas Piccirello
c47e4efade Save WebUI Statistics window size 2018-03-05 01:40:21 -05:00
Mike Tzou
b0781e820c Merge pull request #8531 from Chocobo1/https
Improve URL scheme handling
2018-03-05 01:28:27 +08:00
Vladimir Golovnev (Glassez)
1aca3b0adc Parse URL query string at application level 2018-03-04 17:08:48 +03:00
Chocobo1
20c4b0ee0c Use original scheme when downloading favicons
Previously was always using http, now we only drop back to http when
scheme is absent
2018-03-03 12:53:27 +08:00
Chocobo1
3df4a7ac2e Use https for documentation links 2018-03-03 12:43:59 +08:00
Vladimir Golovnev
efdeb81af1 Merge pull request #8374 from glassez/coding-style
Add Coding Style rules for commit messages
2018-03-02 18:05:25 +03:00
Vladimir Golovnev (Glassez)
34295a78f2 Move ByteArray utils into Utils::ByteArray namespace 2018-03-02 17:23:21 +03:00
Mike Tzou
57163612ff Merge pull request #8427 from Chocobo1/server2
Rewrite RequestParser
2018-03-02 16:07:12 +08:00
Tom Piccirello
1a9b009951 Enable Statistics window to be scrolled and resized
Text may go offscreen due to translations.
2018-03-02 02:18:42 -05:00
Vladimir Golovnev
9406b4b226 Merge pull request #8515 from glassez/webapi
Fix Legacy Web API to be fully available
2018-03-01 09:44:06 +03:00
Mike Tzou
38dc6ab8cf Merge pull request #8441 from Chocobo1/runExt
Revert back to QLineEdit for "Run external program". Closes #7800.
2018-03-01 13:23:42 +08:00
Mike Tzou
55c3db339b Merge pull request #8455 from Chocobo1/large_torrent
Fix loading very large torrents. Closes #8449
2018-03-01 13:22:43 +08:00
Vladimir Golovnev (Glassez)
34456a7459 Fix Legacy Web API to be fully available 2018-02-28 18:25:48 +03:00
Vladimir Golovnev
02b029abbe Merge pull request #8508 from luis-pereira/clang-cmake-support
Make it build when using Clang under CMake
2018-02-28 10:52:00 +03:00
Vladimir Golovnev
b26eb3d146 Merge pull request #8373 from glassez/search
Improve Search handling
2018-02-28 10:46:33 +03:00
Vladimir Golovnev
7cb6100c9c Merge pull request #8471 from luis-pereira/use-qstring-ref
Don't create temporary substrings
2018-02-28 10:44:59 +03:00
Vladimir Golovnev (Glassez)
ef06485c45 Add Coding Style rules for commit messages 2018-02-27 20:27:58 +03:00
sledgehammer999
1c2d9c1fe4 Merge pull request #8510 from adem4ik/patch-2
Fix typo in filelogger.cpp message
2018-02-27 17:38:52 +02:00
Mike Tzou
6f7f7d87c6 Merge pull request #8218 from Piccirello/webui-selection-bug
Reselect webui torrents after full_update. Temporary fix for #8209.
2018-02-27 13:33:39 +08:00
Andrei Stepanov
817aadd52d Fix typo in filelogger.cpp message 2018-02-27 02:00:43 +04:00
Luís Pereira
058bad0af3 Make it build when using Clang under CMake
The pair Clang/qmake builds.
CMake compiler settings are more strict and it causes clang build to fail.
2018-02-26 19:53:39 +00:00
Luís Pereira
0e421ae415 Don't create temporary substrings
Avoid temporary string allocations. They are only used to convert to
something else.
QString::xxxRef() returns a QStringRef. QStringRef avoids the memory
allocation and reference counting overhead of a standard QString by simply
referencing a part of the original string.
2018-02-26 11:39:36 +00:00
Thomas Piccirello
2227c3afc1 Reselect torrents in WebUI after full update
Temp fix for #8209.
2018-02-25 01:09:06 -05:00
Mike Tzou
050af8a793 Merge pull request #7894 from Piccirello/auto-management
Disable options when Force Proxy is enabled
2018-02-25 01:44:58 +08:00
Vladimir Golovnev
6207855f3b Merge pull request #8372 from thalieht/inactiverate
Expose the libtorrent fields for "dont_count_slow_torrents" to GUI.
Closes #5713.
2018-02-24 14:13:39 +03:00
Vladimir Golovnev
a65a70ab48 Merge pull request #8479 from thalieht/ratioLimitsCrash
Fix possible crash when using both share limits
2018-02-24 14:11:09 +03:00
Thomas Piccirello
4110bb874f Right align stat values 2018-02-23 14:54:31 -05:00
Thomas Piccirello
5c74f374af Re-order and rename stats 2018-02-23 14:54:24 -05:00
Thomas Piccirello
a8420a43f9 Format Read cache hits as percentage 2018-02-23 14:46:47 -05:00
Vladimir Golovnev (Glassez)
279bce2014 Make SearchManager singleton 2018-02-23 20:26:32 +03:00
Vladimir Golovnev (Glassez)
f3d370870d Improve Search handling
Legacy SearchEngine class really has three roles:
  1. Manage search plugins,
  2. Handle the search job, and
  3. Handle the download of the torrent file using the search plugin.
Now it is splitted into 3 classes: SearchManager, SearchHandler and
SearchDownloadHandler.
Search GUI is also improved.
2018-02-23 20:15:25 +03:00
thalieht
0e30659c26 Fix possible crash when using both share limits
Avoid possible crash in "torrent->name()" when processing seeding time of the torrent that already reached the ratio limit.
2018-02-23 17:13:56 +02:00
Chocobo1
f34dfca5e6 Enable Http/1.1 persistence connection
This enables reusing existing TCP connection instead of opening a new connection
for every request
2018-02-23 14:46:22 +08:00
Chocobo1
cec68c3fd7 Rewrite RequestParser
* Add more checks and also more strict checks for invalid conditions
* Add http version field
* Raise max request size to 64 MB
* Add author in license
* Use Qt5 new connect syntax
2018-02-23 14:46:17 +08:00
Vladimir Golovnev
5c2f698cb4 Merge pull request #8325 from luis-pereira/prevent-c++11-range-loop-detach
Prevent possible c++11 range-loop container detach
2018-02-22 16:28:04 +03:00
Chocobo1
f5fc2d52b8 Fix loading very large torrents. Closes #8449.
`torrent_info` constructor has default limits that can't be changed via
parameters, so we handle the loading process manually and explicitly
specifiy the limits to `bdecode()`.
The token_limit is also changed to 10000000.
2018-02-22 18:52:10 +08:00
Mike Tzou
edef85fa3e Merge pull request #8456 from vit9696/patch-1
Fix compilation with Qt 5.11 on macOS
2018-02-21 23:00:55 +08:00
Mike Tzou
6244ad5fa8 Merge pull request #8458 from luis-pereira/qgetenv
Use qEnvironmentVariableIsEmpty
2018-02-21 23:00:30 +08:00
Chocobo1
aba23f67a0 Revert back to QLineEdit for "Run external program". Closes #7800
1. Using FileSystemPathEdit is not entirely correct, as it only always
shows false warnings when parameters are present.
2. FileSystemPathEdit::selectedPath() modifies the path to unix format,
in this specific case, we need to faithfully execute what user inputted.
3. Given the above it is reasonable to revert back to QLineEdit, as it
is just sufficient in functionality and doesn't modifiy the inputs.
2018-02-21 10:16:32 +08:00
Luís Pereira
1a913c502b Prevent possible c++11 range-loop container detach
Explicit or implicit calls to begin() and end() cause a non-const
container to detach from shared data, ie. to perform a deep-copy to gain
a unique copy of the data.
That can be a expensive although unneeded operation.

In order to assist the developer a copyAsConst function is added.
copyAsConst returns a const copy of the object.

For lvalues just use qAsConst. It's only available on Qt 5.7.0. But we
added also for earlier versions. The developer can always use qAsConst.

Intended uses:

    QString s = ...;
    for (const auto &ch : qAsConst(s))
          process(ch);

    for (const auto &ch : copyAsConst(funcReturningQString()))
        process(ch);
2018-02-20 19:28:51 +00:00
Vladimir Golovnev
078982ada6 Merge pull request #8424 from glassez/fix-rss
Disable Auto TMM when RSS rule has save path. Closes #8411
2018-02-20 11:13:15 +03:00
Vladimir Golovnev
3035184d25 Merge pull request #8445 from glassez/fix-webapi
Fix POST params handling. Closes #8443
2018-02-20 11:11:33 +03:00
Thomas Piccirello
fccdc7ebdc Remove extra space 2018-02-20 02:22:40 -05:00
Thomas Piccirello
e0c74c2d39 Remove conditionals 2018-02-20 02:22:40 -05:00
Thomas Piccirello
288f372914 Rename onClick property to onclick 2018-02-20 02:16:16 -05:00
Thomas Piccirello
ba331436fa Add More Information link 2018-02-20 02:16:16 -05:00
Thomas Piccirello
afd4069eb4 Disable options when force proxy is enabled 2018-02-20 02:16:15 -05:00
Vladimir Golovnev
387f9b1230 Merge pull request #8438 from Piccirello/webui-proxy-only
Add "Use proxy only for torrents" option to webui
2018-02-20 09:06:30 +03:00
Luís Pereira
2114817890 Use qEnvironmentVariableIsEmpty
Instead of qgetenv("QT_AUTO_SCREEN_SCALE_FACTOR").isEmpty().
It's faster (don't allocate memory) and don't throw exceptions.
2018-02-19 21:35:23 +00:00
vit9696
dac2ab5409 Fix compilation with Qt 5.11 on macOS 2018-02-19 22:39:25 +03:00
Mike Tzou
b87ca60c5a Merge pull request #8134 from Piccirello/webui-show-status-bar
Add option to show/hide webui status bar
2018-02-20 00:09:09 +08:00
Mike Tzou
6d44075662 Merge pull request #8228 from Piccirello/webui-save-window-size
WebUI Save user's resized windows
2018-02-20 00:02:32 +08:00
Thomas Piccirello
69af205094 Use .each(). Refactor conditionals. 2018-02-18 23:54:48 -05:00
Thomas Piccirello
8a2e3f5d93 Add option to show/hide webui status bar 2018-02-18 23:46:27 -05:00
Thomas Piccirello
3f79726ab9 Make download + upload windows resizable 2018-02-18 22:50:21 -05:00
Thomas Piccirello
d1c4b1599a WebUI Save user's resized window sizes 2018-02-18 22:50:21 -05:00
Vladimir Golovnev (Glassez)
a0842a1e68 Don't convert POST parameter names to lower-case 2018-02-18 19:57:48 +03:00
Vladimir Golovnev (Glassez)
29042e4841 Fix wrong WebAPI param name 2018-02-18 19:54:08 +03:00
Vladimir Golovnev
3e2cfb5136 Merge pull request #8409 from luis-pereira/master
Don't implicitly cast iterator to const_iterator
2018-02-18 18:21:50 +03:00
Thomas Piccirello
0d55599e02 Add "Use proxy only for torrents" option to webui 2018-02-17 21:25:42 -05:00
Luís Pereira
ea1b0b26b1 Don't implicitly cast iterator to const_iterator
It prevents detachments:
To illustrate:

QMap<QString, QString> map;
/* code compiles and works fine but find() returns the non-const
   QMap::iterator that detaches!
*/
QMap<QString, QString>::const_iterator it = map.find("girish");

but also some subtle bugs:

QHash<int, int> wrong;
if (wrong.find(1) == wrong.cend()) {
    qDebug() << "Not found";
} else {
    /* find() detached the container before cend() was called, so it
       prints "Found"
    */
    qDebug() << "Found";
}

QHash<int, int> right;
if (right.constFind(1) == right.cend()) {
    qDebug() << "Not found"; // This is correct now !
} else {
    qDebug() << "Found";
}

Enforced by QT_STRICT_ITERATORS definition.
2018-02-17 17:02:52 +00:00
Vladimir Golovnev (Glassez)
176b2eb18b Disable Auto TMM when RSS rule has save path
Closes #8411.
2018-02-16 14:02:01 +03:00
Vladimir Golovnev
98a1c111b9 Merge pull request #5287 from elFarto/master
Implement RSS Smart Filter
2018-02-16 13:43:38 +03:00
Mike Tzou
47048d8410 Merge pull request #8349 from Chocobo1/stats
Improve stats dialog
2018-02-16 15:31:01 +08:00
Mike Tzou
882fa7ecd4 Merge pull request #8336 from Chocobo1/coalesce
Add "Coalesce reads & writes" checkbox in advanced options
2018-02-16 15:30:17 +08:00
Vladimir Golovnev
d07ece53e6 Merge pull request #7610 from glassez/webapi2
Redesign Web API
2018-02-16 10:09:35 +03:00
Vladimir Golovnev
afd2f6ba14 Merge pull request #8344 from FranciscoPombal/master
Fixed typo in function name isSplashScreenDisabled()
2018-02-16 09:55:37 +03:00
Vladimir Golovnev
226b0d4194 Merge pull request #8398 from luis-pereira/no-qdeleteall-on-temporaries
Don't use qDeleteAll() on temporaries
2018-02-16 09:53:41 +03:00
Luís Pereira
44e4b5d238 Don't use qDeleteAll() on temporaries
qDeleteAll() is being used on an unnecessary temporary container created
by QHash::values().
Using qDeleteAll(mycontainer) instead.
2018-02-12 16:36:03 +00:00
sledgehammer999
c59d2575c8 Sync translations from Transifex and run lupdate. 2018-02-09 21:14:12 +02:00
thalieht
f50b4724a6 Expose the libtorrent fields for "dont_count_slow_torrents" to GUI:
inactive_down_rate
inactive_up_rate
auto_manage_startup
2018-02-08 14:14:39 +02:00
Stephen Dawkins
48cbccff1e Made smart episode filter regular expression configurable 2018-02-05 19:23:11 +00:00
Chocobo1
e31ec20ec4 Clarify some terms in stats dialog
Reorder list
2018-02-02 23:41:42 +08:00
Chocobo1
b9ec216aa5 Redefine CacheStatus.readRatio field.
Now it is defined as:
CacheStatus.readRatio = (blocks read from cache) / (blocks read from disk + blocks read from cache)
The 2 variables in denominator are counted separately and the formula before this change doesn't really make sense

Add percentage sign to "Read cache hits" stats
Also remove redundant header include
2018-02-02 23:41:42 +08:00
FranciscoPombal
2ac3004762 Fixed typo in function name isSplashScreenDisabled() 2018-01-31 12:05:41 +00:00
Chocobo1
543cbc6d1c Add "Coalesce reads & writes" checkbox in advanced options
The setting is defaulted to ON for Windows. Closes #8295.
2018-01-30 22:46:14 +08:00
Vladimir Golovnev (Glassez)
27d8dbf13b Redesign Web API
Normalize Web API method names.
Allow to use alternative Web UI.
Switch Web API version to standard form (i.e. "2.0").
Improve Web UI translation code.
Retranslate changed files.
Add Web API for RSS subsystem.
2018-01-28 19:16:24 +03:00
sledgehammer999
e487b31877 Merge pull request #8319 from sledgehammer999/saner_log_settings
Set default file log size to 65 KiB and delete backup logs older than…
2018-01-27 15:26:03 +02:00
Stephen Dawkins
2845a791d0 Initial implementation of Smart Filter feature 2018-01-27 09:14:36 +00:00
sledgehammer999
024df8c53f Set default file log size to 65 KiB and delete backup logs older than 1 month. 2018-01-27 01:17:50 +02:00
sledgehammer999
12d97475da Merge pull request #8321 from luis-pereira/remove-duplicate-set-app-name
Don't set application name twice
2018-01-25 21:41:46 +02:00
Luís Pereira
5154d431f6 Don't set application name twice
It's an artifact introduced by commit b3c73b7868.
2018-01-25 16:30:11 +00:00
Vladimir Golovnev (Glassez)
0fc1ad664f Implement Qt wrapper for std::runtime_error 2018-01-23 11:08:41 +03:00
Vladimir Golovnev (Glassez)
bb683bd393 Switch built-in Web UI html to HTML5 2018-01-23 11:08:37 +03:00
Vladimir Golovnev (Glassez)
69df8174b9 Allow to load TorrentInfo from data buffer 2018-01-23 11:08:32 +03:00
Vladimir Golovnev
56ccf28000 Merge pull request #8133 from Piccirello/webui-statistics-format
WebUI Statistics parity with GUI
2018-01-23 10:15:39 +03:00
Vladimir Golovnev
0a45fc9ffe Merge pull request #7990 from Piccirello/subnet-whitelist-refactor
Refactor ip subnet whitelist
2018-01-23 10:03:00 +03:00
Mike Tzou
a56262401b Merge pull request #8304 from Piccirello/webui-torrent-status
Remove default case, fix #8302
2018-01-23 12:28:22 +08:00
Tom Piccirello
ebea0d91af Remove default case, fix #8302 2018-01-22 02:05:41 -05:00
Vladimir Golovnev
d6cea2f76d Merge pull request #8301 from glassez/clear-settings
Remove legacy and corrupted RSS settings. Closes #8278
2018-01-21 20:42:26 +03:00
Vladimir Golovnev
4386fd9f89 Merge pull request #8292 from glassez/coding-style
Require '#pragma once' in new code
2018-01-21 20:05:42 +03:00
Vladimir Golovnev (Glassez)
1c18edac76 Remove legacy and corrupted RSS settings 2018-01-21 20:01:56 +03:00
Vladimir Golovnev (Glassez)
247b93e8ec Require '#pragma once' in new code 2018-01-20 12:10:21 +03:00
sledgehammer999
6470f9acb9 Merge pull request #8286 from Piccirello/webui-torrent-status
Match webui statuses to gui: add default case (addendum to #8269)
2018-01-19 15:36:55 +02:00
Thomas Piccirello
65e0aa6b82 Add default case 2018-01-18 23:30:19 -05:00
sledgehammer999
53cc8e1115 Revert "Remove examples from gpl.html. Closes #7749."
The GPL folks are a bit overzealous. See https://www.gnu.org/licenses/gpl-faq.html#GPLOmitPreamble

This reverts commit 5cf4f00824.
2018-01-18 16:25:38 +02:00
sledgehammer999
72b8ec8f3b Sync translations from Transifex and run lupdate. 2018-01-18 16:18:44 +02:00
sledgehammer999
29e24232ad Merge pull request #8269 from Piccirello/webui-torrent-status
Match webui statuses to gui, closes #7516
2018-01-18 16:11:24 +02:00
Thomas Piccirello
6d0cceca83 Use switch statement 2018-01-18 00:15:13 -05:00
Thomas Piccirello
8e9b928b61 Match webui statuses to gui, closes #7516 2018-01-18 00:15:12 -05:00
sledgehammer999
df81e84fc2 Merge pull request #8271 from Piccirello/gui-search-separators
Only add Search combobox separators as needed
2018-01-18 01:25:38 +02:00
Tom Piccirello
e6a1b72354 Only add search separators as needed 2018-01-16 00:22:51 -05:00
Mike Tzou
e48b97466c Merge pull request #8199 from winneon/reannounce
transferlist: added a force reannounce option
2018-01-10 18:48:41 +08:00
Mike Tzou
84b9929025 Merge pull request #8240 from Chocobo1/size
Torrent creator: raise maximum piece size to 32 MiB
2018-01-10 13:28:51 +08:00
Chocobo1
5c50dba9e1 Torrent creator: raise maximum piece size to 32 MiB 2018-01-09 13:04:44 +08:00
Mike Tzou
55b9b8fc91 Merge pull request #8234 from Chocobo1/tr
Fix translation context.
2018-01-08 15:04:42 +08:00
Chocobo1
fb698896c9 Fix translation context.
Partially addresses #8220.

Also sort include headers
2018-01-07 23:01:22 +08:00
sledgehammer999
95c32221a2 Update copyright year. 2018-01-06 02:23:09 +02:00
sledgehammer999
230fc8e11e Merge pull request #8216 from Chocobo1/i18n
Fix translation context. Closes #8211.
2018-01-05 16:18:11 +02:00
Thomas Piccirello
9b919b6c34 Add missing units 2018-01-05 02:48:41 -05:00
Thomas Piccirello
49d3b7bf30 Right-align stat values 2018-01-05 02:48:41 -05:00
Chocobo1
1d778676cd Fix translation context. Closes #8211. 2018-01-05 12:07:50 +08:00
Jesse Bryan
e887b3106f transferlist: added a force reannounce option. closes #6448. 2018-01-03 16:48:31 -06:00
sledgehammer999
be5600dae2 Update configure version info. 2018-01-03 23:18:00 +02:00
sledgehammer999
686fb701bf Update libtorrent bottle for Travis. 2018-01-03 22:41:54 +02:00
Mike Tzou
a73c4d57b1 Merge pull request #8136 from Chocobo1/pri
Sort filename lists in .pri files
2018-01-03 23:53:50 +08:00
sledgehammer999
e6ce1dd0b0 configure: Parse all compiler related flags together. 2018-01-03 01:16:39 +02:00
sledgehammer999
25ab660c14 Fix splitting of compiler flags in configure.
Autoconf removes a set of [] during script translation, resulting in a wrong sed command.
2018-01-02 18:15:49 +02:00
sledgehammer999
38d3eea6ee Merge pull request #8185 from sledgehammer999/fix_status_state
Fix constant status of '[F] Downloading'. Closes #7628.
2018-01-02 18:13:10 +02:00
sledgehammer999
13f69a2245 Fix constant status of '[F] Downloading'. Closes #7628. 2018-01-02 18:09:48 +02:00
Chocobo1
ec337a8a84 Sort filename lists in .pri files 2017-12-31 11:53:45 +08:00
Mike Tzou
267362a7a0 Merge pull request #7876 from Chocobo1/optionIcons
Fix gui issues on high DPI monitor
2017-12-31 11:42:55 +08:00
Mike Tzou
11f26bfefd Merge pull request #7878 from Chocobo1/runExt
Revert "Run external program" function
2017-12-28 21:26:53 +08:00
Vladimir Golovnev
87c3f5163e Merge pull request #8141 from glassez/fix-rss
Don't process new/updated RSS rules when disabled
2017-12-28 09:08:31 +03:00
Vladimir Golovnev (Glassez)
22bdf98617 Don't process new/updated RSS rules when disabled 2017-12-27 20:01:40 +03:00
sledgehammer999
e5001e8f40 Merge pull request #8132 from Piccirello/use-https
Use https for www.qbittorrent.org
2017-12-27 02:10:49 +02:00
Thomas Piccirello
ddd6c82dd7 Use https for www.qbittorrent.org 2017-12-26 18:22:03 -05:00
Vladimir Golovnev
155dc49c5a Merge pull request #7914 from Piccirello/webui-columns
Webui add torrent columns to match gui
2017-12-26 22:03:07 +03:00
Chocobo1
c2c0dd2717 Fix column size too narrow on resize
Instead of giving a value, just resize to the content size
2017-12-24 21:54:56 +08:00
Chocobo1
27cf98a962 Resize dialog size on high DPI monitors 2017-12-24 21:54:56 +08:00
Chocobo1
aaaa67050c Fix gui issues on high DPI monitor
Fix LineEdit widget size issues
Up-scale the icons on statusbar
Up-scale the icons in options dialog. Closes #7729.
Fix small icons in cookie manager
Fix progress bar height
Fix small icons in confirm delete dialog
Fix small icons in options dialog
Fix small images in about dialog
2017-12-24 21:47:46 +08:00
Chocobo1
52ae118e3c Tweak spacing 2017-12-24 21:47:46 +08:00
Chocobo1
cb929f7e59 Cleanup
Use Qt5 connect syntax
Reorder include headers
2017-12-24 21:47:44 +08:00
sledgehammer999
94b64884f8 Merge pull request #7997 from Piccirello/webui-content-columns
Add "Remaining" and "Availability" columns to webui Content tab
2017-12-23 20:32:46 +02:00
sledgehammer999
8a590c7472 Merge pull request #8054 from hannsen/master
search only when category is supported by plugin
2017-12-23 20:24:06 +02:00
sledgehammer999
b11c33b2d9 Merge pull request #8068 from thalieht/readableFlags
Make peer information flags in peerlist more readable
2017-12-23 19:33:19 +02:00
sledgehammer999
eb201003ee Merge pull request #7974 from sledgehammer999/fix_limit_application
Fix application of speed limits on LAN and μTP connections.
2017-12-23 19:20:32 +02:00
sledgehammer999
cf9bad03aa Fix application of speed limits on LAN and μTP connections. Closes #7745. 2017-12-23 19:19:08 +02:00
sledgehammer999
c5127d2eec Merge pull request #8091 from sledgehammer999/fix_natural_sort
Fix natural sorting
2017-12-23 19:16:29 +02:00
sledgehammer999
0a35adbdba Merge pull request #8087 from sledgehammer999/fix_flag_sorting
Fix sorting of country flags column in Peers tab.
2017-12-23 19:15:44 +02:00
sledgehammer999
38d68d9d97 Merge pull request #8103 from glassez/fix-8094
Fix RSS rule updated when deleting. Closes #8094
2017-12-23 19:09:59 +02:00
sledgehammer999
8494c6c5d4 Merge pull request #8003 from Chocobo1/fileicon
Use standard folder icon for open file behavior on Windows
2017-12-23 19:09:05 +02:00
sledgehammer999
cbfdb7df56 Merge pull request #8033 from vit9696/cmdw
Fix CMD+W not closing the main window
2017-12-23 19:07:51 +02:00
sledgehammer999
ea44923cce Merge pull request #8032 from vit9696/fopen
Fix torrent file selection in Finder on mac
2017-12-23 19:03:33 +02:00
Vladimir Golovnev (Glassez)
e75f8603b0 Fix RSS rule updated when deleting
Closes #8094
2017-12-23 16:25:09 +03:00
sledgehammer999
5437974b85 Fix natural sorting when the common part of 2 strings ends partially in a number which continues in the uncommon part.
Closes #8080 #6732.
2017-12-21 17:00:37 +02:00
sledgehammer999
99abc21dab Simplify sorting code. 2017-12-21 15:26:38 +02:00
sledgehammer999
5156399c68 Fix sorting of country flags column in Peers tab. 2017-12-21 15:21:53 +02:00
Mike Tzou
c8a5ef8c5d Merge pull request #7985 from Chocobo1/source
Add source field in Torrent creator
2017-12-21 20:26:38 +08:00
thalieht
5b52835377 Make peer information flags in peerlist more readable 2017-12-20 11:22:23 +02:00
Mike Tzou
b8277614ec Merge pull request #8066 from Chocobo1/url
WebUI: Only prepend scheme when it is not present. Closes #8057.
2017-12-19 22:43:03 +08:00
Chocobo1
fb6bdbefd5 WebUI: Only prepend scheme when it is not present. Closes #8057. 2017-12-18 14:12:31 +08:00
sledgehammer999
53c33317f9 Sync translations from Transifex and run lupdate. 2017-12-17 23:14:53 +02:00
jan.karberg
d534973650 search only when category is supported by plugin Closes #8053 2017-12-17 13:04:37 +01:00
vit9696
ed154d35ba Fix Finder reveal in preview and torrent contents 2017-12-17 02:16:36 +03:00
vit9696
ff7e5da6de Fix cmd+w not closing the main window on macOS 2017-12-13 13:30:40 +03:00
vit9696
d7fa5b6b6b Put macOS specific functions to MacUtils namespace 2017-12-12 20:53:20 +03:00
vit9696
d57bd62add Fix torrent file selection in Finder on mac 2017-12-12 20:53:20 +03:00
Thomas Piccirello
0f6dff6315 Make value formatting consistent with GUI 2017-12-12 01:25:06 -05:00
Thomas Piccirello
97b4e4a3d3 Add "Remaining" and "Availability" columns to webui Content tab 2017-12-12 01:25:06 -05:00
Vladimir Golovnev
84c84160fd Merge pull request #8008 from glassez/fix-ipv6
Fix WebUI is not reachable via IPv6
2017-12-11 07:58:48 +03:00
sledgehammer999
60c9926834 Merge pull request #8005 from Chocobo1/helpbutton
Disable the "?" help button in all dialogs on Windows
2017-12-11 03:29:31 +02:00
Vladimir Golovnev (Glassez)
fcde1ba09c Fix WebUI is not reachable via IPv6 2017-12-09 09:57:19 +03:00
Chocobo1
8dcf326576 Add source field in Torrent creator. Closes #7965.
This field is often used for cross-seeding between (private) trackers.
2017-12-09 00:39:50 +08:00
Chocobo1
22b0ebb5a8 Disable the "?" help button in all dialogs on Windows. Closes #7365. 2017-12-08 12:51:06 +08:00
Chocobo1
c5d99a12f3 Use standard folder icon for open file behavior on Windows. Closes #7880. 2017-12-08 09:15:44 +08:00
Thomas Piccirello
240f5b6718 Remove invalid subnets directly from list 2017-12-06 20:32:50 -05:00
Thomas Piccirello
d184bd8c82 Perform ip string validation inside setWebUiAuthSubnetWhitelist 2017-12-06 02:05:33 -05:00
Thomas Piccirello
98a2dedb32 Separate subnet whitelist options into two lines 2017-12-06 02:05:32 -05:00
Chocobo1
c405cb2f1c Add struct TorrentCreatorParams for passing parameters
Filter out continuous newlines in Trackers field
Avoid adding empty url seed entries

Cleanup:
  Replace boost::bind
  Add const
  Use nullptr
  Use QString::SkipEmptyParts
  Rename variables
  Throw proper exception type
2017-12-06 01:56:36 +08:00
sledgehammer999
5ea100352e Merge pull request #7958 from Chocobo1/fixsort
Fix crash in #7952
2017-12-04 22:58:22 +02:00
Chocobo1
86c5a8df75 Partial revert eac8838dc2. Fixes #7952.
mapFromSource() didn't work as expected, when used in lessThan(), it sometimes
returns an invalid QModelIndex.
A crash is observed when filtering source model via filterAcceptsRow() in #7952,
the crash is due to endless recursive of filterAcceptsRow() & lessThan() calling
each other and mapFromSource() is the culprit of it.
2017-12-04 17:40:44 +08:00
Thomas Piccirello
a05562cdc5 Add Time Active column 2017-12-03 15:01:35 -05:00
Thomas Piccirello
ee37f1db3d Add Tags columns 2017-12-03 15:01:35 -05:00
sledgehammer999
c9720cad81 Merge pull request #7915 from Chocobo1/dragndrop
Allow to drag-n-drop URLs into mainwindow to initiate download
2017-12-02 20:35:47 +02:00
sledgehammer999
2124ef261a Merge pull request #7964 from Chocobo1/typeError
[WebUI] Fix logout behavior
2017-12-02 14:23:38 +02:00
sledgehammer999
aae6030064 Merge pull request #7963 from Chocobo1/logo
Fix missing qbt logo on login page in webUI. Closes #7953.
2017-12-02 14:22:43 +02:00
Chocobo1
b234fcec9c [WebUI] Use POST for logout command
This is to avoid browser being smart to prefetch the link then logging
out the user.
2017-12-02 14:32:40 +08:00
Chocobo1
1a45145c1e [WebUI] Add check to avoid type error after logout 2017-12-02 14:32:40 +08:00
Chocobo1
c1a282aa7b Fix missing qbt logo on login page in webUI. Closes #7953. 2017-12-02 14:31:48 +08:00
sledgehammer999
e23c5614b6 Add height padding to the transfer list icons. Closes #7951. 2017-12-02 00:50:40 +02:00
sledgehammer999
f457937980 Sync translations from Transifex and run lupdate. 2017-12-01 01:44:24 +02:00
Mike Tzou
eac8838dc2 [GUI] Implement stable sort (#7703)
* NaturalCompare now returns compare result instead of "less than" result
* Change to stable sort in GUI components
* Add Utils::String::naturalLessThan() helper function
* Use Qt::CaseSensitivity type
2017-11-30 17:10:30 +08:00
Mike Tzou
74d281526b Merge pull request #7647 from thalieht/style
Coding style for many files
2017-11-30 17:09:18 +08:00
sledgehammer999
7a8128eec4 Merge pull request #7858 from sledgehammer999/IpFilter_log
Stop logging IP filter parsing errors after a while.
2017-11-29 19:44:43 +02:00
sledgehammer999
a55be5e58f Stop logging IP filter parsing errors after a while.
When a lot of errors happen the resulting log lines introduce
a huge slowdown of the GUI, due to writing each log line to disk.

Closes #7755.
2017-11-29 15:49:59 +02:00
sledgehammer999
4c317f1e4a Merge pull request #7852 from surfernsk/master
Fix i386 build (configure). Closes #7845
2017-11-27 19:12:08 +02:00
sledgehammer999
48c46dc79a Fix crash on some systems when creating address object for 255.255.255.255
Closes #7735.
2017-11-27 19:06:37 +02:00
Chocobo1
b9339bb727 Allow to drag-n-drop URLs into mainwindow to initiate download
Fix issue: https://github.com/qbittorrent/qBittorrent/issues/7785#issuecomment-347092418
Minor refactor
2017-11-27 16:45:55 +08:00
Thomas Piccirello
e1f8e6aa6f Reposition Total Size column to match gui 2017-11-26 19:37:20 -05:00
Chocobo1
76c95d8c6c Revert "Run external program" function
This revert df95efe33e partially
2017-11-25 15:48:29 +08:00
Vladimir Golovnev
a7da714b13 Merge pull request #7832 from glassez/rss-import
Implement Import/Export RSS rules. Closes #7721
2017-11-25 10:35:24 +03:00
Vladimir Golovnev (Glassez)
916cfcdb03 Implement Import/Export RSS rules in JSON format 2017-11-24 21:20:44 +03:00
Vladimir Golovnev (Glassez)
b8fc415870 Implement Import/Export RSS rules in legacy format 2017-11-24 16:19:16 +03:00
Evgeny Lensky
428cb9c986 Fix i386 build (configure)
Fix building on i686 fails with wrong multilib library path #7845

and rebregenerate ./configure
2017-11-24 10:28:03 +07:00
sledgehammer999
99341409f4 Remove examples from gpl.html. Closes #7749. 2017-11-24 02:03:29 +02:00
Mike Tzou
f07333acc9 Merge pull request #7576 from TheNicker/master
Fixed blurry text under windows by setting DPI awareness to default
2017-11-23 20:43:26 +08:00
Vladimir Golovnev
342f5f1a09 Merge pull request #7821 from glassez/fix-rss
Fix RSS Parser. Closes #7751, #7763, #7768, #7786
2017-11-23 14:35:42 +03:00
sledgehammer999
d74efd839f Merge pull request #7826 from Chocobo1/tcp
Change MixedModeAlgorithm default to TCP. Closes #7779.
2017-11-23 01:53:29 +02:00
Heiko Becker
af898e9117 Fix build with --disable-webui
"app/application.cpp:108:7: error: class 'Application' does not have
any field named 'm_webui'"
2017-11-23 01:52:38 +02:00
Vladimir Golovnev (Glassez)
c0e48627ae Fix RSS Parser
Closes #7751
Closes #7763
Closes #7768
Closes #7786
2017-11-22 19:11:37 +03:00
Chocobo1
534ed91d04 Change MixedModeAlgorithm default to TCP. Closes #7779.
MixedModeAlgorithm::Proportional will throttle TCP connections when utp
is in use and users is expecting maximum speed no matter what, so now
disable the throttling.
2017-11-22 22:39:52 +08:00
sledgehammer999
c58d0af88f Merge pull request #7806 from thoradia/rss_feed
Fix missing include in rss_feed.cpp

Fixes #7805
2017-11-22 15:51:05 +02:00
thoradia
ca5c1e8a15 Fix missing include in rss_feed.cpp
Fixes #7805.
2017-11-22 14:39:07 +01:00
sledgehammer999
4e96a1065e Bump API_VERSION to 16. 2017-11-22 01:14:33 +02:00
sledgehammer999
c9a8d19e6c Sync translations from Transifex and run lupdate. 2017-11-22 01:01:05 +02:00
sledgehammer999
81f5fdda15 Correctly check if torrent passed during application start already exists. 2017-11-22 00:42:26 +02:00
sledgehammer999
a38730eb9e Merge pull request #7792 from Chocobo1/creator2
Fix crash when aborting a torrent creation process
2017-11-22 00:41:26 +02:00
sledgehammer999
1a9e650936 Merge pull request #7782 from Chocobo1/utf8
Remove superfluous QString::fromUtf8()
2017-11-22 00:40:51 +02:00
sledgehammer999
ae5177b20f Merge pull request #7778 from Chocobo1/dragdrop
Allow drag-n-drop magnet links to mainwindow. Closes #7742.
2017-11-21 21:27:19 +02:00
Chocobo1
27090f0cfb Remove superfluous QString::fromUtf8() 2017-11-21 22:48:00 +08:00
Chocobo1
433b5a46cf Fix crash when aborting a torrent creation process. Closes #7783.
The wait time wasn't long enough causing the thread to
terminate prematurely.
Also, to avoid crashing qbt entirely when creating a torrent for a very
big file, I decided to wait indefinitely here.
2017-11-21 18:33:47 +08:00
Chocobo1
034d71dce3 Wrap function into anonymous namespace 2017-11-21 18:23:39 +08:00
Chocobo1
c3de2310c5 Avoid double delete on close 2017-11-21 18:11:28 +08:00
Chocobo1
b9478e0f00 Use Qt5 connect syntax 2017-11-21 18:11:28 +08:00
Chocobo1
94aeac992c Allow drag-n-drop magnet links to mainwindow. Closes #7742. 2017-11-21 14:19:34 +08:00
sledgehammer999
4927d26877 Fix english typo. 2017-11-21 02:14:44 +02:00
thalieht
ae1634623e Coding style for many files 2017-11-20 23:29:59 +02:00
sledgehammer999
296c7d3c13 Merge pull request #7764 from Chocobo1/logo
[WebUI] Fix logo missing in login page
2017-11-20 23:28:13 +02:00
sledgehammer999
22add258ae Merge pull request #7753 from luigino/master
qtsingleapplication should always be built statically to avoid depend…
2017-11-20 22:31:46 +02:00
Chocobo1
77f66be493 [WebUI] Fix logo missing in login page 2017-11-21 03:41:07 +08:00
Vladimir Golovnev
f41cb8089d Merge pull request #6779 from Piccirello/disable-web-auth
Add ip subnet whitelist for bypassing webui auth
2017-11-20 21:52:33 +03:00
luigino
32a686a037 qtsingleapplication should always be built statically to avoid dependency problems 2017-11-20 17:23:22 +01:00
sledgehammer999
236abcf3f1 Fix crash on opening torrent/magnet (uninitialized pointer). Closes #7739 #7723. 2017-11-20 17:46:31 +02:00
sledgehammer999
325f9f629d Improve the github issue template. 2017-11-20 16:20:10 +02:00
sledgehammer999
88a771c9ff Bump to 4.1.0alpha 2017-11-20 02:42:16 +02:00
sledgehammer999
b960e41cfa Update Changelog. 2017-11-20 02:28:19 +02:00
sledgehammer999
9f461d0fe6 Sync translations from Transifex and run lupdate. 2017-11-20 02:23:31 +02:00
sledgehammer999
9db1f3baca Merge pull request #6484 from sledgehammer999/new_logo
Change qbittorrent logo. Issue #6467.
2017-11-19 19:15:50 +02:00
sledgehammer999
af5a02d971 Merge pull request #7673 from sledgehammer999/webui_clean_exit
WebUI: Correctly exit depending if mainloop is running.
2017-11-19 19:12:30 +02:00
Vladimir Golovnev (Glassez)
71bb6538db Fix WebUI error handling 2017-11-19 19:10:04 +02:00
sledgehammer999
06ecc45d13 Merge pull request #7711 from Chocobo1/update
Update m4 macros
2017-11-19 18:37:26 +02:00
Chocobo1
31607c4d18 Simplify AX_BOOST_BASE usage
Regenerate configure
2017-11-17 18:25:46 +08:00
Chocobo1
84bb214642 Sync m4 macros with upstream 2017-11-17 15:28:14 +08:00
Mike Tzou
d821bdc9f3 Merge pull request #7669 from Chocobo1/portCheck
[WebAPI] Improve error messages
2017-11-10 23:41:19 +08:00
Vladimir Golovnev
63461e0895 Merge pull request #7688 from glassez/rss-log
Improve RSS events logging
2017-11-10 14:38:38 +03:00
Eugene Shalygin
08755a211b Merge pull request #7596 from evsh/path-history-items
Add option to tune download history list length. Closes #4043.
2017-11-10 12:23:40 +01:00
Vladimir Golovnev (Glassez)
a3c9c1c386 Improve RSS events logging
Fix RSS log messages was untranslatable.
Add more logging.
2017-11-09 15:40:39 +03:00
Thomas Piccirello
0de2f1776e Remove duplicate header 2017-11-08 22:39:49 -05:00
Thomas Piccirello
da0db92b9f Enable preferences Apply button when ip banlist is modified 2017-11-08 22:39:49 -05:00
Thomas Piccirello
95bf63330e Add ip subnet whitelist for bypassing webui auth 2017-11-08 22:39:49 -05:00
Mike Tzou
04cec39277 Merge pull request #7667 from Chocobo1/stackdump
Include & print caught signal in stackdump
2017-11-04 11:10:49 +08:00
sledgehammer999
7b95785954 Merge pull request #7672 from Kolcha/fix-file-permissions
dropped unneeded executable flag from several files
2017-11-03 21:35:33 +02:00
Nikolay Korotysh
7d0342e366 dropped unneeded executable flag from several files 2017-11-03 17:19:54 +03:00
Chocobo1
21bc08d643 Include/print caught signal in stackdump 2017-11-03 14:13:17 +08:00
sledgehammer999
ffa6f7ea34 Bump API_VERSION to 16. 2017-11-03 01:57:32 +02:00
sledgehammer999
6b0449dde7 Update Changelog. 2017-11-03 01:39:44 +02:00
Chocobo1
aa4107478e [WebAPI] Improve error messages
Also refactor to use class methods
2017-11-02 23:01:14 +08:00
sledgehammer999
9f8e7917a8 Merge pull request #7657 from Chocobo1/upnp
Disable upnp & nat-pmp on startup if disabled in options. Closes #7338.
2017-10-31 18:24:28 +02:00
Chocobo1
1b652c882e Refactor
Add const
Use Qt5 connect syntax
2017-10-31 19:09:01 +08:00
Chocobo1
601234e492 Explicitly set UPnP state on start-up. Closes #7338.
libtorrent 1.1 enables upnp by default.
2017-10-31 19:08:58 +08:00
sledgehammer999
6c804edadf Change default settings for tracker/tier announces to mimick ìTorrent behavior. 2017-10-30 23:27:29 +02:00
sledgehammer999
3a5c0d9818 Allow to specify if announcing to all tiers is desired. 2017-10-30 23:27:28 +02:00
sledgehammer999
2194a05e60 Merge pull request #7652 from Chocobo1/aboutExtLink
Open links in browser. Closes #7651.
2017-10-30 18:06:34 +02:00
sledgehammer999
a89c1a8d9a Use new logo in the file icon. 2017-10-30 02:41:26 +02:00
sledgehammer999
86215f8483 Use new logo in the splash screen. 2017-10-30 02:41:25 +02:00
sledgehammer999
a1b01c1b40 Remove unused image. 2017-10-30 02:41:24 +02:00
sledgehammer999
09cb95d3da Use the SVG for the tray icon. 2017-10-30 02:41:23 +02:00
sledgehammer999
48d7bdee0e Change qbittorrent logo. Issue #6467. 2017-10-30 02:41:22 +02:00
sledgehammer999
5157fc201c Add Turkish translator in about page. 2017-10-30 00:32:44 +02:00
Chocobo1
492ea5bceb Open links in browser. Closes #7651. 2017-10-28 14:51:20 +08:00
Mike Tzou
e8cf351b6a Merge pull request #7643 from Chocobo1/email
Allow SMTP sender to be set. Closes #7575.
2017-10-27 12:52:35 +08:00
Chocobo1
fc0628d35b Allow SMTP sender to be set. Closes #7575. 2017-10-26 17:57:32 +08:00
Mike Tzou
1f7391737e Merge pull request #7445 from Chocobo1/fixAddTorrent
Disable processing socket events in findIncompleteFiles()
2017-10-25 23:00:35 +08:00
Mike Tzou
acdb7a27dc Merge pull request #7638 from Chocobo1/msg
[WebUI] Improve log messages
2017-10-24 20:19:12 +08:00
Eugene Shalygin
1fed324f91 Add option to tune download history list length. Closes #4043. 2017-10-24 12:56:05 +02:00
Eugene Shalygin
e4771ba508 Add maxVisibleItems combo box property to FileSystemPathComboEdit. 2017-10-24 12:56:04 +02:00
sledgehammer999
6a36a3b1d9 Run lupdate again. 2017-10-24 03:34:49 +03:00
sledgehammer999
2956b28a32 Mention more translators in the about page after their request. 2017-10-24 03:32:57 +03:00
sledgehammer999
50471ec8c8 String fixes and optimizations mentioned by translators on Transifex. 2017-10-24 03:32:56 +03:00
sledgehammer999
3aa9ff5fba Sync translations from Transifex and run lupdate. 2017-10-24 01:28:31 +03:00
Mike Tzou
b6be5afb89 Merge pull request #7584 from Chocobo1/refactor
[WebAPI] Refactor
2017-10-23 19:36:28 +08:00
Chocobo1
157b809e21 [WebUI] Improve log messages 2017-10-23 16:45:41 +08:00
Mike Tzou
f74e2b0130 Merge pull request #7631 from Chocobo1/webUIaddr
Reinitialize webUI server when "IP address" setting changed
2017-10-23 14:11:50 +08:00
sledgehammer999
c887a162ba Fix row height/width in webui for country flags.
Patch by Chocobo1.
2017-10-23 01:23:54 +03:00
sledgehammer999
52df71ad3a Use svg icons for the country flags.
Closes #6223.
2017-10-23 01:23:45 +03:00
Chocobo1
d6ddc90199 Reinitialize webUI server when "IP address" setting changed
An app restart won't be necessary from now on.
2017-10-22 14:42:51 +08:00
Mike Tzou
9600e7f5ad Merge pull request #7573 from fmatthew5876/config_webui_ip
Add WebUi\Address config option
2017-10-22 14:18:08 +08:00
Chocobo1
f3603d05e7 Disable processing events when adding torrents. Closes #7436.
webUI connection timeout & deletion might occur while
doing processEvents() and will result in use-after-free segfault.
2017-10-22 13:54:03 +08:00
Matthew Fioravante
8cd243b06b Add WebUi\Address config option 2017-10-21 09:32:30 -04:00
Mike Tzou
1da3437a4a Merge pull request #7603 from Chocobo1/debugMsg
[WebUI]: Print error messages upon receiving invalid header fields
2017-10-21 01:10:25 +08:00
Vladimir Golovnev
c72fb92318 Merge pull request #7529 from dzmat/speedwidget_qtconcurrent_removal
Excess QtConcurrent usage removal
2017-10-20 10:32:27 +03:00
sledgehammer999
954448863e Merge pull request #7599 from scootergrisen/patch-1
Add me for danish
2017-10-19 01:50:35 +03:00
sledgehammer999
eec6009398 Merge pull request #7583 from LordNyriox/status-icons
Invert Framing for Torrent Status Icons
2017-10-19 01:45:22 +03:00
Chocobo1
ce362f0e5e WebAPI refactor: utilize parseBool() function
Coding style cleanup
Rename variable
Return const reference
Add const
2017-10-18 22:27:59 +08:00
Chocobo1
4940a77d12 [WebUI]: Print error messages upon receiving invalid header fields 2017-10-18 20:11:53 +08:00
sledgehammer999
4e77e01a67 Generate pngs using svgexport and optimize using PNGGauntlet. 2017-10-17 19:40:46 +03:00
sledgehammer999
5acdcb6c09 Optimize and prettify the svg source using svgo. 2017-10-17 19:32:34 +03:00
scootergrisen
8400d855de Add me for danish 2017-10-16 22:14:10 +02:00
Mike Tzou
bd07cb91bb Merge pull request #7571 from Chocobo1/webui_download
[WebAPI] Add parameters for /command/download & /command/upload
2017-10-15 20:32:14 +08:00
LordNyriox
d7e0a9b1ad Invert Framing for Torrent Status Icons
Also recolor the icons to match the text-color used for the torrent-status as well. 
Optimized using SVGOMG [<https://jakearchibald.github.io/svgomg/>].
2017-10-13 13:41:42 -04:00
Mike Tzou
dc600d47ec Merge pull request #7570 from Chocobo1/webui_fileIdx
[WebAPI] Add file-to-piece-index mappings in /query/propertiesFiles command
2017-10-14 01:05:00 +08:00
sledgehammer999
0d3952eef5 Sync translations from Transifex and run lupdate. 2017-10-13 03:56:57 +03:00
TheNicker
30a4ce40b9 Fixed blurry text under Windows by setting DPI awareness to default 2017-10-12 22:23:02 +03:00
dzmat
9d0ab0ae5f speedwidget class: excess QtConcurent usage removal 2017-10-12 20:59:13 +07:00
Chocobo1
e78d8b9fcc Convert tab into whitespaces 2017-10-11 20:27:19 +08:00
Chocobo1
f350977cb4 WebUI: add optional parameters for /command/download & /command/upload
Specifically:
torrent name: string
download limit, upload limit: number in bytes, default: -1 (unlimited)
sequential download, first last piece prio: boolean true/false, default: false
2017-10-11 20:25:11 +08:00
Eugene Shalygin
7a652c0a8c Merge pull request #7566 from evsh/themes-cbc
Themes part 1
2017-10-11 10:34:56 +02:00
Chocobo1
a652baadb5 Add file-to-piece-index mappings in /query/propertiesFiles command
Also do the following cleanups:
  Use string constant QB_EXT
  Remove redundant variable
  Add const
2017-10-11 16:24:29 +08:00
Chocobo1
66b86888fc Add uploadLimit, downloadLimit fields to AddTorrentData & AddTorrentParams 2017-10-11 16:23:58 +08:00
Mike Tzou
e07501252c Merge pull request #7549 from fmatthew5876/master
Report TCPServer errorString() if webui fails to listen to port
2017-10-11 16:22:52 +08:00
Mike Tzou
2977ba9ec2 Merge pull request #7563 from Chocobo1/delkey
Fix delete key has no effect due to "Ambiguous shortcut overload"
2017-10-11 16:15:55 +08:00
Eugene Shalygin
db35bb54e1 Make BitTorrent::TorrentState strongly-typed enum
This is needed to forward declare this type and pass it by value.

Conversion from/to QVariant are hanled via Q_DECLARE_METATYPE, while
TorrentState::toString() function was used in webui only and as such is
moved there.
2017-10-10 21:28:57 +02:00
Tim Delaney
19bb6f5fe0 Follow project coding style. Issue #2192.
--HG--
branch : magao-dev
2017-10-10 21:28:56 +02:00
Chocobo1
aab752dd2e Fix delete key has no effect due to "Ambiguous shortcut overload"
We want to show the accelerator key in the menu but without hitting
the ambiguous overload error.
Fixup of 1378245a63
2017-10-10 14:43:05 +08:00
Eugene Shalygin
8c75fdcb4c Merge pull request #7558 from evsh/uncrustify
Update uncrustify config
2017-10-09 20:04:37 +02:00
sledgehammer999
df03b69151 Merge pull request #7502 from sledgehammer999/optimize_img
Image housekeeping
2017-10-09 18:16:38 +03:00
sledgehammer999
aca7a851bb Optimize SVGs.
Used svgo with commands --pretty --indent=2 --multipass.
2017-10-09 18:15:41 +03:00
sledgehammer999
e9caefdfce Optimize PNGs.
Using PNGGauntlet.
2017-10-09 18:15:40 +03:00
sledgehammer999
16ac20b594 Remove unused image. Possibly leftover from dropping Qt4. 2017-10-09 18:15:39 +03:00
sledgehammer999
a3e071b734 Merge pull request #7562 from sledgehammer999/drop_os2
Drop OS/2 support.
2017-10-09 18:14:11 +03:00
sledgehammer999
5d3b9d2f22 Drop OS/2 support. 2017-10-09 18:11:14 +03:00
sledgehammer999
27a7e86599 Merge pull request #7561 from sledgehammer999/native_path
Show new paths in native form.
2017-10-09 18:09:55 +03:00
sledgehammer999
d93d0ab19e Show new paths in native form. 2017-10-09 17:42:42 +03:00
Eugene Shalygin
776627eee9 Update uncrustify config 2017-10-09 16:42:34 +02:00
Chocobo1
5185eeb7ef Die gracefully when failed to initialize web server with qbt-nox 2017-10-09 13:50:01 +08:00
Vladimir Golovnev
083bc71315 Merge pull request #7396 from thalieht/updownratio
Properly pre-select the selected torrent's current ratio limiting options in UpDownRatioDlg
2017-10-08 21:06:55 +03:00
Eugene Shalygin
b1b931922e Merge pull request #7555 from evsh/fix-qtsingleapplication-cmake
cmake: do not use Qt5Widgets when locating QtSingleApplication. Closes #7551.
2017-10-08 09:28:00 +02:00
thalieht
0717f0d60c Save ratio limits as int instead of string 2017-10-08 10:22:40 +03:00
thalieht
525fdd6c2b Coding style, use nullptr and other minor things 2017-10-08 10:20:54 +03:00
thalieht
f27e75e8fa Properly pre-select the selected torrent's current ratio limiting options in UpDownRatioDlg dialogs. Fixes #7352 2017-10-08 10:20:38 +03:00
Eugene Shalygin
0ad5290389 cmake: do not use Qt5Widgets when locating QtSingleApplication. Closes #7551.
This fixes cmake builds with GUI disabled and system
QtSingleApplication. We rely on Qt5::Core instead of Qt5::Widgets.
2017-10-07 21:48:52 +02:00
Mike Tzou
7895afb8e9 Merge pull request #7542 from Chocobo1/wordbreak
Set QTextOption::NoWrap property in "Download from URLs" dialog
2017-10-07 13:40:41 +08:00
Mike Tzou
2626378dfd Merge pull request #7545 from Kolcha/del-shortcut
added keyboard shortcut to delete torrent. closes #7508
2017-10-07 13:38:05 +08:00
Nick Korotysh
1378245a63 show delete accelerator key in menu. closes #7508 2017-10-06 14:51:19 +03:00
Matthew Fioravante
05c92e652c Report TCPServer errorString() if webui fails to listen to port 2017-10-06 05:54:52 +00:00
Mike Tzou
6c0dd81528 Merge pull request #7541 from Kolcha/sort-plugins
allow search plugins sorting. closes #7526
2017-10-05 16:16:27 +08:00
Vladimir Golovnev
bd1d775ca9 Merge pull request #7522 from glassez/winconf
Reformat Windows build configuration files
2017-10-04 09:18:27 +03:00
Chocobo1
b3207b8144 Set QTextOption::NoWrap property in "Download from URLs" dialog
This makes it easier to put each magnet link on its own line
2017-10-03 22:45:18 +08:00
Nick Korotysh
4c8dd0ca9d allow search plugins sorting. closes #7526 2017-10-03 16:57:09 +03:00
Vladimir Golovnev (Glassez)
61d9fcd753 Reformat Windows build configuration files 2017-10-02 18:57:54 +03:00
Vladimir Golovnev
c5607f07c8 Merge pull request #7514 from dzmat/members_names_clarification
members names clarification
2017-09-30 09:36:24 +03:00
Mike Tzou
49802be7d4 Merge pull request #7499 from Chocobo1/fixTimeActive
Fix "Time active" field in transfer list
2017-09-30 11:36:57 +08:00
dzmat
3d932b1cce transferlistwidget class members names clarification 2017-09-29 19:55:30 +07:00
Vladimir Golovnev
66a6674cbc Merge pull request #7490 from glassez/category-path
Allow to set explicit save path for Category from GUI
2017-09-29 14:25:40 +03:00
Chocobo1
2d12c126eb Fix "Time active" field in transfer list
The "Time active" field was broken, displaying nothing when in
downloading state.
Also change type to int to match the return
types of TorrentHandle::activeTime() & TorrentHandle::seedingTime()
2017-09-28 16:54:46 +08:00
Vladimir Golovnev (Glassez)
3ec992474d Implement TorrentCategoryDialog class 2017-09-27 21:25:22 +03:00
Mike Tzou
15babe97ea Merge pull request #7500 from Chocobo1/mergeName
Show torrent name in "add new torrent" dialog on merging trackers
2017-09-27 21:04:51 +08:00
Mike Tzou
308fd3dcac Merge pull request #7477 from silverqx/options-dlg-persist-size
Center Options dialog when showed
2017-09-27 20:35:04 +08:00
Mike Tzou
e8250104c8 Merge pull request #7429 from silverqx/preview-modal-ux
Improved ux in preview dialog
2017-09-27 20:33:31 +08:00
Mike Tzou
796cd674d7 Merge pull request #7495 from silverqx/options-save-state-cancel
Options dialog save windows state in destructor
2017-09-26 15:30:17 +08:00
Mike Tzou
1fe9272a8f Merge pull request #7480 from Chocobo1/lastAct
Fix last activity calculation
2017-09-26 15:17:35 +08:00
sledgehammer999
c285de87d4 Don't use margins in FileSystemPathEdit widgets.
Introduced in 30081e0.
2017-09-26 04:06:32 +03:00
Chocobo1
058062d586 Show torrent name in "add new torrent" dialog on merging trackers 2017-09-26 01:34:24 +08:00
silver
3b4fd35dde Persist size and treeview header state in preview dialog
- renamed variable m_headerState
 - renamed PreviewSelect class to PreviewSelectDialog
 - renamed previewselect files to previewselectdialog
2017-09-25 16:33:17 +02:00
silver
2a6bd5de35 Options dialog save windows state in destructor 2017-09-24 22:56:14 +02:00
silver
64e539fcfb Center Options dialog when showed 2017-09-24 19:40:48 +02:00
Mike Tzou
de6ca29dcd Merge pull request #7482 from Chocobo1/update
Update qtsingleapplication
2017-09-24 22:39:59 +08:00
silver
ef63202be2 Follow project coding style. Issue #2192. 2017-09-24 16:18:39 +02:00
Chocobo1
62493c672d Fix last activity calculation. Closes #7461
`time_since_upload` & `time_since_download` can be -1, so filter them out
2017-09-24 21:06:34 +08:00
Vladimir Golovnev (Glassez)
8c58a69be6 Use Qt5 connect() style in CategoryFilterWidget 2017-09-24 16:01:39 +03:00
Mike Tzou
2eb3ec1a6e Merge pull request #7463 from Piccirello/fix-priority-context-menu-placement
Reposition "Priority" menu option in WebUI to match gui (closes #7072)
2017-09-24 10:28:05 +08:00
Chocobo1
e3da17caa8 Update qtsingleapplication
To upstream version a8dda66d7738cde9042b87db27993f710ae3eeeb
2017-09-23 00:27:00 +08:00
sledgehammer999
c7e35a1801 Merge pull request #7451 from sledgehammer999/report_delete_fail
Better reporting of success/failure of torrent and file deletion.
2017-09-21 23:36:53 +03:00
Mike Tzou
83c6b22d30 Merge pull request #7454 from Chocobo1/buttonbox
Replace dialog ok-cancel buttons with QDialogButtonBox
2017-09-21 22:45:45 +08:00
Mike Tzou
fc5d49bf9a Merge pull request #7460 from Chocobo1/tribool
Use smaller data type for TriStateBool
2017-09-21 20:17:34 +08:00
Mike Tzou
473ed45b3f Merge pull request #7468 from Chocobo1/apiwipeass
WebAPI: fix root_folder default behavior
2017-09-21 20:17:14 +08:00
Chocobo1
c5ddbcfb5b WebAPI: fix addPaused wrong default behavior
Add helper function
Sort include header
2017-09-19 17:26:01 +08:00
Chocobo1
72b0ba36ae Refactor
Merge statements
Use case-insensitive contains()
Add const
Use value(), this avoids inserting empty values.
Use range based for loop
2017-09-19 14:16:39 +08:00
Chocobo1
b107c0671d WebAPI: fix root_folder default behavior
Bug was introduced in
6b33db3ae3
2017-09-19 13:07:50 +08:00
sledgehammer999
b9e233601d Merge pull request #7446 from Chocobo1/utpOnly
Add uTP only mode option
2017-09-19 01:45:58 +03:00
sledgehammer999
8f16388915 Better reporting of success/failure of torrent and file deletion. 2017-09-17 23:04:12 +03:00
Chocobo1
d143929454 Use smaller data type for TriStateBool 2017-09-18 02:21:47 +08:00
Chocobo1
45a0c5558a Add comboBox for selecting BitTorrent protocol. Closes #6316.
Use unicode string C_UTP in place of "uTP"
2017-09-18 01:52:57 +08:00
Thomas Piccirello
b6596f9957 Reposition "Priority" menu option in WebUI to match gui (closes #7072) 2017-09-17 05:42:46 -04:00
Chocobo1
7059b947e8 Replace dialog ok-cancel buttons with QDialogButtonBox
This PR will make button order follow the platform default.
For example: windows use: OK, Cancel; linux use: Cancel, OK.
2017-09-15 18:52:21 +08:00
Mike Tzou
4eafe7a2c8 Merge pull request #7426 from thalieht/webuiStripFolder
Add the create root folder option when adding a torrent in WebUI
2017-09-15 13:01:48 +08:00
sledgehammer999
d165da9c6c Merge pull request #7417 from Chocobo1/fix
Fix default value of m_diskCacheSize
2017-09-14 16:13:12 +03:00
Chocobo1
a341b793e4 Rename option
The previous "Disk write cache size" is not accurate since it is also being used
for read cache, so rename it to "Disk cache".
2017-09-14 20:32:10 +08:00
Chocobo1
a1d46a278b Change default value of m_diskCacheSize. New default is 64 MB. 2017-09-14 20:32:04 +08:00
Eugene Shalygin
c6cf3a98a4 Merge pull request #7428 from evsh/allow-all-tray-icons
Allow custom tray icons when system icon theme is used. Closes #7403.
2017-09-12 11:09:44 +02:00
Mike Tzou
56887efdf5 Merge pull request #7422 from Chocobo1/delete
Fix dereferencing freed pointer
2017-09-12 02:14:08 +08:00
Eugene Shalygin
4ec193042f Allow custom tray icons when system icon theme is used. Closes #7403. 2017-09-11 16:18:10 +02:00
thalieht
6b33db3ae3 Create root folder option when adding a torrent in WebUI 2017-09-11 16:56:33 +03:00
Chocobo1
855772ae5a Fix dereferencing freed pointer. Closes #7420.
The torrent is removed from session after `deleteTorrent()`
yet we still invoke `torrent->name()`, thus result in crash.
2017-09-11 13:16:34 +08:00
sledgehammer999
467ba380b2 Travis: Update libtorrent bottle with boost 1.65+ fix. 2017-09-11 01:20:02 +03:00
Mike Tzou
93ed8e98c1 Merge pull request #7402 from comradekingu/patch-2
Spelling: HTTP/HTTPS
2017-09-08 20:12:27 +08:00
Allan Nordhøy
5c18db240c Spelling: HTTP/HTTPS 2017-09-08 11:22:25 +02:00
sledgehammer999
915ec81f83 Merge pull request #7385 from Chocobo1/coding_style
Update coding guidelines (proposal)
2017-09-08 02:20:15 +03:00
sledgehammer999
8c545d2947 Update Changelog. 2017-09-08 00:54:08 +03:00
sledgehammer999
cbfbae1409 Bump to 3.4.0beta2 2017-09-06 01:46:27 +03:00
sledgehammer999
728b7dec3e Sync translations from Transifex and run lupdate. 2017-09-06 01:44:47 +03:00
sledgehammer999
7b5730723d Fix file list expansion on singlefile torrent with folder. 2017-09-06 01:11:49 +03:00
Chocobo1
71844e13af Update coding guidelines
Add ranged-based for loop example
Add class inheritance example
Add Prefer pre-increment, pre-decrement operators section
Fix space after comment keyword
Fix header include order
[skip ci]
2017-09-05 14:24:52 +08:00
Vladimir Golovnev
c6dfdf9135 Fix CategoryFilterWidget::sizeHint() 2017-09-01 16:11:21 +03:00
Vladimir Golovnev
4cd3a37b4a Fix suggest_mode setting
Actually suggest_mode is of type int.
2017-08-31 22:02:52 +03:00
Mike Tzou
5efb4b522f Merge pull request #7358 from Chocobo1/qstringbuilder
Improve compile defines
2017-08-29 16:42:09 +08:00
Chocobo1
64d5e329c0 Sort the resource lists
Update RCC header
2017-08-29 13:39:02 +08:00
Chocobo1
ee9caa4305 Cleanup src.pro 2017-08-29 13:39:02 +08:00
Chocobo1
39b56ac598 Move NOMINMAX define 2017-08-29 13:39:01 +08:00
Chocobo1
551ffb88ab Define QT_USE_QSTRINGBUILDER.
The old defines are deprecated.
QT_USE_QSTRINGBUILDER also supports QByteArray which we use extensively
in WebUI.
2017-08-29 13:37:29 +08:00
Mike Tzou
698bd431e6 Merge pull request #7340 from Chocobo1/leak
Fix leak & use Qt5 connect syntax
2017-08-24 23:08:01 +08:00
Chocobo1
ccd3b305c2 Use Qt5 connect syntax 2017-08-24 20:15:25 +08:00
Chocobo1
b47c90f0e0 Setup parent ownership to avoid memory leak 2017-08-24 20:01:39 +08:00
Mike Tzou
1afd5f70dd Merge pull request #3235 from Chocobo1/session_option
libtorrent session options
2017-08-24 11:35:15 +08:00
Vladimir Golovnev
4cb304def8 Merge pull request #7334 from qbittorrent/fix-7333
Fix RSS Downloader fails to rename rule. Closes #7333
2017-08-23 22:21:57 +04:00
Vladimir Golovnev
f2af308e6d Fix RSS Downloader fails to rename rule
Closes #7333.
2017-08-23 16:45:14 +03:00
Vladimir Golovnev
a6868e2b25 Merge pull request #7313 from glassez/sched
Don't disable scheduler when manually switching speed limits. Closes #7306
2017-08-23 17:05:28 +04:00
Vladimir Golovnev
7a96ddccc6 Merge pull request #7332 from qbittorrent/fix-7327
Skip user input events when adding torrent. Closes #7327
2017-08-23 13:10:36 +04:00
Vladimir Golovnev
bda5be8e4c Skip user input events when adding torrent
Closes #7327.
2017-08-23 11:14:34 +03:00
Vladimir Golovnev (qlassez)
93f5d4058d Improve BandwidthScheduler
Don't disable scheduler when manually switching speed limits.
Closes #7306.
2017-08-23 09:48:31 +03:00
Eugene Shalygin
98dd2be673 Merge pull request #7324 from Evengard/vpntunnels-patch
Disable skipping of loopback interfaces in settings tab
2017-08-22 14:03:11 +02:00
Evengard
ea7c1ace2a Disable skipping of loopback interfaces
This fixes the absence of VPN tunnel interfaces under Windows and works around the QTBUG-32349
Fixes #7291
2017-08-22 00:00:20 +03:00
Chocobo1
2da2054ccf Use enums for settings 2017-08-21 20:30:26 +08:00
Chocobo1
3f5fa0025d Add sanitize helper clampValue() 2017-08-21 16:50:56 +08:00
Chocobo1
f4be165767 Add send_buffer_watermark send_buffer_low_watermark
send_buffer_watermark_factor knobs
2017-08-21 16:50:14 +08:00
Chocobo1
55a1628a5e Add suggest_mode knob 2017-08-21 16:50:14 +08:00
Chocobo1
6c32f6beff Add choking_algorithm & seed_choking_algorithm knob 2017-08-21 16:49:45 +08:00
Chocobo1
21ec8fe53f Add allow_multiple_connections_per_ip knob. Closes #5884. 2017-08-21 16:48:38 +08:00
Chocobo1
4185209036 Add mixed_mode_algorithm knob 2017-08-21 16:48:38 +08:00
Chocobo1
6150e0c56b Add guided_read_cache knob
cleanup header include order
2017-08-21 16:48:37 +08:00
sledgehammer999
42b811e578 Merge pull request #7316 from evsh/plugin-version-crash-fix
Fix ignoring of incorrect version strings in search plugins. Closes #7101
2017-08-21 00:18:19 +03:00
Eugene Shalygin
ef1597e45b Fix ignoring of incorrect version strings in search plugins. Closes #7101.
Printing of Version with all components set to zero was segfaulting due
to underflow in array index. Also add log message for such plugins.
2017-08-20 22:44:20 +02:00
sledgehammer999
1e677c6728 Merge pull request #7315 from Chocobo1/hostheader
WebAPI: fix validating wrong header field. Closes #7311.
2017-08-20 20:55:20 +03:00
Chocobo1
9ef1e32327 WebAPI: fix validating wrong header field. Closes #7311.
X-Forwarded-Host is a foreign proxy setting, it isn't the same as
qbt's local setting and thus it makes no sense to verify it.
2017-08-20 22:40:19 +08:00
sledgehammer999
173f6fd75d Check for Qt5Svg when configuring. 2017-08-18 23:00:53 +03:00
sledgehammer999
bbe7821483 Merge pull request #7300 from Chocobo1/cleanup
Minor cleanup
2017-08-18 21:08:27 +03:00
Chocobo1
65ca490b64 Wrap class & functions in anonymous namespace
Rename vars
Cleanup class interfaces
Pass by reference whenever possible
2017-08-19 01:57:11 +08:00
sledgehammer999
907f222a73 Switch settings to signed int because libtorrent expects them that way. 2017-08-18 20:21:39 +03:00
sledgehammer999
b649d61e8b Options to better memory control by libtorrent. Closes #7029. 2017-08-18 20:21:37 +03:00
sledgehammer999
ea793368a9 Merge pull request #7279 from evsh/file-icon-cache
Use pixmap cache for file icons on Mac OS and Windows. Closes #7264.
2017-08-18 19:31:19 +03:00
Eugene Shalygin
3331526865 Use pixmap cache for file icons on Mac OS and Windows. Closes #7264. 2017-08-15 22:25:03 +02:00
sledgehammer999
cccb22f0e3 Merge pull request #7282 from glassez/fsutils
Improve utils/fs.* and fix coding style
2017-08-15 22:47:39 +03:00
sledgehammer999
4f0d9605fe Merge pull request #7281 from vit9696/notifications2
Fix notification display on macOS
2017-08-15 22:34:35 +03:00
sledgehammer999
19fcd3dad6 Fix broken build. 2017-08-15 22:12:16 +03:00
vit9696
eb8ff91c5d Fix notification display on macOS 2017-08-15 21:16:37 +03:00
sledgehammer999
f98edcab5c Merge pull request #7272 from vit9696/patch-1
Fix macOS window restoration after using hide icon
2017-08-15 21:13:58 +03:00
sledgehammer999
e5ea3bd707 Merge pull request #7253 from briankendall/fix_objc_errors
Fixed mac specific compiler errors and cleaned up Objective C code. Closes #7252
2017-08-15 21:06:09 +03:00
sledgehammer999
c87c1d2359 Use simpler ifdef style. 2017-08-15 21:01:55 +03:00
sledgehammer999
7bb9c69c08 Fix connection problems when a specific interface/ip is configured.
Closes #7235.
Bug related to #7099 and Qt.
2017-08-15 19:33:45 +03:00
sledgehammer999
25eb2edb86 Merge pull request #7273 from vit9696/borders
Unify preference window borders across the tabs
2017-08-15 18:14:11 +03:00
sledgehammer999
c2a8970109 Fix calculation of 'Average time in queue' stat under libtorrent 1.1.x 2017-08-15 17:38:41 +03:00
Vladimir Golovnev (qlassez)
59c14801cc Improve utils/fs.* and fix coding style 2017-08-15 16:17:57 +03:00
Mike Tzou
ea749bb052 Merge pull request #7276 from Chocobo1/pr_7063
Auto torrent management from webui context menu
2017-08-15 11:47:21 +08:00
vit9696
1cb69c9b43 Unify preference window borders across the tabs 2017-08-14 20:10:28 +03:00
sledgehammer999
89d8a2fe72 Merge pull request #7251 from Chocobo1/spacing
Add space between widgets in left side panel. Closes #7224.
2017-08-14 19:11:54 +03:00
Thomas Piccirello
4846b0ec28 Use single quotes for char.
Use case insensitive compare.
Swap conditionals
2017-08-14 23:15:03 +08:00
Thomas Piccirello
771033a449 Add auto torrent management to webui context menu (addresses #6815) 2017-08-14 23:14:46 +08:00
vit9696
16d7301046 Fix macOS window restoration after using hide icon 2017-08-14 12:38:42 +03:00
sledgehammer999
e2893fe68f Error out in configure script if the proper Qt/qmake version isn't found.
Closes #7250.
Partially reverts e64bb1de8c.
2017-08-13 20:29:53 +03:00
sledgehammer999
8d913d77dd Merge pull request #7266 from Chocobo1/coverity
Fix issues found by coverity scan
2017-08-13 20:10:04 +03:00
Mike Tzou
0522db3f19 Merge pull request #7061 from Piccirello/webui-rename-torrent
Rename torrent from webui context menu (addresses #6815)
2017-08-13 23:39:35 +08:00
Vladimir Golovnev
50cea9d912 Merge pull request #7268 from glassez/logging-strings
Use qUtf8Printable() for logging strings
2017-08-13 17:34:28 +04:00
Vladimir Golovnev (qlassez)
cff6a64e9f Use qUtf8Printable() for logging strings
qDebug(), qInfo(), qWarning(), qCritical(), qFatal() expect %s arguments
to be UTF-8 encoded, while qPrintable() converts to local 8-bit encoding.
Therefore qUtf8Printable() should be used for logging strings instead of
qPrintable().
2017-08-13 16:14:57 +03:00
Vladimir Golovnev
219a6b3ad1 Merge pull request #7267 from glassez/remove-temp
Don't remove shared temp folder
2017-08-13 17:00:40 +04:00
Thomas Piccirello
798c230634 Add option to rename torrent from WebUI
Addresses #6815.
2017-08-13 15:45:51 +03:00
Vladimir Golovnev (qlassez)
3801150a7a Don't remove shared temp folder
Don't remove shared temp folder when torrent finished and moved to
its "complete" folder. Only torrents with stripped root folder
have subfolder in temp folder so they should remove it.
2017-08-13 14:17:12 +03:00
Chocobo1
91b2b14ba5 Initialize variables
Remove unused variable
2017-08-13 15:28:36 +08:00
sledgehammer999
1b8cda7924 Follow project coding style. 2017-08-12 16:23:15 +03:00
sledgehammer999
31a4309077 Catch possible exceptions when parsing IPs. Closes #7249. 2017-08-12 16:23:14 +03:00
sledgehammer999
db3fd24cea Use dpiawareness=1 on Windows. Closes #5393. 2017-08-12 12:50:24 +03:00
Brian Kendall
62b956946f Fixed mac specific compiler errors and cleaned up Objective C code
Created new file src/gui/macutilities.mm, moved code from mainwindow.cpp and torrentcontentmodel.cpp that used the Objective C runtime into it and converted it to actual Objective C. Rewrote pixmapForExtension() so that it doesn't call into private Qt functions.
2017-08-11 20:51:16 -04:00
Chocobo1
04552f7921 Add space between widgets in left side panel. Closes #7224. 2017-08-11 21:37:33 +08:00
Vladimir Golovnev
9417105990 Merge pull request #7240 from glassez/fix-7226
Remove legacy RSS settings after converting. Closes #7226
2017-08-11 13:08:28 +04:00
sledgehammer999
593c24e5bd Merge pull request #7234 from thalieht/indentation
Remove indentation for category/tag filter widgets in all platforms
2017-08-11 11:25:24 +03:00
Vladimir Golovnev (qlassez)
7380bfa9e4 Remove legacy RSS settings after converting
Closes #7226.
2017-08-09 22:01:30 +03:00
sledgehammer999
6f0d16bca5 Merge pull request #7237 from Chocobo1/prefill_name
Prefill torrent name when creating a new torrent. Closes #7229.
2017-08-09 20:04:42 +03:00
Chocobo1
78dafc9cbe Prefill torrent name when creating a new torrent. Closes #7229. 2017-08-09 15:26:05 +08:00
thalieht
2da5800665 Remove indentation for category/tag filter widgets in all platforms 2017-08-08 23:43:23 +03:00
sledgehammer999
6270433237 Fix explicit Torrent Management Mode in Add New Torrent dialog. Closes #5602. 2017-08-07 20:01:30 +03:00
sledgehammer999
8214d25f9f Update Changelog. 2017-08-07 08:53:57 +03:00
sledgehammer999
df7565c9e2 Bump to 3.4.0beta 2017-08-07 08:39:50 +03:00
sledgehammer999
d48218bfe9 Sync translations from Transifex and run lupdate. 2017-08-07 08:34:40 +03:00
sledgehammer999
db653cbdac Merge pull request #7214 from Chocobo1/fixups
WebUI fixups
2017-08-07 08:11:32 +03:00
sledgehammer999
766f70c81a Merge pull request #7118 from vit9696/master
Fixed file type icons not displaying on macOS
2017-08-07 08:10:58 +03:00
Chocobo1
3e9311b096 Correctly handle translation
Fixup of 07a85a1018
2017-08-06 17:20:01 +08:00
Chocobo1
1bfb8d35cd Move "Copy hash" menu item above "Copy magnet link"
Fix wrong "Copy hash" icon used in webUI
Fixup of 145641ac41
2017-08-06 17:19:55 +08:00
Tom Piccirello
07a85a1018 Set torrent location from webui context menu (addresses #6815) (#7062)
* Add option to set torrent location from webui context menu (addresses #6815)

* Update debug messages

* Use logger

* Remove redundant curly braces

* Remove message

* Use log message from transferlistwidget

* Use QDir

* Remove unused import

* Check if newLocation is an empty string
2017-08-06 17:04:39 +08:00
Tom Piccirello
145641ac41 Add copy options to webui context menu (addresses #6815) (#7036)
* Add copy options to webui context menu
Add Copy Hash to gui (closes #6964)

* Use switch statement

* Use camel case, switch from signal to qaction.

* Rename variable

* Change variable name
2017-08-06 16:35:12 +08:00
sledgehammer999
08aa827366 Fix some more strings. 2017-08-06 01:47:05 +03:00
sledgehammer999
4d8a939291 Merge pull request #7173 from comradekingu/patch-1
display, URLs, esc '
2017-08-06 01:46:03 +03:00
sledgehammer999
e1f514042f Merge pull request #7207 from glassez/move-torrent
Don't replace existing files when manually relocating torrent
2017-08-05 20:26:05 +03:00
Vladimir Golovnev (qlassez)
7d78457fe0 Don't replace existing files when relocating torrent 2017-08-05 20:17:44 +03:00
Vladimir Golovnev (qlassez)
f067b8b37c Don't remove shared temp folder 2017-08-05 19:53:23 +03:00
sledgehammer999
6043584305 Merge pull request #7176 from glassez/temp-folder
Don't create subfolder inside temp folder. Closes #5503
2017-08-04 20:47:49 +03:00
sledgehammer999
bb02ccd574 Merge pull request #7132 from vlakoff/FindProcDLL
Windows installer: also detect running process when it is 64-bit
2017-08-04 16:55:15 +03:00
Eugene Shalygin
64b250903f Merge pull request #7083 from tgregerson/tags
Improve tag selection context menu. Closes #7060
2017-08-03 21:06:08 +02:00
Tony Gregerson
c5e73219bf Improve checkbox interface for selecting tags in the context menu. Closes #7060 2017-08-02 19:27:00 -05:00
Vladimir Golovnev (Glassez)
5f47d3b021 Don't create subfolder inside temp folder 2017-07-29 18:04:23 +03:00
Vladimir Golovnev (Glassez)
d22b626a02 Fix temporary subfolder isn't deleted 2017-07-28 15:16:02 +03:00
Allan Nordhøy
af9c0cca23 display, URLs, esc ' 2017-07-28 02:42:35 +02:00
sledgehammer999
dcba10f01b Sync translations from Transifex and run lupdate. 2017-07-27 19:16:30 +03:00
Mike Tzou
5bc3b0138e Merge pull request #7110 from Chocobo1/plugin_signal
Fix crash when exiting qbt with search plugin update dialog open
2017-07-21 10:40:54 +08:00
vlakoff
a641c0bb2f Windows installer: also detect running process when it is 64-bit
Replacing FindProcDLL with a different one that can be found here:

http://forums.winamp.com/showthread.php?t=322583#post2777719
2017-07-20 19:33:19 +02:00
sledgehammer999
1aa3c69916 Merge pull request #7122 from vit9696/uifix
Fix main menu item location on macOS
2017-07-20 19:31:15 +03:00
Chocobo1
e7ee59c12f Specify context parameter in connect() 2017-07-20 13:26:36 +08:00
Chocobo1
24a69a9fe7 Fix crash when exiting qbt with search plugin dialog open
Avoid emitting signal in destructor
2017-07-20 13:26:36 +08:00
vit9696
7b4316ea8f Fix main menu item location on macOS 2017-07-19 23:48:42 +03:00
vit9696
6c3ab99e3c Fix file type icons not displaying on macOS 2017-07-19 21:37:38 +03:00
sledgehammer999
802cd89ec9 Bump API_VERSION and API_VERSION_MIN to 15. 2017-07-18 22:38:59 +03:00
sledgehammer999
aa1ddc0df2 Fix typo. 2017-07-18 03:32:06 +03:00
Tom Piccirello
11b44407af Add Status column to webui (addresses #6815) (#7032)
* Add Status column to webui (addresses #6815)
2017-07-17 14:26:52 +08:00
sledgehammer999
962e5a8f3d Merge pull request #7106 from Chocobo1/slots
Fix "No such slot" errors
2017-07-16 12:49:21 +03:00
Chocobo1
e73db85fad Use Qt5 connect syntax 2017-07-16 15:03:25 +08:00
Chocobo1
ec16525164 Fix "QObject::connect: No such slot" errors
Fixup of d25467d3e6
2017-07-16 15:03:25 +08:00
Chocobo1
1f9eb594e7 Trim whitespaces 2017-07-16 11:47:53 +08:00
sledgehammer999
c964f0c490 Merge pull request #6952 from vit9696/master
Various macOS UI improvements
2017-07-15 20:51:45 +03:00
vit9696
d25467d3e6 Various macOS UI improvements 2017-07-15 20:49:40 +03:00
sledgehammer999
b6ce109cdb Merge pull request #7103 from evsh/cmake
Install required plugins into bundle
2017-07-14 22:44:50 +03:00
Eugene Shalygin
c614c66535 Install required plugins into bundle
Install platform and svg plugins into bundle. Update dependencies in
Travis.
2017-07-14 17:42:02 +02:00
sledgehammer999
b3004ac28b Various fixes for Travis, macOS and cmake. 2017-07-14 18:29:55 +03:00
sledgehammer999
c4b9063767 Drop use of custom qt bottle for Travis and homebrew.
Patch for macdeployqt is included in the official homebrew formula.
2017-07-14 18:29:54 +03:00
Mike Tzou
a6bb642200 Merge pull request #7096 from Chocobo1/fix
[WebUI] Load the domain list at least once on startup
2017-07-13 17:34:35 +08:00
Eugene Shalygin
22ea0be917 Merge pull request #7099 from evsh/set-inet-outgoing
Set interface for outgoing traffic.
2017-07-13 11:13:07 +02:00
Eugene Shalygin
934133772e Set interface for outgoing traffic.
This sets interface for outgoing traffic to the same as for ingoing
(listetning) with libtorrent 1.1.x.
2017-07-12 21:28:00 +02:00
Chocobo1
07780b48c5 Load the domain list at least once on startup.
Fixup of 0532d546d7
2017-07-13 00:41:30 +08:00
Chocobo1
0532d546d7 Implement HTTP host header filtering
This filtering is required to defend against DNS rebinding attack.
2017-07-12 17:26:13 +03:00
Chocobo1
18651c8d01 Use Qt5 connect syntax 2017-07-12 17:26:11 +03:00
Chocobo1
55e038b165 Avoid modifing request headers 2017-07-12 17:26:05 +03:00
Eugene Shalygin
23616d5dd0 Merge pull request #7064 from evsh/cachesettingvalue-enum
Implement enum support in CachedSettingValue
2017-07-11 16:03:20 +02:00
Eugene Shalygin
3aff71020f Merge pull request #7087 from LordNyriox/patch-2
Create README for "qbt-theme"
2017-07-11 11:47:02 +02:00
Mike Tzou
f345d0f136 Merge pull request #7082 from Chocobo1/js
[WebUI] Fix value comparison
2017-07-11 17:23:32 +08:00
Eugene Shalygin
d397cf60fb Merge pull request #7065 from evsh/win-svg-tray-icon
Use SVG files for monochrome tray icons. Closes #6085.
2017-07-11 10:51:37 +02:00
LordNyriox
28f336f5bd Create README for "qbt-theme" 2017-07-10 08:56:48 -07:00
Chocobo1
be61e8f2fd Revert back to intended fallthrough
Partial revert a7f4ea8b18
2017-07-10 00:36:56 +08:00
Chocobo1
448d937c15 Fix value comparison. Closes #7081.
`category` could be 'undefined'.
Fixup of a7f4ea8b18.
2017-07-09 22:31:14 +08:00
sledgehammer999
3d970399d4 Update Travis to use the new macOS packages for qt and libtorrent. 2017-07-08 21:15:50 +03:00
Eugene Shalygin
228f82bcdc Merge pull request #6967 from thalieht/codingStyle
Coding style for several files
2017-07-06 18:17:02 +02:00
sledgehammer999
aaf78f09c2 Update Changelog. 2017-07-06 01:08:39 +03:00
sledgehammer999
7a478424cc Revert "Drop python2 support.". Closes #7005.
This reverts commit 7d030b4cd9.
2017-07-06 01:07:09 +03:00
Eugene Shalygin
e66dba6a2d Use SVG files for monochrome tray icons. Closes #6085. 2017-07-05 22:00:02 +02:00
sledgehammer999
247d07edb9 Update Changelog. 2017-07-05 18:17:48 +03:00
sledgehammer999
29945f5aa7 Sync changelog entries from other branches. 2017-07-05 18:17:48 +03:00
Eugene Shalygin
ff710ebd2c fixup! Implement enum support in CachedSettingValue 2017-07-05 13:41:08 +02:00
Eugene Shalygin
a22d2f0139 Implement enum support in CachedSettingValue
Enums are stored as strings, that improves configuration file
readability and maintainability. String values are obtained via
QMetaEnum, and since with Qt 5.5 QMetaEnum::fromType() includes a
static_assert, this has to be a safe method.
2017-07-05 12:41:58 +02:00
Mike Tzou
db2dec3d28 Merge pull request #7031 from Piccirello/fix-js-errors
Fix various javascript errors and follow best practices
2017-07-05 15:03:09 +08:00
Mike Tzou
726e9f0774 Merge pull request #7030 from Piccirello/failed-attempts-auth
Skip webui username/password check for active sessions
2017-07-05 15:02:24 +08:00
sledgehammer999
8e6df572a8 Merge pull request #6156 from evsh/file-icons
Use system file type specific icons in contents tab
2017-07-03 18:06:22 +03:00
Eugene Shalygin
57493c5556 Add QFileIconProvider implementation using mime database
If built-in QFileIconProvider does not seem to work, use custom
implementation which queries mime database.
2017-07-03 16:49:19 +02:00
Eugene Shalygin
30bf6e958f Use system file type specific icons in contents tab
The icon is determined via QFileIconProvider using filename extension only.
2017-07-03 16:49:14 +02:00
sledgehammer999
f2e771ddc0 Merge pull request #7054 from evsh/fix-file-widget
Do not show completion when text is not being edited
2017-07-03 15:37:46 +03:00
Eugene Shalygin
6b65f8add8 Do not show completion when text is not being edited 2017-07-03 12:57:02 +02:00
Eugene Shalygin
8318f72a9e Follow project coding style. Issue #2192. 2017-07-03 11:42:30 +02:00
Eugene Shalygin
59bbf2c6c6 Merge pull request #7053 from evsh/cmake
Fix build.
2017-07-03 11:33:06 +02:00
Eugene Shalygin
11f5738d99 Fix build. 2017-07-03 10:36:52 +02:00
Eugene Shalygin
62be2d7400 cmake: fix build 2017-07-03 10:36:42 +02:00
sledgehammer999
7f37b80801 Switch appveyor to msvc2017. 2017-07-03 02:02:45 +03:00
sledgehammer999
2d119c3e9d Leave a comment about boost DEFINE and RC_1_1. Issues #7050 #6761. 2017-07-02 20:47:01 +03:00
sledgehammer999
b97d098a85 Merge pull request #7034 from scootergrisen/patch-1
Added danish translation
2017-07-01 17:33:33 +03:00
scootergrisen
6dccab5797 Added danish translation 2017-07-01 14:57:20 +02:00
Mike Tzou
8150805312 Merge pull request #6806 from Anton-Latukha/master
Work on Systemd service unit
2017-07-01 17:02:09 +08:00
Thomas Piccirello
a7f4ea8b18 Fix javascript errors and follow best practices 2017-07-01 03:28:35 -04:00
Thomas Piccirello
cd5a55d711 Skip username/password check for active sessions (closes #6860) 2017-07-01 03:26:15 -04:00
Mike Tzou
aa947ee966 Merge pull request #7023 from Chocobo1/msvc_stack
Raise total stack size on Windows
2017-07-01 12:50:13 +08:00
thalieht
91f528bc96 Fix coding style for several files
trackerlist
autoexpandabledialog
previewselect
shutdownconfirmdlg
torrentcontentfiltermodel
torrentcontenttreeview
peerlistsortmodel.h
2017-06-30 23:44:12 +03:00
Chocobo1
53017d5cde Separate "Release mode" linker options 2017-06-30 23:53:53 +08:00
Chocobo1
741d87cb91 Raise total stack size on Windows to 8 MB. Closes #7021.
MSVC default was 1 MB.
2017-06-30 23:43:29 +08:00
Vladimir Golovnev
4d28f8f48d Fix RSS with normal links do not work (#7016)
Fix regression of RSS code redesign.
Closes #7003.
2017-06-30 11:16:40 +03:00
sledgehammer999
1a506ac582 Merge pull request #7002 from adem4ik/patch-1
Update russian.nsi
2017-06-27 20:39:11 +03:00
Andrei Stepanov
13a8c84bbd Update russian.nsi 2017-06-27 17:49:58 +04:00
Vladimir Golovnev
3181469d87 Merge pull request #6911 from tgregerson/tags
Add a Tags system to the GUI to expand torrent organization / filtering options. Closes #13.
2017-06-26 15:57:27 +03:00
Tony Gregerson
467e516801 Add a Tags (multi-label) feature to the GUI. Closes #13.
See https://github.com/qbittorrent/qBittorrent/issues/13 for details.
2017-06-25 13:53:07 -05:00
sledgehammer999
70ae05c3de Pad shorter python versions. Closes #6877. 2017-06-25 17:20:51 +03:00
sledgehammer999
7d030b4cd9 Drop python2 support. 2017-06-25 17:20:50 +03:00
sledgehammer999
a77e1c9f36 Use qt5 connect style for searchengine, pluginselectdlg and searchwidget. 2017-06-22 18:54:30 +03:00
sledgehammer999
dee0b63cc5 Aggregate installed/updated plugin names and use a single messagebox to inform the user. 2017-06-22 18:54:29 +03:00
sledgehammer999
c2a2d306da Use alternative method for plugin favicon validity. Drop unnecessary code. 2017-06-22 18:54:28 +03:00
sledgehammer999
34c29b78f9 Update the backend when a new plugin favicon is downloaded. 2017-06-15 22:32:43 +03:00
sledgehammer999
8c98c8cb3f Put copyright warning message to the search plugin dialog. 2017-06-15 22:32:42 +03:00
sledgehammer999
fc543b9db6 Display instructions when no search plugin is installed. 2017-06-15 22:32:41 +03:00
sledgehammer999
793ed7148f Remove code that expects bundled search plugins. 2017-06-15 22:32:40 +03:00
sledgehammer999
de74f9298f Remove all search plugins from repo. 2017-06-15 22:32:39 +03:00
sledgehammer999
4ab117d946 Remove possible double check of the same thing. 2017-06-15 22:32:38 +03:00
sledgehammer999
d88f0f36e0 Merge pull request #6889 from Chocobo1/lowercase
Convert all http header name constants to lowercase
2017-06-14 02:38:57 +03:00
sledgehammer999
fd05f5dec5 Merge pull request #6887 from Chocobo1/csrf_relax
[WebUI] relax CSRF defense. Closes #6882.
2017-06-14 02:37:33 +03:00
Anton-Latukha
e00c96df99 systemd service with user switch.
rm previous systemd unit service

cmake now placing new file 'qbittorrent-nox@.service.in'

systemd service now "Type=simple"
2017-06-12 22:58:10 +03:00
Eugene Shalygin
fff6640127 Merge pull request #6820 from evsh/fspathedit-visual-feedback
Add visual feedback for wrong paths in FileSystemPathEdit
2017-06-10 20:19:39 +02:00
Eugene Shalygin
574fed04fc Add visual feedback for wrong paths in FileSystemPathEdit 2017-06-10 17:09:20 +02:00
Vladimir Golovnev (Glassez)
66aeafdc63 Fix crash in ArticleListWidget
ArticleListWidget::handleArticleList() can be called inside
ArticleListWidget::handleArticleAboutToBeRemoved() and list widget
item can be removed at this point. Now we checking for it existence.
Closes #6896.
2017-06-07 18:24:43 +03:00
sledgehammer999
4a1ed9ff0e Merge pull request #6898 from Chocobo1/timeout
Fix keep alive duration was wrongly in milliseconds instead of seconds
2017-06-07 18:02:37 +03:00
Chocobo1
8419ca87f9 Fix KEEP_ALIVE_DURATION value
I intended to specify 7 seconds, which should be 7000 milliseconds
2017-06-07 21:45:47 +08:00
sledgehammer999
15fb72275a Merge pull request #6907 from thalieht/transInstaller
Add greek translation for windows installer
2017-06-07 11:53:05 +03:00
thalieht
10b10b10b8 Add greek translation for windows installer 2017-06-07 10:14:38 +03:00
sledgehammer999
d3912b5600 Merge pull request #6900 from BouRock/patch-2
Updated turkish installer
2017-06-07 02:10:15 +03:00
sledgehammer999
63566b45d0 Merge pull request #6908 from KingLucius/arabicinstaller
Installer Arabic language update
2017-06-07 02:09:55 +03:00
KingLucius
8c0577862b Installer Arabic language update 2017-06-05 18:59:31 +02:00
Mike Tzou
6f6a17341f Merge pull request #6859 from Chocobo1/cookie_select
Manage Cookies dialog improvements
2017-06-05 11:58:09 +08:00
Burak Yavuz
c13af881d9 Updated turkish installer 2017-06-04 00:48:11 +03:00
Vladimir Golovnev
c503583046 Merge pull request #6864 from glassez/rss
Improve RSS Article handling
2017-06-02 19:47:08 +03:00
Chocobo1
45c21f62f9 [WebAPI] Convert all header name constants to lowercase
This save us another transition when some day we implements HTTP/2
(which all headers are in lowercase).
2017-06-02 21:55:16 +08:00
Chocobo1
cdb8f4bc61 [WebUI] relax CSRF defense. Closes #6882.
Allow HTTP request which has neither Origin nor Referer header included
2017-06-02 21:16:06 +08:00
sledgehammer999
b5c0d90e9c Merge pull request #6842 from Chocobo1/countPieces
[TorrentCreator] Show total number of pieces. Closes #6774.
2017-06-02 08:56:10 +03:00
Chocobo1
087856d3d8 [WebUI]: Implement CSRF defense
Bump API version
2017-06-01 19:37:57 +03:00
Vladimir Golovnev (Glassez)
4021bf68f7 Use constants for article field names in RSS::Feed 2017-06-01 16:04:11 +03:00
Vladimir Golovnev (Glassez)
02f77a05dc Improve RSS article parsing
Use QLatin1String for string literals.
Use predefined constants for article hash table keys.
2017-06-01 16:04:10 +03:00
Vladimir Golovnev (Glassez)
080dd79875 Store all RSS Article data in auto downloading job 2017-06-01 16:04:04 +03:00
Vladimir Golovnev (Glassez)
475348595c Improve RSS::Article class
Store more RSS article fields.
Don't use legacy article field names in Parser code.
2017-06-01 15:57:14 +03:00
sledgehammer999
34c7465009 Merge pull request #6871 from KingLucius/googlefavicon
Fetch Favicons via google
2017-06-01 15:12:30 +03:00
sledgehammer999
ace68d4961 Merge pull request #6874 from evsh/no-old-style-cast
Disable warnings in the bundled QtSingleAppplication and fix CMake builds in Travis
2017-06-01 15:10:18 +03:00
Eugene Shalygin
72cb868224 cmake: disable warnings for bundled QtSingleApplication 2017-06-01 10:14:09 +02:00
Eugene Shalygin
c2f9f57ef4 Travis: group apt packages 2017-06-01 10:14:09 +02:00
Eugene Shalygin
8c589b8579 travis: use GCC 6 in CMake builds
GCC 4.8.4 has a bug with system includes: it does not ignore warnings
for files from system include directories. This breaks our Travis builds
due to warnings in zlib.h.
2017-06-01 10:12:27 +02:00
Eugene Shalygin
3a87af7372 travis: Use Ninja in CMake builds
make does not show compiler command line when -Werror triggers a
compilation error. Ninja does show complete command line in this case,
and the command line might be important for analysing a build error.

Additionally, final build log contains only lines for generated files
and files with compilation warnings, and is much shorter as such.
2017-06-01 10:12:27 +02:00
sledgehammer999
d3ccbe4f86 Fix format-truncation warning. 2017-06-01 01:09:25 +03:00
KingLucius
1b9882b3a3 Fetch Favicons via google 2017-05-31 22:21:25 +02:00
Mike Tzou
70d0fb741f Merge pull request #6870 from Chocobo1/ui
Fix focusing on the previously opened dialog didn't work
2017-05-31 12:26:27 +08:00
Chocobo1
4a4e3a13e6 Fix focusing on the previously opened dialog didn't work
Placing modeless dialog A on top of modeless dialog B, then open dialog B again,
the expected behavior is B on top of A.
2017-05-30 14:09:01 +08:00
Eugene Shalygin
ff80208534 Merge pull request #6868 from evsh/no-old-style-cast
Replace C-style casts with C++ ones
2017-05-29 17:47:01 +02:00
Vladimir Golovnev (Glassez)
a8bcc2ee52 Fix empty statusbar showed after app restarted 2017-05-29 18:38:17 +03:00
Eugene Shalygin
74cecb1b6c Replace C-style casts with C++ ones 2017-05-29 17:25:42 +02:00
Chocobo1
1ac7d779a7 Set expiration date for newly added cookie to +2 years from now, instead
of +99 years.

This fixes the ambiguity that users could assume the date was in the
past, but in fact it's in the future.
Ex. now date is 5/28/17, +99 years = 5/28/16, +2 years = 5/28/19
2017-05-29 14:10:47 +08:00
Chocobo1
a585b02e76 Enable alternatingRowColors for "Manage Cookie" dialog
Set editTriggers property to AllEditTriggers for easier editing.
Now a single mouse click can initiate item editing instead of double
clicking.
2017-05-29 14:10:47 +08:00
Chocobo1
d8083dd985 Allow to select & delete multiple entries in "Manage Cookies" dialog 2017-05-29 14:10:47 +08:00
Noam Gal
bd90614413 Get more RSS article data 2017-05-28 10:17:59 +03:00
Vladimir Golovnev
e3671050d1 Merge pull request #6840 from glassez/statusbar
Add show/hide statusbar option (Supersede #4029)
2017-05-27 22:22:34 +03:00
Vladimir Golovnev
146b0b91f0 Merge pull request #6845 from KingLucius/rsscrash
Fix crash when delete RSS feed
2017-05-27 16:27:08 +03:00
KingLucius
dedd31ada5 Fix crash when delete RSS feed 2017-05-27 13:52:32 +02:00
Eugene Shalygin
ae5932a573 Merge pull request #6848 from evsh/fix-piecebar-crash
Fix crash in download piece bar
2017-05-27 13:24:14 +02:00
Mike Tzou
20f6bf817e Merge pull request #6836 from Chocobo1/api
[WebAPI] Get piece information/state
2017-05-27 18:28:22 +08:00
Chocobo1
c618214061 [TorrentCreator] Show number of pieces. Closes #6774. 2017-05-27 16:37:08 +08:00
Eugene Shalygin
6d9eec0e71 Fix crash in download piece bar
When torrent size is smaller than the image width, bytes per pixel was
set to zero and code was crashing. Set it to -1 instead, as we do when
image is empty. This will disable highliting, but our algorithm does not
work in this case anyway.
2017-05-26 21:47:51 +02:00
Mike Tzou
b6080c19c2 Merge pull request #6834 from Chocobo1/cookie
[WebUI] Make cookie parsing robust
2017-05-26 23:56:35 +08:00
Vladimir Golovnev (Glassez)
c456b9a42c Refactor and improve StatusBar 2017-05-26 18:11:26 +03:00
Chocobo1
3933790bda Add new webUI API. Closes #6457.
Now getting piece information for a specific torrent is possible via:

* Returns an array of states (integers) of pieces in order. Defined as:
  "0=not downloaded", "1=downloading", "2=downloaded".
  GET /query/getPieceStates/<torrent_hash>

* Returns an array of hashes (strings) of pieces in order:
  GET /query/getPieceHashes/<torrent_hash>
2017-05-26 14:37:03 +08:00
takiz
0940a8a764 Add show/hide statusbar option 2017-05-25 16:35:21 +03:00
Chocobo1
f35a5c8085 [WebUI] Make cookie parsing robust
Previously cookie name such as "<any string>SID" will be mistakenly
accepted as "SID" session ID, this commit fixes it.

Use QString::isEmpty()
2017-05-25 18:45:07 +08:00
Chocobo1
712e6a0e5c Refactor out helper function Utils::String::unquote
Remove redundant include
2017-05-25 18:44:35 +08:00
Mike Tzou
1f9ccb44a3 Merge pull request #5196 from Chocobo1/creator_pr
Revamp Torrent creator
2017-05-24 17:40:10 +08:00
Mike Tzou
92decf83b8 Merge pull request #6330 from Chocobo1/rename
Fix renaming files is not case sensitive on Windows platform
2017-05-24 13:12:30 +08:00
Chocobo1
7eed1a108e Rename variables
Add myself to authors list
2017-05-24 11:54:42 +08:00
Chocobo1
7e87eeb2d4 Use QThread::requestInterruption() instead of m_abort flag 2017-05-24 11:54:42 +08:00
Chocobo1
60524348f0 Enlarge combobox to fix its contents 2017-05-24 11:54:42 +08:00
Chocobo1
9f2fe2b678 Move CachedSettingValue instances to header file 2017-05-24 11:54:42 +08:00
Chocobo1
a4141fd151 Simplify m_creatorThread initialization 2017-05-24 11:54:42 +08:00
Chocobo1
7de1aba092 Switch to modeless dialog
Don't close dialog after creating torrent
Show progress bar all the time
2017-05-24 11:54:42 +08:00
Chocobo1
d277696acc Add global.h file 2017-05-24 11:54:42 +08:00
Chocobo1
2e8c01d88c Use CachedSettingValue 2017-05-24 11:54:42 +08:00
Chocobo1
908481885c Enable drag n drop to create torrent on mainwindow 2017-05-24 11:54:42 +08:00
Chocobo1
386b93bb0f Fix the file size sum igonred files starting with a dot: ".name"
Make the computation iterative instead of recurisve to avoid stack overflow.

Enlarge read size to enable better performance.
Remove `QFile::close()` calls, QFile automatically close them in dtor.
2017-05-24 11:54:42 +08:00
Chocobo1
8efcc335de Switch to use SettingsStorage class 2017-05-24 11:54:42 +08:00
Chocobo1
009798f690 Follow header include rule 2017-05-24 11:54:42 +08:00
Chocobo1
6bab30a178 Revamp Torrent creator 2017-05-24 11:54:42 +08:00
Mike Tzou
ced52e3269 Merge pull request #6827 from naikel/webui_filter_fix
Fix slow filtering in WebUI
2017-05-24 00:02:22 +08:00
Naikel Aparicio
03b2decab6 Fix slow filtering in WebUI. Fixup 7aadf644e0. 2017-05-22 09:19:03 -04:00
Eugene Shalygin
47960b2592 Merge pull request #6818 from naikel/webui_fix
Cosmetic fixes for WebUI upload and download windows
2017-05-22 13:27:01 +02:00
Eugene Shalygin
b82edc561f Merge pull request #6821 from evsh/do-not-hardcode-rss-colors
Do not use hardcoded colors in RSS feed view
2017-05-22 10:58:02 +02:00
Eugene Shalygin
e99e88bbe7 Merge pull request #6811 from KingLucius/ETplugin
[Search engine] Remove ExtraTorrent plugin
2017-05-21 14:26:54 +02:00
Eugene Shalygin
72da2e7252 Do not use hardcoded colors in RSS feed view 2017-05-21 13:02:34 +02:00
Mike Tzou
494601ea75 Merge pull request #6814 from Chocobo1/defects
[QuickFix] Fix coverity issues
2017-05-21 18:55:04 +08:00
Naikel Aparicio
9fc6de77ca Cosmetic fixes for WebUI upload and download windows 2017-05-20 16:01:24 -04:00
Eugene Shalygin
659dd3285b Merge pull request #6810 from evsh/cmake
cmake: fix FindSystemd.cmake
2017-05-20 11:08:58 +02:00
Chocobo1
d8c0a40b1f Add explicit error handling when filesCount() returns negative value
Fix coverity CID 162538
2017-05-20 14:01:58 +08:00
Chocobo1
562080de69 Initialize variable
Fixes coverity CID 161628
2017-05-20 11:38:39 +08:00
Mike Tzou
c3b1c57d67 Merge pull request #6807 from Chocobo1/icon
[Quick Fix] Set icon height in html instead of js
2017-05-20 11:18:02 +08:00
Mike Tzou
7f089db942 Merge pull request #6802 from Chocobo1/size
[Quick Fix] Cleanup options dialog
2017-05-20 11:17:44 +08:00
KingLucius
ebc50a7237 remove ExtraTorrent plugin 2017-05-19 16:36:56 +02:00
Eugene Shalygin
15ef4fcc56 cmake: fix FindSystemd.cmake
Apparently, recent version of CMake made PkgConfig stuff scooped and we
need to call find_package(PkgConfig) in FindSystemd.cmake too, the call
in FindLibtorrentRasterbar.cmake, that is always used first, is not
enough now.
2017-05-19 10:44:36 +02:00
Mike Tzou
ce36a7ca62 Merge pull request #6498 from thalieht/trackerList
Trackerlist: Add toggle columns menu
2017-05-19 15:06:42 +08:00
Chocobo1
5529a7713c Set icon height in html instead of js
Fixup of d302e4fb92
2017-05-19 00:06:10 +08:00
Mike Tzou
b8d2fef653 Merge pull request #6805 from Chocobo1/icon
Fix icon too large. Closes #6804.
2017-05-18 23:54:40 +08:00
Eugene Shalygin
309ae0b4e9 Merge pull request #6803 from evsh/fix-build
Fix build error.
2017-05-18 17:35:53 +02:00
Chocobo1
d302e4fb92 [WebUI] Fix connection status icon too large. Closes #6804. 2017-05-18 23:07:40 +08:00
Eugene Shalygin
4b48f7b8d9 Fix build error. 2017-05-18 16:41:49 +02:00
Chocobo1
2702410572 Remove useless horizontal layout widget 2017-05-18 19:48:36 +08:00
Chocobo1
e24b565857 Remove unused row in "Share Ratio Limiting" group box 2017-05-18 18:40:40 +08:00
Chocobo1
fad3af27ca Partialy revert 7320ac1bc0
Reverts back options dialog size
Also removes unused tabstops
2017-05-18 18:12:32 +08:00
Mike Tzou
7302042daf Merge pull request #6799 from Chocobo1/appveyor
Tweak AppveyorCI
2017-05-18 18:02:54 +08:00
Vladimir Golovnev
927ecc7075 Merge pull request #4266 from naikel/seed_until
Share torrents until seeding time reaches an specific amount of minutes
2017-05-18 07:12:24 +03:00
Chocobo1
4ddb340a94 [AppveyorCI]: Ignore coverity_scan branch 2017-05-18 10:19:17 +08:00
Chocobo1
a2ab6fa8ab [AppveyorCI]: set clone depth to 50
This depth is same as TravisCI default
The time spent in clone was 1min ~ 3mins before
2017-05-18 10:17:38 +08:00
Vladimir Golovnev
c4ccf6b774 Merge pull request #6714 from fbriere/issue/6708-sort-categories
Fix instances where categories where still sorted case-sensitively. Closes #6708.
2017-05-17 21:47:20 +03:00
Naikel Aparicio
9ba00d7035 Implemented share limit by seeding time 2017-05-17 14:33:17 -04:00
Chocobo1
08a6c75227 Refactors
Rename variables
Refactor to return early instead of introducing a scope
Revise dialog title & messages
Refactor code logic
2017-05-17 21:28:46 +08:00
Eugene Shalygin
f4a6242711 Merge pull request #6795 from evsh/fix-file-widget
Use new signal/slot syntax in options dialog
2017-05-17 13:34:54 +02:00
Mike Tzou
0838f64311 Merge pull request #6782 from Piccirello/strict-csp
Use less permissive Content Security Policy
2017-05-17 18:47:51 +08:00
Eugene Shalygin
8ca730f0d8 Use new signal/slot syntax in options dialog 2017-05-17 12:38:27 +02:00
Mike Tzou
d80abeb10f Merge pull request #6751 from thalieht/webuiUnitPrecision
WebUI: Increase the number of digits after the decimal point
2017-05-17 12:48:03 +08:00
Eugene Shalygin
2e4c3b1901 Merge pull request #6794 from evsh/cmake
Fix cmake build.
2017-05-16 20:25:11 +02:00
Eugene Shalygin
71ce193f5a Fix cmake build broken by #6724.
PR #6724 deletes two source files, let's delete them from
CMakeLists.txt.
2017-05-16 18:55:52 +02:00
Eugene Shalygin
32551b8e6c Merge pull request #6793 from evsh/cmake
cmake: include searchengine resources
2017-05-16 18:48:12 +02:00
Mike Tzou
0f7eabfa4b Merge pull request #6781 from Piccirello/torrent-download-api-response
Include response status in upload torrent API
2017-05-17 00:39:55 +08:00
Eugene Shalygin
4d53d8d1ba Merge pull request #6785 from KingLucius/freespaceondisk
Get disk free space size via QStorageInfo instead of native API. Closes #6780
2017-05-16 18:19:16 +02:00
Eugene Shalygin
a18b3bea03 cmake: include searchengine resources 2017-05-16 18:06:56 +02:00
Vladimir Golovnev
44f8a48d73 Merge pull request #6724 from glassez/libt11
Don't use features, deprecated in libtorrent-1.1
2017-05-16 18:54:00 +03:00
Mike Tzou
3cc1b11025 Merge pull request #6783 from Chocobo1/fix
Tweak CachedSettingValue
2017-05-16 11:00:14 +08:00
KingLucius
aea887a30f cross-platform free space on disk 2017-05-15 23:05:23 +02:00
Thomas Piccirello
7cf1d844b0 Return status indicating if at least one torrent was successfully added 2017-05-15 14:30:44 -04:00
Eugene Shalygin
954f05b4a9 Merge pull request #5375 from evsh/filename-edit-widget
Add a widget for editing file names
2017-05-15 09:33:28 +02:00
Chocobo1
3fb8ff281f Tweak CachedSettingValue
* Add another constructor to save a call to proxyFunc when its not needed
  note that this call is a virtual function call
* Pass in proxyFunc by const reference
* Move get methods together
2017-05-15 12:31:26 +08:00
Thomas Piccirello
1b5852ad0b Use less permissive Content Security Policy
Adjust content order
2017-05-14 20:26:15 -04:00
Chocobo1
b9403774e6 Use QBT_EXT in all places
Cleanup headers on the way
2017-05-13 16:20:32 +08:00
Chocobo1
b18bf48014 Improve error message reported to user
Should not contain "file" or "folder", because it's not clear which type is selected.
2017-05-13 16:16:59 +08:00
Chocobo1
51e3e5438b Code formatting
Refactor
2017-05-13 16:16:59 +08:00
Chocobo1
0939875ca8 Fix renaming files is not case sensitive on Windows platform. Closes #5128. 2017-05-13 16:16:59 +08:00
Mike Tzou
a2d5d48aff Merge pull request #6730 from Chocobo1/icontray
Fix double click on system tray icon causing program to open and minimize immediately
2017-05-13 02:32:37 +08:00
Eugene Shalygin
92a7479e2d Merge pull request #4994 from evsh/availability-column
Add availability column to torrent contents
2017-05-12 17:47:51 +02:00
Eugene Shalygin
5c10a24923 Add availability column to torrent properties window 2017-05-12 17:15:00 +02:00
Eugene Shalygin
bc18bf1ab4 Add TorrentHandle::availableFileFractions() function
The function returns list of availability values for all torrent files.
The availability here is different to that one in the progress bar. Here
it shows what part of the file's pieces is available (i.e. we do not count
availability > 1 for a piece).
2017-05-12 17:14:59 +02:00
Eugene Shalygin
d5af8722a6 Add availability column to torrent content model 2017-05-12 17:14:59 +02:00
Eugene Shalygin
114c9a8421 Follow project coding style. Issue #2192. 2017-05-12 17:06:18 +02:00
thalieht
73c37cc460 Trackerlist: add "m_" to private members and make them camelCase 2017-05-11 19:15:00 +03:00
thalieht
14f50f1038 Trackerlist: Allow to toggle columns 2017-05-11 19:15:00 +03:00
thalieht
d9555a9e9d Trackerlist: Set text alignment of columns with numbers to the right 2017-05-11 16:53:31 +03:00
thalieht
5d33399000 TrackerList: Remove unnecessary deletes from the destructor 2017-05-11 16:53:31 +03:00
thalieht
33979cb41c TransferListWidget: Remove unnecessary deletes from the destructor 2017-05-11 16:53:31 +03:00
thalieht
e82a1522c8 Trackerlist: Change 0 to nullptr 2017-05-11 16:53:31 +03:00
thalieht
e00be240b0 PropertiesWidget: Change 0 to nullptr 2017-05-11 16:53:31 +03:00
thalieht
b360c5453b PropertiesWidget: Some coding style 2017-05-11 16:53:31 +03:00
thalieht
ce77ebdfe1 Coding style of whole trackerlist.h and a little in trackerlist.cpp 2017-05-11 16:53:31 +03:00
Vladimir Golovnev
f3658daf72 Merge pull request #6699 from fbriere/issue/6265-top-dirname-while-adding
Use actual top-level dirname to look for incomplete files in new torrent
2017-05-11 15:23:16 +03:00
Eugene Shalygin
a997b7d078 Merge pull request #6770 from evsh/fix-6768
Do not attempt to show detailed tooltips without torrent metadata. Closes #6768.
2017-05-11 09:51:58 +02:00
Eugene Shalygin
f211b238c4 Do not attempt to show detailed tooltips without torrent metadata. Closes #6768.
Computations for detailed tooltips are not protected against unavailable
metadata, that leads to asserts or crashes. But since those tooltips are
useless in this case, do not show them at all. Inform user that detailed
tooltip becomes available once torrent metadata are fetched.
2017-05-11 01:10:23 +02:00
Vladimir Golovnev
692e4a986a Merge pull request #6757 from glassez/rss
Forward add/remove child RSS Item event as set of add/remove Articles events
2017-05-10 16:58:49 +03:00
Mike Tzou
c44efbd965 Merge pull request #6766 from Chocobo1/fix
Cleanups
2017-05-10 21:03:54 +08:00
Vladimir Golovnev (Glassez)
fbda237cc4 Fix local IP addresses 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
26f645bd6c Don't create redundant "buf" variable 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
a4d2df575e Don't use deprecated torrent_handle::set_tracker_login 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
1d3dbcb9d2 Don't use deprecated fields of torrent-related alerts 2017-05-10 13:54:29 +03:00
Vladimir Golovnev (Glassez)
5dc54aa224 Don't use deprecated torrent_status fields 2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
72a54910e9 Don't use deprecated peer_info fields 2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
a2f82be6c2 Don't use deprecated url_seed_alert fields 2017-05-10 13:54:28 +03:00
Vladimir Golovnev (Glassez)
13b04f8d2d Don't use deprecated settings_pack members 2017-05-10 13:54:27 +03:00
Vladimir Golovnev (Glassez)
bdca55f15c Use new Session Statistics feature 2017-05-10 13:24:51 +03:00
Vladimir Golovnev (Glassez)
8a6d8f3953 Use cached SessionStatus and CacheStatus 2017-05-10 13:24:37 +03:00
Vladimir Golovnev (Glassez)
cb678a254d Fix statsdialog.* coding style 2017-05-10 13:23:51 +03:00
Vladimir Golovnev (Glassez)
78d6b14fe8 Don't use deprecated torrent_info fields 2017-05-10 12:43:49 +03:00
Chocobo1
446b3307f9 Make method const 2017-05-09 14:21:55 +08:00
Chocobo1
b4baeaaf23 Pass arguemnts by const reference 2017-05-09 14:15:45 +08:00
Chocobo1
42c17ea5ce Fix argument name differ in definition & declaration 2017-05-09 14:12:36 +08:00
Chocobo1
3739bcc270 Initialize struct member 2017-05-09 13:51:12 +08:00
Chocobo1
b9e8cab1e5 Revise class memebers construction & destruction
Use nullptr
Delete m_contentDelegate on close
Remove redundant deletion of m_contentModel since parent is setup
correctly
2017-05-09 13:45:30 +08:00
Chocobo1
4d4097d819 Move editHotkey out of class definition
Also since parent is setup correctly, remove the redundant delete
2017-05-09 13:03:14 +08:00
sledgehammer999
94909d9b92 Merge pull request #6760 from evsh/fix-6759
Fix crash when entering daemon mode. Closes #6759.
2017-05-08 19:15:46 +03:00
Eugene Shalygin
5b59b18606 Fix crash when entering daemon mode. Closes #6759.
We stored reference to parameters object in main(), but that object gets
deleted when we reset Application object upon entering daemon mode.
Change reference to copy to fix that.
2017-05-08 18:01:38 +02:00
Eugene Shalygin
7320ac1bc0 Use file path edit widgets in options and add torrent dialog 2017-05-08 10:08:29 +02:00
Eugene Shalygin
30081e0356 Add widget for editing filesystem paths 2017-05-08 10:08:29 +02:00
sledgehammer999
d61fc7e820 Merge pull request #3858 from Chocobo1/screen_center
Fix dialogs didn't position on the correct screen
2017-05-07 22:17:55 +03:00
Vladimir Golovnev (Glassez)
a36848b5c0 Forward add/remove child RSS Item as add/remove Articles 2017-05-07 18:49:21 +03:00
Vladimir Golovnev (Glassez)
f8debdea67 Fix Item::unreadCountChanged() emit in wrong place 2017-05-07 18:40:42 +03:00
sledgehammer999
a4d5ac4b17 Merge pull request #4739 from sledgehammer999/web_translations
Don't duplicate translatable strings for the WebUI. Use the ones from…
2017-05-07 16:24:53 +03:00
sledgehammer999
e38829218e Merge pull request #6720 from sledgehammer999/implicit_value_for_tristate_options
Don't enforce an explicit value for TriState cmd options.
2017-05-07 16:23:01 +03:00
sledgehammer999
9f98f9f7ac Rename cmd options source files. 2017-05-07 16:20:18 +03:00
sledgehammer999
1a099fa742 Don't enforce an explicit value for TriState cmd options.
Most code from Brian Kendall <guygizmo@gmail.com> (@briankendall)
2017-05-07 14:47:37 +03:00
thalieht
e075274177 webUI: increase the number of digits after the decimal point 2017-05-05 20:09:04 +03:00
Vladimir Golovnev
706097ddda Merge pull request #6744 from glassez/fix-rss
Fix crash when delete last RSS feed. Closes #6742
2017-05-05 19:09:06 +03:00
sledgehammer999
b1f1823c65 [WebUI]Use the same layout in the Speed tab in preferences as the GUI. 2017-05-05 16:41:41 +03:00
sledgehammer999
0addeafc6b Add missing unit sizes in misc.js 2017-05-05 16:41:40 +03:00
sledgehammer999
44c5a9beff [WebUI]Use translatable strings in Statistics dialog. 2017-05-05 16:41:39 +03:00
sledgehammer999
e177799ada [WebUI]Make the context obligatory for translatable strings. Also delete duplicate strings from extra translations. 2017-05-05 03:46:33 +03:00
Vladimir Golovnev (Glassez)
76e3383650 Don't remove read articles from Unread list
Revert back old behavior (incorrect but, perhaps, more user-friendly),
when Unread list populates with "unread" articles only but then it can
contain "read" articles if they become "read" when Unread list is shown.
2017-05-04 20:37:05 +03:00
Frédéric Brière
c37d90bf6d Properly sort categories case-insensitively in filter widget. Closes #6708. 2017-05-04 10:56:45 -04:00
Frédéric Brière
722c928ab5 Turn isSpecialItem() into a CategoryFilterModel static method. 2017-05-04 10:41:36 -04:00
Vladimir Golovnev (Glassez)
2d3914c077 Prevent incorrect popullating of Unread RSS list 2017-05-04 12:39:59 +03:00
Vladimir Golovnev (Glassez)
4e37688105 Properly clear ArticleListWidget 2017-05-04 12:30:02 +03:00
Frédéric Brière
f53a403a7b Set "category" column as case-insensitive in TransferListSortModel.
(From what I can tell, it would appear that the sorting was already
case-insensitive by default.  This makes it explicit.)
2017-05-03 14:07:55 -04:00
Frédéric Brière
ec08cb5445 Leave categories order intact in "Add new torrent" dialog.
The categories are already properly sorted in AddNewTorrentDialog; this
second case-sensitive sort undid all that.

This partially addresses #6708.
2017-05-03 14:07:55 -04:00
Eugene Shalygin
fc0c28d376 Merge pull request #6737 from evsh/fix-release-build
Fix release CMake build
2017-05-03 03:14:50 +02:00
Eugene Shalygin
6540dfa528 Fix release CMake build
write() is declared with __attribute__ ((__warn_unused_result__)) and as
such we shall check its return value. Took opportunity and adjusted
error reporting a bit: if writing to stderr fails, try to write to
stdout.
2017-05-03 02:52:10 +02:00
Mike Tzou
69cb67e6e5 Merge pull request #6735 from Chocobo1/ignore
.gitignore: ignore moc_*.h
2017-05-03 01:11:58 +08:00
Chocobo1
cf462ae448 .gitignore: ignore moc_*.h 2017-05-03 00:31:48 +08:00
Chocobo1
da581dee41 Fix double click on system tray icon causing program to open and
minimize immediately

Closes #5826.
Simply ignore DoubleClick event, as it always come after Trigger
event
2017-05-03 00:14:51 +08:00
Mike Tzou
1808f0e614 Merge pull request #6734 from Chocobo1/plugin_connect
Fix signaling to checkForUpdatesFinished() failed
2017-05-02 21:56:32 +08:00
Chocobo1
3e964212ac Fix signaling to checkForUpdatesFinished() failed.
Fixup of 14e168039c.
2017-05-02 20:33:21 +08:00
Vladimir Golovnev
c1e3e2a745 Revert "Guard the flag used for deferred session configure." (#6733)
This reverts commit 5cbc7b16c0.
2017-05-02 14:39:47 +03:00
Mike Tzou
7bc81ead8c Merge pull request #6727 from Chocobo1/gzip
Fix stack overflow in Utils::Gzip::decompress
2017-05-02 15:38:42 +08:00
Chocobo1
7d1ac06ce2 Fix stack overflow in Utils::Gzip::decompress
Anyway, use std::vector to allocate memory on the heap (in compress() too)
2017-05-02 12:47:07 +08:00
Chocobo1
1fbf121506 Fix CookiesDialog position 2017-05-01 16:02:09 +08:00
Chocobo1
f36e891010 Fix trackersadditiondlg position 2017-05-01 15:32:08 +08:00
Chocobo1
bd2f69a9d6 Fix peeradditiondlg position 2017-05-01 15:32:08 +08:00
Chocobo1
6f6fe626a1 Fix shutdownconfirm position 2017-05-01 15:32:08 +08:00
Chocobo1
fb9ebce9c6 Fix pluginselectdlg position
Fix peerlistwidget position
Fix mainwindow position
2017-05-01 15:32:08 +08:00
Chocobo1
2258e4d5ed Fix automatedrssdownloader position 2017-05-01 15:32:08 +08:00
Chocobo1
73047e3c84 Cleanup downloadfromurldlg, statsdialog 2017-05-01 15:32:08 +08:00
Chocobo1
933f9f1451 Fix optionsdlg position 2017-05-01 15:31:58 +08:00
Chocobo1
46abe42a54 Fix deletionconfirmationdlg position
Fix autoexpandabledialog position
Fix previewselect position
2017-05-01 15:30:41 +08:00
Chocobo1
a902eb6b2b Fix speedlimitdlg position 2017-05-01 15:30:38 +08:00
Chocobo1
de54fa2c30 Fix addnewtorrentdialog position
Fix messageBox position
2017-05-01 14:48:10 +08:00
Chocobo1
7eaa5987c8 Fix dialogs didn't position on the correct screen which qBittorrent window is on. Closes #1690, #2474, #3538. 2017-05-01 14:33:25 +08:00
sledgehammer999
67f44e03a2 Merge pull request #6689 from briankendall/fix_macos_addnewtorrentdialog_bug
Fix for macOS-specific bug in AddNewTorrentDialog
2017-04-30 22:29:51 +03:00
sledgehammer999
4ea9a2f07e Merge pull request #5532 from briankendall/torrent_command_line_arguments
Command line arguments for specifying options when adding torrents
2017-04-30 22:25:21 +03:00
sledgehammer999
90c6bb6054 Merge pull request #6524 from Chocobo1/dpi
Opt-in DPI scaling
2017-04-30 21:25:57 +03:00
Brian Kendall
eba41978b0 Added command line arguments for specifying options when adding torrents
Arguments include adding torrents as paused/started, skiping hash check, setting category, downloading in sequential order, downloading first and last pieces first, and skipping the 'add new torrent' dialog. Added TriStateBoolOption class for specifying options that don't have a default value when unused (e.g. add-paused). Also improved command line usage text to include more information, have better organization, and not exceed 80 columns in width. Also also added firstLastPiecePriority field to BitTorrent::AddTorrentData, and modified TorrentHandle so that if first/last piece priority should be on, it will be toggled on after the torrent's metadata has loaded.
2017-04-30 14:22:30 -04:00
Chocobo1
6bcb07649e Setup DPI at startup 2017-05-01 02:21:44 +08:00
Chocobo1
893ce32f1d Remove curly braces 2017-05-01 00:45:27 +08:00
Chocobo1
a1cad86bbf Remove workaround
Upstream confirmed bug fixed in Qt 5.2
2017-05-01 00:45:09 +08:00
Chocobo1
b3c73b7868 Refactor 2017-05-01 00:37:47 +08:00
sledgehammer999
0a5bb6685f Merge pull request #6654 from Chocobo1/persistence
Webui server fixes
2017-04-30 16:34:23 +03:00
Frédéric Brière
e8f6149a6d findIncompleteFiles(): Replace dir listing with individual checks. Closes #6265.
Looking for incomplete files in a new torrent by using a pre-generated
directory listing presents several disadvantages:

  - It requires us to extract the top-level directory name (in case it
    was renamed).
  - It requires us to know whether the top-level directory was stripped.
  - In the latter case, it may result in recursively traversing the
    entire contents of all downloaded torrents.

Calling QFile::exists() individually for each file solves all these
issues.

In so doing, the handling of single-file and multiple-file torrents are
rendered pretty much identical, and can therefore be merged.
2017-04-30 09:26:58 -04:00
Mike Tzou
e91a5f6a5a Merge pull request #6701 from Chocobo1/webui
WebUI: Fix checkbox hidden
2017-04-30 13:35:02 +08:00
Chocobo1
5e50d8ed91 WebUI: Fix checkbox hidden. Closes #6642. 2017-04-29 23:12:04 +08:00
Eugene Shalygin
172991e068 Merge pull request #6703 from evsh/cmake
cmake: set warning and error compiler options
2017-04-29 14:11:09 +02:00
Eugene Shalygin
c4e16aa820 cmake: set warning and error options
The set is far from perfect, but guards against common errors with GCC.
2017-04-29 13:30:28 +02:00
Vladimir Golovnev
93df0ef1d1 Move AddTorrentParams to its own header (#6712)
* Move AddTorrentParams to its own header

* fixup! Move AddTorrentParams to its own header
2017-04-29 11:49:40 +03:00
Vladimir Golovnev
70f1153413 Merge pull request #6694 from glassez/remove-temp
Remove torrent temp folder when it becomes unneeded
2017-04-29 11:44:15 +03:00
Vladimir Golovnev (Glassez)
160b7ff2d3 Remove torrent temp folder when torrent is deleted 2017-04-28 16:52:16 +03:00
Vladimir Golovnev (Glassez)
c56b4a25bc Remove torrent temp folder if it becomes unneeded 2017-04-28 12:30:48 +03:00
Eugene Shalygin
818dcce462 Fix formatting in CONTRIBUTING.md (#6704)
Fix formatting in CONTRIBUTING.md
2017-04-27 18:20:27 +02:00
Eugene Shalygin
98415917c6 cmake: use environment variable LIB on Windows
Append its value to CMAKE_LIBRARY_PATH to simplify life of on Windows.
2017-04-27 14:34:30 +02:00
Eugene Shalygin
71cf25ae99 Replace variable length array with std::vector in print_stacktrace()
The function does memory allocation from heap anyway, so should not be
a problem to use STL container.
2017-04-27 14:32:02 +02:00
Vladimir Golovnev
c50cee8feb Merge pull request #6686 from glassez/fix-nullptr
Fix RSS GUI bugs
2017-04-27 12:55:44 +03:00
Vladimir Golovnev (Glassez)
a78a1a9c64 Add invariant checking in ArticleListWidget 2017-04-27 12:31:18 +03:00
sledgehammer999
74fb070e78 Merge pull request #6693 from glassez/drop-qt4
Drop rest of qt4 support code
2017-04-26 15:12:55 +03:00
Vladimir Golovnev (Glassez)
335443e6a0 Drop QThread::msleep wrapper 2017-04-26 10:44:47 +03:00
Vladimir Golovnev (Glassez)
d5d946dd66 Drop Qt4 related settings from QMake project 2017-04-26 08:53:47 +03:00
sledgehammer999
b71ee80ecd Optimize P2P filter parsing too. 2017-04-26 02:33:57 +03:00
sledgehammer999
fd7e69e1e0 Add helper function for logging messages. 2017-04-26 02:33:56 +03:00
sledgehammer999
51cf6bd2a5 Optimize DAT filter parsing. Parse in memory and in place instead of copying strings around. 2017-04-26 02:33:55 +03:00
Brian Kendall
59e6a4298d Fixed macOS-specific bug in AddNewTorrentDialog
Because AddNewTorrentDialog is a sheet in macOS, repositioning it causes bad things to happen, particularly if the main dialog is on a secondary monitor.
2017-04-25 13:34:06 -04:00
Vladimir Golovnev (Glassez)
6764de8ef0 Fix ArticleListWidget adds new articles in wrong order 2017-04-25 13:15:11 +03:00
Vladimir Golovnev (Glassez)
71814885aa Fix ArticleListWidget doesn't clear properly 2017-04-25 13:14:55 +03:00
Vladimir Golovnev (Glassez)
abfcfb5af0 Fix possible null pointer dereference 2017-04-25 13:01:34 +03:00
sledgehammer999
8f6e04d779 Using new IP parser provided by @evsh. It is faster and uses less memory.
Class `DATIPv4Parser` was written by Eugene Shalygin <eugene.shalygin@gmail.com> (evsh on github).
2017-04-25 04:43:30 +03:00
sledgehammer999
f53dab8ad4 Output log messages for ip filter parsing errors. 2017-04-25 04:43:29 +03:00
sledgehammer999
05ab9fc355 Optimize ip filter parsing. 2017-04-25 04:43:22 +03:00
Mike Tzou
df1a8bfdea Merge pull request #6685 from Chocobo1/coverity
TravisCI: only allow coverity build job when `build_system=qmake`
2017-04-25 01:50:35 +08:00
Chocobo1
46ac5e0ee2 TravisCI: only allow coverity build job when build_system=qmake 2017-04-25 01:03:08 +08:00
Vladimir Golovnev (Glassez)
3a3125ea2b Fix remove oldest article 2017-04-24 16:50:28 +03:00
Vladimir Golovnev
e433cbab97 Merge pull request #6677 from glassez/fix-create-subfolder
Allow strip root folder using default settings
2017-04-24 12:21:53 +03:00
Vladimir Golovnev (Glassez)
c799923d7d Allow strip root folder using default settings 2017-04-24 12:03:35 +03:00
Vladimir Golovnev (Glassez)
711be50e9c Fix AddTorrentData field types 2017-04-24 11:59:16 +03:00
Mike Tzou
4c6059c352 Merge pull request #6673 from Chocobo1/manifest
Disable Qt embedding manifest automatically
2017-04-24 12:03:32 +08:00
sledgehammer999
032eb12585 Remove whitespace. 2017-04-24 04:25:49 +03:00
sledgehammer999
3cdc6fb978 Fix compiler warnings. 2017-04-24 04:24:32 +03:00
Mike Tzou
b894d886ec Merge pull request #6669 from wevsty/master
update chinese windows installer translation
2017-04-23 23:52:37 +08:00
Chocobo1
e1adfde66e Disable Qt embedding manifest automatically
Embedding manifest fails for me after upgrading to VS2017, this fixes it.
2017-04-23 21:31:31 +08:00
Eugene Shalygin
c865ba2803 Merge pull request #6671 from zywo/cmake-build
Fix CMake build
2017-04-23 14:16:39 +02:00
Vladimir Golovnev (qlassez)
f259bde275 Fix "Create subfolder" in AddNewTorrentDialog 2017-04-23 15:05:03 +03:00
zywo
51104a9fb4 Fix CMake build 2017-04-23 09:29:27 +01:00
Vladimir Golovnev
a886dbf8ab Merge pull request #6627 from glassez/rss2
Redesign RSS subsystem
2017-04-23 09:17:39 +03:00
Vladimir Golovnev (Glassez)
989a70fe60 Redesign RSS subsystem 2017-04-23 09:03:46 +03:00
wevsty
98cec6a495 update chinese windows installer translation 2017-04-23 05:11:18 +08:00
Eugene Shalygin
090a2edc1a Merge pull request #6651 from evsh/fix-config-dir-on-windows
Migrate from platform-specific code in Private::DefaultProfile to QStandardPaths
2017-04-22 13:09:17 +02:00
Eugene Shalygin
41628dd5f6 Merge pull request #6662 from ngosang/se_plugins
[Search engine] Update, remove and add plugins
2017-04-22 11:32:30 +02:00
ngosang
fa64f33c2a [Search engine] Add btdb plugin 2017-04-21 23:42:07 +02:00
Eugene Shalygin
ead1f6e1f6 Merge pull request #5264 from evsh/plugin-version-class
Use explicit class for search plugin versions
2017-04-21 14:06:50 +02:00
Eugene Shalygin
14e168039c Use explicit class for search plugin versions 2017-04-21 09:47:08 +02:00
ngosang
5d0cfc7475 [Search engine] Update legittorrents plugin 2017-04-20 21:17:24 +02:00
ngosang
339b35c369 [Search engine] Remove mininova plugin 2017-04-20 21:00:59 +02:00
ngosang
91e7e94820 [Search engine] Update demonoid plugin 2017-04-20 20:56:23 +02:00
Eugene Shalygin
8218ec1bd1 Merge pull request #6660 from evsh/cmake
cmake: use import libraries for Boost and OpenSSL in Libtorrent find module
2017-04-20 16:31:24 +02:00
Chocobo1
cfb07b3d5b TravisCI: Install latest zlib & cleanups
Remove trailing semicolon, seems that isn't needed now
Switch builds to container-based infrastructure
Move similar code blocks together
2017-04-20 22:26:35 +08:00
Chocobo1
0b5de9ff54 Temporary revert to the old behavior. 2017-04-20 22:26:35 +08:00
Chocobo1
a35c6426ab Specify lib requirement: zlib >= 1.2.5.2 2017-04-20 22:26:35 +08:00
Chocobo1
617f19e599 Revise Utils::Gzip::decompress
Rename from uncompress to decompress
Change signature
Use proper casting
Use larger buffer for the output of inflate()
Reserve 1 MBytes for output buffer
Change function signature
2017-04-20 22:26:35 +08:00
Chocobo1
302c8ba850 Revise Utils::Gzip::compress code
Change signature
Add ZLIB_CONST define to make  z_stream.next_in const
Cast to zlib defined type Bytef*
Set memLevel to 9 in deflateInit2() for maximum performance
Revise compression loop
On returning false, free memory correctly by calling deflateEnd()
Reserve space by the estimation of deflateBound()
2017-04-20 22:24:50 +08:00
Chocobo1
94b496354b Rewrite rules for gzipping http response content 2017-04-20 22:22:17 +08:00
Chocobo1
4600e679d1 Implement robust acceptsGzipEncoding()
Adhere more to http/1.1 standard
2017-04-20 22:22:17 +08:00
Chocobo1
129172453b Fix "Content-Encoding" header is always created.
Was side effect of operator[]
2017-04-20 22:22:17 +08:00
Chocobo1
7d36c81949 Cleanup Http::responseGenerator()
Add CRLF definition
Rewrite loop using iterator, slightly more efficient
Rename variables
2017-04-20 22:22:17 +08:00
Chocobo1
6cb2f05a6c Demote to helper function
Rename function
2017-04-20 22:22:17 +08:00
Chocobo1
829e1399ca Convert Qstring to char arrays
Cleanup header
Sort constants
2017-04-20 22:22:17 +08:00
Chocobo1
4b2266a8e2 Send Date http header
It's not strict required but often expected.
change class to namespace
cleanup header
2017-04-20 22:22:17 +08:00
Chocobo1
9496b2a159 Always send Content-Length header.
Because without it, HTTP/1.1 (with persistence connection) clients will
keep waiting for more data.
2017-04-20 22:22:17 +08:00
Chocobo1
0b28fb6c6b Implement http persistence connection
Max simultaneous connection limit set to 500
This also release allocated memory of Connection instances at runtime instead of at program shutdown.
2017-04-20 22:22:14 +08:00
Eugene Shalygin
41a63718c9 cmake: use import libraries for Boost and OpenSSL in Libtorrent find module 2017-04-20 15:18:04 +02:00
Eugene Shalygin
01325ee7de Merge pull request #6658 from evsh/cmake
cmake: fix typo in the manifest file name
2017-04-19 17:37:05 +02:00
Eugene Shalygin
f99ba03177 cmake: fix typo in the manifest file name 2017-04-19 17:06:44 +02:00
Eugene Shalygin
b06080e2e7 Replace platform-specific code in Private::DefaultProfile with QStandardPaths.
This should also fix Profile::location(SpecialFolder::Config) on
Windows.
2017-04-19 12:51:07 +02:00
sledgehammer999
ae0a9d74c4 Merge pull request #6487 from Chocobo1/ui
GUI polish
2017-04-18 04:01:13 +03:00
sledgehammer999
2045c38005 Merge pull request #6623 from evsh/cmake
CMake 3.8 compatibility and refactoring
2017-04-17 17:38:08 +03:00
Eugene Shalygin
4e1b7c3b87 Remove generated include from headers
Not only fixes compilation with CMake 3.8 (without messing with include
paths) but makes sources cleaner.
2017-04-17 16:31:19 +02:00
Eugene Shalygin
34798399da cmake: fixes for cmake 3.8
AUTOUIC seems to became stricter.
2017-04-17 16:27:24 +02:00
Eugene Shalygin
97d52668cc travis: fix CMake + OSX build
Brew changed installation dir for Qt, and we have to change it in our
workaround symlinks too.
2017-04-17 16:27:24 +02:00
Eugene Shalygin
c32cee8098 travis: remove redundant 'cd' command 2017-04-17 16:27:24 +02:00
sledgehammer999
018574e546 Merge pull request #6475 from OpenGG/master
[WebUI-API] Add "skip_checking" and "paused" to "/command/download" and "/command/upload"
2017-04-17 17:12:24 +03:00
sledgehammer999
48b0cf8a48 Merge pull request #6621 from Chocobo1/webui
Webui: refactor
2017-04-17 17:08:25 +03:00
sledgehammer999
ae0ec716cb Fix inverted check when applying the IP filter. 2017-04-17 17:07:12 +03:00
sledgehammer999
c27108c97a Merge pull request #6630 from evsh/fix-6454
Start up torrents after UI was created. Fixes #6454.
2017-04-17 16:44:03 +03:00
sledgehammer999
56436d3f97 Merge pull request #6626 from evsh/fix-desktop-filename
Rename .desktop file to match executable name. Fixes #6625.
2017-04-17 16:03:06 +03:00
sledgehammer999
d702b32e53 Merge pull request #5465 from glassez/strip_root_folder_v2
Allow to strip root folder. Closes #588, closes #5433
2017-04-17 15:48:28 +03:00
Vladimir Golovnev (Glassez)
22178f9997 Fix strip torrent root folder 2017-04-15 17:33:20 +03:00
Vladimir Golovnev (Glassez)
6d7d566cdf Fix TorrentHandle rootPath() and contentPath() methods 2017-04-15 10:11:53 +03:00
Vladimir Golovnev (Glassez)
d413bc65ef Improve strip torrent root folder
Fix issue when you rename the "root item" in the "Add New Torrent" dialog
and uncheck "Create subfolder", it will create the subfolder with the
renamed name.
Fix PropertiesWidget first folder is expanded after app restart.
Strip root folder if torrent was added via magnet link.
Fix crash when you get name of torrent without metadata.
2017-04-15 10:11:53 +03:00
sledgehammer999
4b2d8a7941 Setting for creating subfolder on multifile torrents. Closes #588. 2017-04-15 10:11:53 +03:00
Eugene Shalygin
21a72c651f Start up torrents after UI was created. Fixes #6454.
Commit dd0537d changed torrents startup code adding alerts processing
into it. Therefore alerts were processed before UI code subscribed to
signals and therefore part of alerts was not reflected in the UI.

Thus here we do not start torrents in Session constructor, but do that
from Application::exec() after UI was constructed and is ready to process
signals.
2017-04-14 00:58:43 +02:00
Eugene Shalygin
ecd67b9d75 Rename .desktop and appdata files to match executable name. Fixes #6625. 2017-04-12 17:26:12 +02:00
sledgehammer999
07af8c9648 Merge pull request #5214 from evsh/adjustable-config-name
Implement configurations and portable mode. Closes #465
2017-04-12 02:20:34 +03:00
Eugene Shalygin
a8d95dd8bd Save relative paths in fastresume files
Conditionally change absolute paths to relative in the fastresume data files.
The condition is specified by user via a command line parameter and
paths are relative to the profile dir.

On Windows the convertion to relative path is performed if the path and
the profile are on the same drive only.
2017-04-12 00:51:37 +02:00
Eugene Shalygin
0710a59bf5 Refactor parameters parsing
Introduce classes that encapsulate parameter names and parsing schemes
from command line and from environment variables.
2017-04-12 00:50:33 +02:00
Eugene Shalygin
0bf7fa15c1 Replace wrappers in base/utils/fs.h with Profile::SpecialFolders::location() 2017-04-12 00:50:33 +02:00
Eugene Shalygin
44b6cb28f6 Add environment variables usage description to the help text 2017-04-12 00:50:33 +02:00
Eugene Shalygin
d5414631c3 Initialise QBtCommandLineParameters members from environment
This allows to pass options via environment variables. The variable name
is constructed from parameter name by transforming the name to upper
case and prefixing "QBT_".
2017-04-12 00:50:33 +02:00
Eugene Shalygin
0f746ffd5a Add support for different configurations. Partially closes #465
It may be useful to have different configurations either for portable
versions or for debugging purposes. To implement this we add two
options, avaliable via command line switches
1. An option to change configuration name ("--configuration"). The name
supplied via this option is appended to
QCoreApplication::applicationName() to form "qBittorrent_<conf_name>"
name for the configuration files.
2. An option to provide a path do directory where all the settings are
stored (kind of profile directory). There is a shortcut "--portable"
which means "use directory 'profile' near the executable location".

In order to implement that we have to perform initialisation of the
profile directories before the SettingStorage and Preferences singletones
are initialised. Thus, options parsing shall be performed without defaults
read from preferences.
2017-04-12 00:50:28 +02:00
sledgehammer999
f3338263ea Merge pull request #6493 from Chocobo1/editorconfig
Add .editorconfig
2017-04-11 23:20:58 +03:00
sledgehammer999
44996b4c6b Merge pull request #6624 from schnurlos/patch-5
Update of german.nsi
2017-04-11 23:18:56 +03:00
schnurlos
bbe8184abe Update of german.nsi
Translation of 64-bit text done.
2017-04-11 18:52:27 +02:00
Chocobo1
d1ee54f6ea Refactor: move methods under the same #if section. 2017-04-11 23:16:16 +08:00
sledgehammer999
f4bd3d2868 Merge pull request #6620 from evsh/uk-installer-translation
Create Ukrainian translation for the Windows installer.
2017-04-11 15:38:08 +03:00
Chocobo1
7f346b49a7 Refactor: move the validation of certificates & key functions under Server class
Rename method
Add log messages
2017-04-10 21:18:59 +08:00
Chocobo1
05d8c46bb0 Rename class variables 2017-04-10 21:07:08 +08:00
Chocobo1
35ab86d32f Refactor: group port forwarding code together
Unify log message
2017-04-10 20:14:19 +08:00
Eugene Shalygin
ec274157d7 Create Ukrainian translation for the Windows installer. 2017-04-10 12:42:31 +02:00
sledgehammer999
6ad8a4d8b1 Merge pull request #6606 from ngosang/es_installes_translation
Update Spanish translation for the installer
2017-04-07 16:43:18 +03:00
ngosang
5490c54f8d Update Spanish translation for the installer 2017-04-07 12:49:10 +02:00
sledgehammer999
fe056e7fc0 Merge pull request #6599 from Chocobo1/defines
Fix NTDDI_VERSION define
2017-04-06 14:25:22 +03:00
sledgehammer999
e40444d1ad Bump API_VERSION and API_VERSION_MIN to 13. 2017-04-06 02:03:44 +03:00
sledgehammer999
50f0ba4f7a Sync translations of .desktop file from Transifex. 2017-04-06 02:02:01 +03:00
Chocobo1
84cdd2e061 Bump _WIN32_IE in cmake build 2017-04-06 06:51:24 +08:00
sledgehammer999
be7facdfaf Sync translations from Transifex and run lupdate. 2017-04-06 01:50:52 +03:00
Chocobo1
ca8ea73ddb Fix NTDDI_VERSION define
Fixup of 5958585e3a
2017-04-06 06:50:42 +08:00
sledgehammer999
1111ca9d90 Merge pull request #6548 from Chocobo1/cookie
Fixes for AbstractWebApplication
2017-04-05 18:37:51 +03:00
sledgehammer999
a79099fc52 Merge pull request #6597 from vlakoff/translation
Update French translation for the installer
2017-04-05 18:34:22 +03:00
Chocobo1
812bd4c83a Uncrustify 2017-04-05 17:39:44 +08:00
Chocobo1
a86f189f53 Relax comparsion for floating point 2017-04-05 17:36:47 +08:00
Chocobo1
59556dfc6a Cleanup & refactor 2017-04-05 17:36:47 +08:00
Chocobo1
86e82c71e5 Setup parent pointer
Rely on Qt to do the delete, since the parent ownership is setup
correctly.
2017-04-05 17:36:36 +08:00
sledgehammer999
851fb8d3de Fix running the uninstaller if the user chose a different path in the installer. Closes #6080. 2017-04-05 03:04:59 +03:00
vlakoff
2e3aaf3428 Update French translation for the installer 2017-04-04 18:45:07 +02:00
sledgehammer999
f3d6ae3433 Merge pull request #6590 from FranciscoPombal/webui_remaining
fixed "remaining" column in WebUI
2017-04-04 01:35:59 +03:00
sledgehammer999
4a0244ae88 Better 64-bit handling in the installer. 2017-04-04 01:27:12 +03:00
sledgehammer999
40948ab652 Merge pull request #6519 from evsh/cmake
cmake: fix build and add build configurations for Travis
2017-04-04 01:24:59 +03:00
sledgehammer999
b2528f7573 Merge pull request #6581 from Chocobo1/set_location
Fix cancel "Set location" causes files move to installation dir
2017-04-04 01:15:27 +03:00
sledgehammer999
d4f30030a6 Merge pull request #6565 from Chocobo1/defines
Add NTDDI_VERSION define
2017-04-04 01:09:51 +03:00
sledgehammer999
027607490a Merge pull request #6584 from Chocobo1/nsis
NSIS: set exit code to 0 on install/uninstall success
2017-04-04 01:09:29 +03:00
FranciscoPombal
829ad2e1e6 fixed "remaining" column in WebUI
the key had the wrong name. In the js code, the expected key is "amount_left" and not "remaining".
2017-04-03 16:20:01 +01:00
Chocobo1
b4d474b770 NSIS: set exit code to 0 on install/uninstall success
Closes #6129.
2017-03-31 14:49:23 +08:00
Chocobo1
d2e02605e9 NSIS: trim whitespaces 2017-03-31 14:48:07 +08:00
opengg
b271fa9f00 [WebUI] Add skip_checking and paused to /command/download and /command/upload 2017-03-31 14:05:19 +08:00
Chocobo1
5de505acfe Cleanup headers
Remove unused headers
Sort header includes
2017-03-30 16:45:11 +08:00
Chocobo1
faaafce35b Fix cancel "Set location" causes files move to installation dir.
Closes #6568.
2017-03-30 16:45:10 +08:00
Chocobo1
0d3c670728 Add log message 2017-03-30 16:45:10 +08:00
Chocobo1
b779330163 code formatting 2017-03-28 17:38:04 +08:00
Chocobo1
5958585e3a Add NTDDI_VERSION define 2017-03-28 17:38:04 +08:00
sledgehammer999
5fb3b4639c Merge pull request #6517 from regs01/patch-1
NSIS ManifestDPIAware
2017-03-22 22:45:18 +02:00
sledgehammer999
3dba24bfe0 Merge pull request #6527 from epicgirl1998/patch-1
Remove extra space between category names and torrent counts
2017-03-22 20:00:50 +02:00
sledgehammer999
10f2fbdd17 Merge pull request #6554 from sheeit/patch-1
Fixed Markdown formatting for headers in CODING_GUIDELINES.md
2017-03-22 19:57:58 +02:00
sheeit
ec0771448c Fixed Markdown formatting for headers 2017-03-22 15:49:19 +01:00
Chocobo1
272d53fdf8 Set cookie SID value to empty on logout
Set cookie SID expiration date to 1 day in the past on logout
2017-03-22 17:22:10 +08:00
Chocobo1
4e48408eaa Fire up the timer to clean inactive sessions 2017-03-22 17:21:10 +08:00
Chocobo1
e26b30a5f4 Refactor: initialize class variable directly 2017-03-22 17:20:28 +08:00
Chocobo1
e4d6fe2d02 Refactor: reorder headers 2017-03-22 17:20:27 +08:00
Chocobo1
e9bd75f4e1 Set HttpOnly attribute to SID cookie 2017-03-21 15:24:41 +08:00
Eugene Shalygin
7d19ee2e59 travis: add cmake build 2017-03-20 22:18:36 +01:00
Eugene Shalygin
8a106314ff travis: remove Qt4 leftover 2017-03-20 19:47:21 +01:00
Eugene Shalygin
17e6eba50a travis: use apt addon for libtorrent and Qt packages 2017-03-20 19:47:21 +01:00
Eugene Shalygin
b2ff058bc0 cmake: fix OSX bundle creation 2017-03-20 19:47:21 +01:00
Eugene Shalygin
5c0bf86405 cmake: remove qt4 leftover 2017-03-20 19:07:52 +01:00
epicgirl1998
f904cfa32d Remove extra space
fixes https://github.com/qbittorrent/qBittorrent/issues/6523
2017-03-17 03:43:49 +02:00
regs01
6fae4e6e5c Update options.nsi
dpi-aware installer
2017-03-15 08:33:27 +03:00
opengg
db3158c410 [WebUI] bugfix: RequestParser::splitMultipartData drop extra trailing newline. 2017-03-11 01:26:22 +08:00
Chocobo1
5a57f2ef64 Add basic support for EditorConfig 2017-03-09 20:52:20 +08:00
sledgehammer999
9eb01fbe4d Merge pull request #6489 from evsh/fix-fileguard
Fix TorrentFileGuard::setAutoRemove() recursion problem. Closes #6488.
2017-03-08 12:18:58 +02:00
sledgehammer999
61efc76b82 Merge pull request #6490 from evsh/cmake
Fix CMake build
2017-03-08 12:18:38 +02:00
Eugene Shalygin
3091e03a95 Fix CMake build 2017-03-08 09:12:49 +01:00
Eugene Shalygin
3752d112fb Fix TorrentFileGuard::setAutoRemove() recursion problem. Closes #6488.
The problem was created during Qt 4 drop, when FileGuard was promoted
from a member to a base class. The function was blindly changed.
2017-03-08 09:05:58 +01:00
Chocobo1
a16c557137 Always draw background 2017-03-08 14:36:42 +08:00
Chocobo1
2b2b3a4fe7 Fix downloaded/uploaded columns were not highlighted properly when selected.
Refactor
2017-03-08 14:36:09 +08:00
sledgehammer999
bc910798da Indicate bitness in stackstrace and about dialog. Closes #6172. 2017-03-08 01:01:17 +02:00
sledgehammer999
c37ff51004 Some improvements in travis.yml for macOS. Closes #6089. 2017-03-08 00:50:11 +02:00
sledgehammer999
a7dcf20ed1 Fix state of IP filter widgets. 2017-03-08 00:30:54 +02:00
sledgehammer999
729fbb2e50 Change named of getter function. 2017-03-08 00:16:25 +02:00
sledgehammer999
aa51907387 Merge pull request #6369 from magao/issue6367
Use Perl-compatible regexes for RSS rules. Closes #6367.
2017-03-08 00:04:17 +02:00
sledgehammer999
be60b3e046 Change the user-agent format in the session.cpp too. 2017-03-07 23:41:29 +02:00
sledgehammer999
147f4d76e2 Merge pull request #6445 from Chocobo1/fix
Follow http user-agent format
2017-03-07 23:38:14 +02:00
sledgehammer999
7a6da3d3ce Merge pull request #6479 from Chocobo1/qt4
Remove remainings of Qt4
2017-03-07 23:28:56 +02:00
sledgehammer999
b90db12ba0 Use a QTreeView and a sort proxy in the manually banned IP list to have a consistent sort order with QStringList::sor(). 2017-03-07 23:16:51 +02:00
sledgehammer999
431658bee6 Fix race condition where there was a chance to allow all ips between reparsings of the ip filter. 2017-03-07 23:16:50 +02:00
sledgehammer999
14513cd81f Allow edit of manually banned IPs regardless if an IP filter has been set. 2017-03-07 23:16:43 +02:00
sledgehammer999
5084c01c2b Merge pull request #5877 from dzmat/to_pull_request
locally banned IP list managment (Closes #1837 )
2017-03-07 23:14:20 +02:00
sledgehammer999
140187649d Merge pull request #6473 from FranciscoPombal/stats_webui
Implement statistics window in web UI
2017-03-07 22:51:57 +02:00
sledgehammer999
f3cbb7f9da Merge pull request #6384 from glassez/safe-macros
Remove exception suppressing from torrenthandle.cpp
2017-03-07 22:50:06 +02:00
sledgehammer999
b69b6d1f55 Revert "Set default locale". Closes #6436 and #6459.
This reverts commit 75ef6356d3.
2017-03-07 15:35:42 +02:00
Vladimir Golovnev (Glassez)
79e8f69fb6 Remove exception-suppress macros
Remove SAFE_* macros from TorrentHandle class.
These macros using seems to be unneeded.
2017-03-07 15:04:57 +03:00
Chocobo1
fa2128cbae Replace Utils::String::fromStdString() by QString::fromStdString() 2017-03-07 19:42:44 +08:00
sledgehammer999
610922e3dc Update stuff in appdata.xml and run 'appstream-utl upgrade' on it. 2017-03-06 20:58:03 +02:00
sledgehammer999
9839ef7292 Add keywords to the .desktop file. 2017-03-06 20:58:02 +02:00
Chocobo1
87384ca2a2 Replace Utils::String::toHtmlEscaped() by QString::.toHtmlEscaped() 2017-03-07 00:03:53 +08:00
Chocobo1
ffdcfe9686 Replace Utils::String::toStdString() by QString::toStdString() 2017-03-06 23:58:38 +08:00
Chocobo1
7539bee5c5 Remove remaining QBT_USES_QT5 defines.
Fixup of e64bb1de8c.
2017-03-06 23:47:07 +08:00
dzmat
59de1af31b implemented UI for managment of locally banned IP list (Closes #1837 ) 2017-03-06 19:40:34 +07:00
Chocobo1
70edf84d46 Add comment 2017-03-06 14:42:32 +08:00
Chocobo1
2091dfaa69 Follow http user-agent format
Add version variable without the starting "v"
2017-03-06 14:42:32 +08:00
Chocobo1
cb1646be32 Prepend QBT_ for preprocessor variables 2017-03-06 13:41:58 +08:00
FranciscoPombal
1ce71fc63e Implement statistics window in web UI 2017-03-06 03:05:18 +00:00
sledgehammer999
fc49856857 Merge pull request #6391 from Chocobo1/cert
Allow QSsl::Ec as private key format
2017-03-06 01:22:09 +02:00
sledgehammer999
fa1149e1f2 Remove remnant of qt4 version checking. 2017-03-06 00:53:25 +02:00
sledgehammer999
8b6d7ab809 Merge pull request #6266 from evsh/drop-qt4
Drop qt4
2017-03-06 00:50:19 +02:00
Eugene Shalygin
008d7dbedc Raise minimal Qt version to 5.5.1 2017-03-05 22:24:59 +01:00
Eugene Shalygin
e64bb1de8c Drop Qt 4 support 2017-03-05 22:24:59 +01:00
sledgehammer999
60998a68eb Merge pull request #6417 from Chocobo1/manifest
Embed manifest when compiling with MSVC
2017-03-05 19:40:35 +02:00
sledgehammer999
922fec44d2 Merge pull request #6447 from buinsky/master
WebUI: Improve performance of updating 'progress' column
2017-03-05 14:46:30 +02:00
sledgehammer999
22989a436e Merge pull request #6461 from Chocobo1/rand_fix
Workaround thread_local on osx
2017-03-05 14:43:29 +02:00
sledgehammer999
bf3ef61a1d Merge pull request #6455 from Chocobo1/qt4
Fix issues when compiling with Qt4
2017-03-05 14:42:17 +02:00
Chocobo1
cae2f3059c Workaround thread_local not supported on OSX
Drop back to xcode7.3 on TravisCI
2017-03-04 20:37:48 +08:00
buinsky
b6c6b70915 Improve performance of updating 'progress' column 2017-03-04 12:19:36 +03:00
Chocobo1
3b5e7eb0ea Fix compile error: ‘escape’ is not a member of ‘Qt’ 2017-03-04 16:22:00 +08:00
Chocobo1
ea9d65f377 Fix incomplete type compile error with Qt4 2017-03-04 16:20:36 +08:00
Chocobo1
38063c388e Capitalize title strings
Remove DISCARDABLE keyword which is ignored on 32-bit windows
2017-03-04 13:17:55 +08:00
Chocobo1
7da29f7654 Embed manifest when compiling with MSVC
Update manifest
2017-03-04 13:09:32 +08:00
sledgehammer999
76e1c3b10b Install qbittorrent-tray.png files. Fixes commit ada75cbbe1. 2017-03-04 00:02:11 +02:00
sledgehammer999
5c730f984d Bump API_VERSION to 12. 2017-03-03 22:31:58 +02:00
Chocobo1
0fb3b18a8f Utilize escapeHtml 2017-03-03 21:28:32 +02:00
Chocobo1
6ca3e4f094 Add Utils::String::toHtmlEscaped 2017-03-03 21:28:30 +02:00
Chocobo1
eba45a0b26 Cleanup 2017-03-03 21:28:29 +02:00
Chocobo1
7756dd80f3 [WebUI]: add X-XSS-Protection, X-Content-Type-Options, CSP header 2017-03-03 21:28:28 +02:00
ngosang
f5ad04766f [WebUI] Avoid clickjacking attacks 2017-03-03 21:28:27 +02:00
Chocobo1
f9c39e3dac [WebUI]: exclude insecure ciphers 2017-03-03 21:28:26 +02:00
Chocobo1
84bc011df5 Code formatting
Remove extra private keyword
2017-03-03 21:28:25 +02:00
sledgehammer999
31b69ae6f6 Update copyright year. 2017-03-03 21:26:38 +02:00
sledgehammer999
82edc5c495 Sync translations from Transifex and run lupdate. 2017-03-03 21:13:31 +02:00
sledgehammer999
884ca03624 Merge pull request #6443 from ngosang/extratorrent
[Search engine] Update Extratorrent plugin
2017-03-03 02:35:16 +02:00
ngosang
f0fe8808bd [Search engine] Update Extratorrent plugin 2017-03-02 21:21:33 +01:00
sledgehammer999
b5f81a34cb Use new create_torrent constructor were available. 2017-02-22 19:25:50 +02:00
sledgehammer999
ad4b691fa5 Merge pull request #6413 from evsh/no-proxy-in-webui-server
Disable proxy in WebUI HTTP server. Closes #6349.
2017-02-21 13:15:22 +02:00
Eugene Shalygin
be8eab4e54 Disable proxy in WebUI HTTP server. Closes #6349.
Due to a bug in Qt 5.8 (QTBUG-58706) QTcpServer tries to use HTTP proxy
when it is set as default app proxy (for instance via "http_proxy"
environment variable) and this breaks the server. So we disable any proxy
in it.
2017-02-21 00:07:09 +01:00
sledgehammer999
9e56f3d318 Merge pull request #6385 from thalieht/Trackerlist
Trackerlist: Seperate seeds from peers for DHT, PeX, LSD
2017-02-20 01:53:54 +02:00
sledgehammer999
4adcd03ec7 Merge pull request #6366 from Chocobo1/rand
Replace rand()
2017-02-20 01:49:27 +02:00
Chocobo1
759bf4d73d Allow to load/use ECDSA certificate in webUI.
Limit max read size
Improve messages in dialogs
Refactor
2017-02-17 12:23:51 +08:00
Chocobo1
7d2a393532 Enable thread_local support in TravisCI 2017-02-16 12:21:27 +08:00
Chocobo1
511796f74e Replace rand() by a true uniform distribution generator 2017-02-16 12:21:26 +08:00
Chocobo1
c7d10dc091 Turn off port forwarding of WebUI by default for GUI users 2017-02-16 12:21:26 +08:00
thalieht
4f1c428d8f Seperate seeds from peers for DHT, PeX and LSD 2017-02-15 21:24:47 +02:00
sledgehammer999
54e99f2510 Merge pull request #6373 from murlakatamenka/master
Update mainwindow.h (remove duplicate declaration)
2017-02-13 01:34:13 +02:00
murlakatamenka
78438d7044 Update mainwindow.h (remove duplicate declaration) 2017-02-11 21:36:52 +03:00
Tim Delaney
a844ccb06a Cache rule regular expressions for performance
--HG--
branch : magao-dev
2017-02-11 18:43:50 +11:00
Tim Delaney
f9abd254f4 Use Perl-compatible regexes for RSS rules. Closes #6367.
--HG--
branch : magao-dev
2017-02-11 16:33:18 +11:00
sledgehammer999
d045f64ebb Merge pull request #6288 from Falcosc/fix_add_torrent_queue_overflow
fix queue overload for add torrent at session start
2017-02-08 22:46:58 +02:00
falco
ee239ddd1e fix queue overload for add torrent at session start 2017-02-08 15:13:21 +00:00
sledgehammer999
73f762250c Merge pull request #6358 from Chocobo1/coverity
Fix issues on coverity
2017-02-08 15:34:45 +02:00
sledgehammer999
c39056f1a8 Merge pull request #6344 from magao/issue6337
Fix regex RSS matching. Closes #6337.
2017-02-08 15:21:07 +02:00
Chocobo1
4ad541d066 Fix coverity issues
torrentcontentmodel: Use a variable to store filesCount
optionsdlg: add fallthrough comment to suppress warning
speedPlotview: initialize member
misc: fix wrong type used, add spaces
2017-02-08 13:49:47 +08:00
Chocobo1
cab10aa7b4 Use QString::toStdString()
Qt5 utilized the desired toUtf8() instead of toAscii().
2017-02-08 13:21:36 +08:00
sledgehammer999
f78bf27daf Merge pull request #6326 from magao/issue3782
RSS rules and feed UI bugfixes. Closes #3782, #6281.
2017-02-07 16:31:30 +02:00
sledgehammer999
92cfd1f602 Regenerate configure. 2017-02-06 23:07:43 +02:00
sledgehammer999
49332ab12c Use @naikel's suggestions for previous commit. 2017-02-06 23:07:42 +02:00
sledgehammer999
32b7f0745f Merge pull request #4631 from DoctorWho11/master
fixes qmake pathing and also fixes a type in configure.ac
2017-02-06 23:06:49 +02:00
sledgehammer999
f6a941defc Merge pull request #6294 from thalieht/hotkeys
Add hotkeys for some things. Closes #2090
2017-02-06 22:41:30 +02:00
sledgehammer999
cf9e8abea1 Merge pull request #6351 from evsh/cmake
cmake: read version numbers from the version.pri file. Closes #6350.
2017-02-06 22:35:17 +02:00
Eugene Shalygin
e96e14ca76 cmake: read version numbers from the version.pri file. Closes #6350. 2017-02-06 21:30:26 +01:00
sledgehammer999
01ddf23745 Remove unnecessary semicolon. 2017-02-06 18:52:04 +02:00
sledgehammer999
83009adbc0 Use same casting method and fix code style. 2017-02-06 18:52:03 +02:00
sledgehammer999
c8f955e302 Fix previous commit. 2017-02-06 18:51:56 +02:00
thalieht
0240c87095 TransferListWidget: Some coding style 2017-02-06 17:52:40 +02:00
thalieht
5675021895 enable RSS, Search and Execution Log widgets before switching to them via hotkeys 2017-02-06 17:52:40 +02:00
sledgehammer999
12b73747f5 Merge pull request #3058 from VladimirSinenko/master
Fixed sort order for datetime columns with empty values (closes #2988)
2017-02-06 17:49:26 +02:00
sledgehammer999
179b686e42 Merge pull request #6176 from magao/issue873
Improve UI responsiveness during RSS downloading. Closes #873, #1089, #1235, #5423
2017-02-06 16:17:08 +02:00
sledgehammer999
2a7f4217df Merge pull request #6321 from magao/rss_icon_themed
Rss icon themed
2017-02-06 10:08:33 +02:00
sledgehammer999
d880372b49 Fix unused variable warning by gcc. 2017-02-06 01:20:31 +02:00
sledgehammer999
fa8c69a5e1 Merge pull request #6315 from glassez/cat-tree-state
Fix category filter widget doesn't save on/off state
2017-02-06 00:13:59 +02:00
sledgehammer999
25c7c297e8 Merge pull request #6317 from dzmat/public_to_private
reduce methods accessibility from public to private
2017-02-06 00:11:38 +02:00
sledgehammer999
bcd6baa793 Merge pull request #6340 from Chocobo1/contentSort
Use case-insensitive comparsion for torrent content window
2017-02-05 23:12:55 +02:00
sledgehammer999
5046c36458 Immediately update torrent_status after manipulating super seeding mode. Partially fixes #6072. 2017-02-05 22:02:33 +02:00
Tim Delaney
c0339d4f6a Fix regex RSS matching. Closes #6337.
--HG--
branch : magao-dev
2017-02-05 08:53:33 +11:00
Chocobo1
976504498a Use case-insensitive comparsion for torrent content window.
Closes #6327
2017-02-03 23:40:22 +08:00
sledgehammer999
52b1bb2ae4 Merge pull request #6319 from magao/pr6181_bugfix
Fix compilation error on Qt<5.4. Closes #6170.
2017-02-03 01:22:25 +02:00
dzmat
b167b4174e reduce methods accessibility from public to private 2017-01-29 15:17:55 +07:00
Tim Delaney
0fb8810c52 Resize RSS icon to fit theme.
--HG--
branch : magao-dev
2017-01-29 13:56:01 +11:00
thalieht
2bb2d3fc89 change all existing shortcuts to use Qt::Keys 2017-01-28 19:43:16 +02:00
Tim Delaney
5d185f1fcd Fix compilation error on Qt<5.4. Closes #6170.
--HG--
branch : magao-dev
2017-01-27 14:24:51 +11:00
sledgehammer999
3b3de81cb7 Merge pull request #6181 from magao/issue6170
RSS episode filter improvements. Closes #800, #2749, #3876, #6170.
2017-01-26 01:02:05 +02:00
sledgehammer999
769fe17a21 Merge pull request #6179 from magao/issue6165
RSS use red text to indicate invalid filter. Closes #6165.
2017-01-25 23:28:57 +02:00
sledgehammer999
354702140a Merge pull request #6180 from magao/issue6171
Allow | in RSS must contain. Closes #6171.
2017-01-25 23:27:59 +02:00
sledgehammer999
5df8ad32fe Merge pull request #6183 from magao/issue6163
Save rule on enable/disable even if not selected. Closes #6163.
2017-01-25 23:25:49 +02:00
sledgehammer999
b9b8352a31 Merge pull request #6184 from magao/issue5539
RSS: allow resetting rule to no category. Closes #5539.
2017-01-25 23:20:19 +02:00
sledgehammer999
eb3f4b8490 Merge pull request #6283 from Chocobo1/sort
Use case-insensitive sort for Name column in Search tab. Closes #407.
2017-01-25 23:07:11 +02:00
sledgehammer999
6c05b5f083 Merge pull request #6286 from ngosang/fix_webui
[Web UI] Fix category in torrent upload. Closes #6260
2017-01-25 23:06:50 +02:00
sledgehammer999
14ebf2118a Merge pull request #6289 from evsh/cmake
Cmake compilation fixes
2017-01-25 23:06:21 +02:00
thalieht
c87cdaea23 add hotkeys for Trackerlist Peerlist etc. 2017-01-25 11:33:33 +02:00
thalieht
0fdd3e23ff add hotkey for execution log tab 2017-01-25 11:33:33 +02:00
thalieht
beddee8dd4 Transferlist: add hotkeys for double click and recheck selected torrents 2017-01-25 10:42:32 +02:00
thalieht
ed900d3e86 change torrentDoubleClicked() so it can be used in a hotkey 2017-01-25 10:11:19 +02:00
ngosang
e6e0ecfaea [Web UI] Fix category in torrent upload. Closes #6260 2017-01-22 14:20:48 +01:00
Vladimir Golovnev (Glassez)
d79297db1a Save/load category filter widget state 2017-01-22 14:59:03 +03:00
Tim Delaney
f96eb587ff Bugfix RSS feed list and rules editor. Closes #3782, #6281.
--HG--
branch : magao-dev
2017-01-22 15:36:27 +11:00
Tim Delaney
e4d9e9f63f Follow project coding style. Issue #2192.
--HG--
branch : magao-dev
2017-01-29 09:24:41 +11:00
Chocobo1
4669a99617 Use case-insensitive sort for Name column in Search tab. Closes #407. 2017-01-22 11:48:01 +08:00
sledgehammer999
077ad6506c Merge pull request #6175 from magao/issue6167
Move old RSS items to separate config file. Closes #6167.
2017-01-22 04:47:52 +02:00
sledgehammer999
043ae1eb17 Merge pull request #6278 from Falcosc/fix_incompleate_file_crash
fix index overflow for torrents with invalid meta data or empty progress
2017-01-22 01:14:16 +02:00
sledgehammer999
e64b1f5ca1 Merge pull request #6185 from magao/issue5797
Ctrl+F search filter. Closes #5797.
2017-01-22 01:12:41 +02:00
Eugene Shalygin
180ec7af4a cmake: RSS target has to depend on qbt_base as it uses its includes 2017-01-21 20:12:48 +01:00
Eugene Shalygin
eff13cc9eb cmake: fix boost components manipulations in FindLibtorrentRasterbar.cmake
The list of components which we pass to find_package() has to be semicolon
separated (i.e. to be the usual cmake list)
2017-01-21 20:11:48 +01:00
Eugene Shalygin
19c5e71a76 cmake: make some compile definitions global in Windows 2017-01-21 20:05:28 +01:00
sledgehammer999
7be27f7770 Merge pull request #6280 from ngosang/fix_search
[Search engine] Update extratorrent plugin. Closes #6261
2017-01-21 20:40:04 +02:00
ngosang
a9c5dab0dd [Search engine] Update extratorrent plugin. Closes #6261 2017-01-21 19:27:14 +01:00
sledgehammer999
9225d9ab2b Merge pull request #6279 from evsh/cmake
cmake: compilation fixes
2017-01-21 18:28:54 +02:00
Eugene Shalygin
13d9dea8ac cmake: make LibtorrentRasterbar::LibTorrent public dependency of qbt_base
If libtorrent include directory not in the compiler search path, we have
to pass it to all qbt targets, because session.h includes
libtorrent/version.hpp
2017-01-21 16:40:44 +01:00
Eugene Shalygin
0cb9884965 cmake: get and use only actual boost dependencies of libtorrent
With pkg-config we can get a list of Boost components from Libtorrent
dependencies and make qBittorrent depend only on these libraries in
turn. For Windows user may provide a custom list via
LibtorrentRasterbar_CUSTOM_BOOST_DEPENDENCIES variable or use generic
list which consists of date_time, system, chrono, random, thread. As a
note: in case of using fully C++11 build, the actual list contains only
boost system library.
2017-01-21 15:20:40 +01:00
sledgehammer999
87e454cc6d Merge pull request #5547 from buinsky/master
WebUI: Implement adjustable dynamic table columns
2017-01-21 16:12:12 +02:00
sledgehammer999
b625c4c662 Merge pull request #3162 from ngosang/trackers_tab
Display more information in tracker tab
2017-01-21 15:59:05 +02:00
buinsky
484e021ca2 Avoid lags in firefox on resizing progress column 2017-01-21 16:37:34 +03:00
Falco
84759d4f20 fix index overflow for torrents with invalid meta data or empty progress 2017-01-21 14:35:09 +01:00
buinsky
741e0a08ea Remove 300px limit of column width 2017-01-21 16:21:46 +03:00
buinsky
7628490def Fix scrollbar covers menu item with long text 2017-01-21 15:57:02 +03:00
buinsky
d50a7778fe Implement resizable progress bar in "Done" column 2017-01-21 15:57:02 +03:00
buinsky
09cf93521f Follow project coding style. Issue #2192. 2017-01-21 15:57:02 +03:00
buinsky
e65a628bf9 Add a vertical separator between columns 2017-01-21 15:57:02 +03:00
buinsky
bdf736b7d7 Prevent text wrapping in menus 2017-01-21 15:57:02 +03:00
buinsky
3dfcd6db6a Make too tall menus scrollable 2017-01-21 15:57:02 +03:00
buinsky
134e4c1eb9 Add some missing columns to dynamic tables 2017-01-21 15:57:02 +03:00
buinsky
a087d146df Fix columns names 2017-01-21 15:57:02 +03:00
buinsky
3ac87f22cb Implement dynamic table columns hiding 2017-01-21 15:57:02 +03:00
buinsky
56b885995c Implement dynamic table columns reordering 2017-01-21 15:57:02 +03:00
buinsky
56c07704d8 Implement dynamic table columns resizing 2017-01-21 15:57:02 +03:00
buinsky
c765d8ebe2 Add tooltips to dynamic table header 2017-01-21 15:57:02 +03:00
buinsky
dd1959abfb Make torrent peers table scrollable horizontally 2017-01-21 15:57:02 +03:00
buinsky
b1c45901f0 Simplify dynamic table CSS styles 2017-01-21 15:57:01 +03:00
sledgehammer999
5b35981c85 Merge pull request #5774 from thalieht/unit_precision
Increase number of digits after the decimal point. Closes #5053
2017-01-21 14:05:26 +02:00
sledgehammer999
75d0414da3 Merge pull request #6275 from evsh/fix-icon-names
Replace icon name "open-menu" with "preferences-system"
2017-01-21 14:02:14 +02:00
thalieht
f8213f5d56 friendlyUnit: Properly replace spaces with non-breaking spaces 2017-01-21 12:03:05 +02:00
thalieht
311b060c70 Increased number of digits after the decimal point for Gibibytes and above 2017-01-21 12:02:15 +02:00
buinsky
7aadf644e0 Make torrents table scrollable horizontally 2017-01-21 11:19:43 +03:00
buinsky
afd4f89693 Rename variables in DynamicTable class 2017-01-21 11:19:42 +03:00
sledgehammer999
f4fa000ba3 Polish previous commit. 2017-01-21 02:59:33 +02:00
sledgehammer999
68ecbf4185 Merge pull request #5420 from thalieht/alignment
Changes and additions in search, peerlist, transferlist
2017-01-21 02:58:32 +02:00
sledgehammer999
cccc019e5d Merge pull request #6276 from evsh/cmake
Fix cmake compilation
2017-01-21 02:10:16 +02:00
Eugene Shalygin
68e8f565e2 Fix cmake compilation 2017-01-21 00:32:00 +01:00
sledgehammer999
cb0f73da57 Merge pull request #5613 from glassez/cat_tree
Implement category filter widget. Closes #5444.
2017-01-20 23:21:31 +02:00
sledgehammer999
c8ddd68a7a Merge pull request #6212 from magao/issue2192
Follow project coding style. Issue #2192.
2017-01-20 23:13:06 +02:00
Eugene Shalygin
a6b6009fb1 Replace icon name "open-menu" with "preferences-system"
Apparently, we can not use symbolic icons transparently.
2017-01-20 20:02:49 +01:00
sledgehammer999
1376d8fa7b Merge pull request #6084 from Chocobo1/set_locale
Set default locale
2017-01-20 20:14:20 +02:00
Vladimir Golovnev (Glassez)
c002f30848 Implement category filter widget
Show categories in tree mode when subcategories are enabled.
2017-01-20 20:55:01 +03:00
sledgehammer999
8d58c52ad8 Merge pull request #6249 from bil-elmoussaoui/master
Fixes default indicator name
2017-01-20 19:10:45 +02:00
sledgehammer999
96f9984823 Fix preferences icon loading in WebUI. 2017-01-20 18:54:36 +02:00
sledgehammer999
824b90b643 Merge pull request #6269 from Chocobo1/icons
Fix new icons too large
2017-01-20 18:33:35 +02:00
sledgehammer999
05def34697 Merge pull request #6157 from Chocobo1/speedLimit
Speedlimitdlg: raise slider default value to 10000
2017-01-20 18:24:42 +02:00
sledgehammer999
cb7cadfc54 Merge pull request #6272 from BanzaiMan/patch-1
Allow some Mac jobs to fail
2017-01-20 17:12:14 +02:00
Hiro Asari
7f7b63b172 Allow some Mac jobs to fail
Put `allow_failures` in the correct place.
2017-01-20 09:11:18 -05:00
Chocobo1
ca77a315d9 Fix download & upload icon too large on statusbar in webui 2017-01-20 14:04:32 +08:00
Chocobo1
35921c70fe Remove trailing spaces 2017-01-20 14:04:05 +08:00
Chocobo1
0517a3eb63 Fix rss icon too large in rss settings dialog
Give a name to the rss icon (in .ui file)
Add helper function: Utils::Misc::largeIconSize()
Group functions under the same #ifdef
2017-01-20 13:45:50 +08:00
Chocobo1
d52a74092b Reset values to default, these are controled elsewhere. 2017-01-19 23:42:12 +08:00
sledgehammer999
7d7f82ae46 Fix finding 'English' item in language dropdown menu when an unrecognized locale is requested. Closes #6109. 2017-01-19 17:22:40 +02:00
sledgehammer999
fed325a54d Merge pull request #6140 from Chocobo1/relocateNoRemove
After files relocate, don't remove the old folder even if it is empty
2017-01-19 15:52:09 +02:00
sledgehammer999
f1942bc0e0 Merge pull request #6104 from okeatime/mac_nox
Build qbittorrent-nox for macOS
2017-01-19 15:49:47 +02:00
sledgehammer999
dcab1da8ab Merge pull request #6138 from Chocobo1/stats2
Use the numbers from tracker scrape response
2017-01-19 11:49:47 +02:00
Chocobo1
a2bb947dcc After files relocate, don't remove the old folder even if it is empty. 2017-01-19 14:21:04 +08:00
Chocobo1
fa45ba102c Refactor 2017-01-19 14:21:04 +08:00
Chocobo1
75ef6356d3 Set default locale 2017-01-19 13:33:34 +08:00
Chocobo1
e37a696e7d Refactor
Move default value to preference class
Rename variable
Reorder headers
Remove extra parentheses
2017-01-19 13:33:34 +08:00
Chocobo1
72a6f7ae24 Use the numbers from tracker scrape response. Closes #5048, #6117.
Add comments
Thanks to Ian Kent for helping investigate
2017-01-19 13:17:50 +08:00
Chocobo1
ecd49148d0 Fix webUI used the wrong value. Closes #6232. 2017-01-19 13:17:39 +08:00
sledgehammer999
a178268b31 Merge pull request #5959 from dzmat/DRY_fix_minor
Little DRY violation fixed
2017-01-19 01:49:21 +02:00
sledgehammer999
ba03fb30f3 Merge pull request #5987 from Chocobo1/temp_dir
Put temp files in .qBittorrent directory
2017-01-19 01:33:57 +02:00
sledgehammer999
a092cb9bda Remove settings to exchange trackers. It wasn't used by non-libtorrent clients. Also it has a privacy risk and you might be DDoSing someone. DHT makes it obsolete anyway. 2017-01-19 01:13:55 +02:00
sledgehammer999
7c75ee20e3 Merge pull request #6076 from evsh/warn-if-no-function-names
Warn if no function names are present in the stacktrace
2017-01-19 00:33:12 +02:00
sledgehammer999
18d9403a58 Merge pull request #6098 from dzmat/rename_tab_names
Clarify options tab page objects names
2017-01-19 00:14:30 +02:00
sledgehammer999
b5bf6df058 Merge pull request #6139 from Chocobo1/warnings
Fix compile warning: unused parameter ‘action’
2017-01-18 23:42:58 +02:00
sledgehammer999
b88b7d4af7 Merge pull request #6262 from evsh/resume-fixes
Resume fixes
2017-01-18 22:21:15 +02:00
sledgehammer999
c43cfbad17 Merge pull request #6182 from magao/issue6164
Fix tab order in RSS downloader. Closes #6164.
2017-01-18 20:08:06 +02:00
Eugene Shalygin
b6e64c13d8 Fetch torrent status when generating final fastresume data
This is done to get correct queue position, which has to be written into
the fastresume file. See discussion in #6154.
2017-01-18 18:59:03 +01:00
sledgehammer999
bfec8b8588 Merge pull request #6161 from okeatime/tr
Avoid unnecessary translation. Closes #6158
2017-01-18 19:50:40 +02:00
sledgehammer999
a33ff12123 Merge pull request #6203 from okeatime/webui_proxy
Webui proxy_type bug fix
2017-01-18 19:15:50 +02:00
sledgehammer999
d686f2dda6 Merge pull request #6250 from evsh/fix-icon-names
Fix icon rendering in Linux
2017-01-18 19:07:41 +02:00
Eugene Shalygin
9bab229108 Adjust icons names to better fit FDO scheme
An icon theme may use variously styled icons for various types of UI
elements. For example, Breeze theme uses monochrome icons for actions
(toolbars) and statuses, but colourful for view contents. qBittorrent
was using icon names without putting attention to categories, creating
mix of styles in UI elements (i.e. the main toolbar).

This commit fixes icon names (and move some of them to theme) to avoid
this style mixes where possible.

Unfortunately, options dialog page icons for network and speed limits
are remained monochrome because there are no Breeze or Adwaita icons to
match.
2017-01-18 18:03:33 +01:00
Eugene Shalygin
6cd233dd61 Add queue repair code
This is a bit adjusted code created by nxd4, who shared it in issue
disappearing).
2017-01-18 17:27:20 +01:00
sledgehammer999
7d55467f4b Merge pull request #6234 from Chocobo1/scroll
For each cell setting ignore wheel events. Closes #866.
2017-01-18 17:40:02 +02:00
Eugene Shalygin
3de105704e Do not resize SVG icons
An icon which is loaded from SVG file can be rendered in any size and
resolutions natively. We were generating 16x16, 24x24, and 32x32
pixmaps, and not appending but creating new icon. Therefore for SVG
icons we effectively were reducing their quality.

If icon already contains 7 (or more) sizes (16 to 256 px) we do not
resize it anymore.
2017-01-18 10:26:35 +01:00
Eugene Shalygin
9d3378bd3b Support fallback when selecting theme icons
Fallback icon theme are not supported everywhere. Hence we mimic
signature of QIcon::fromTheme().
2017-01-18 10:26:24 +01:00
sledgehammer999
3c1f747c25 Merge pull request #6235 from Chocobo1/systray_too_large
Fix icon issues
2017-01-18 03:25:58 +02:00
sledgehammer999
5a611b66a5 Merge pull request #6252 from evsh/fix-6248
Do not remove added files unconditionally. Closes #6248
2017-01-18 02:42:10 +02:00
Bilal Elmoussaoui
ada75cbbe1 fixes default indicator name
copy icons instead of renaming them, create status folder

rename from *-indicator to *-tray
2017-01-18 01:13:43 +01:00
Eugene Shalygin
4c13f155ff Do not remove added files unconditionally. Closes #6248
If removing of added torrents is enabled and dialog for adding torrents
is disabled, file guard was assuming that torrent is added successfully.
And that can be not the case if a user trying to add a broken torrent
file (or not a torrent file at all). Then this file gets deleted always.

Fix this by checking result of addTorrent_impl().
2017-01-18 00:04:26 +01:00
Chocobo1
df274e6457 Fix statusIcon too large. Closes #6228. 2017-01-13 22:53:24 +08:00
Chocobo1
8380edc00c For each cell setting ignore wheel events. Closes #866. 2017-01-13 17:47:46 +08:00
Chocobo1
08aaff379b Fix download & upload icon too large in systray on linux. Closes #6233. 2017-01-13 16:59:59 +08:00
sledgehammer999
33ada71e4b Fix Travis macOS builds. 2017-01-12 02:40:44 +02:00
sledgehammer999
e230cde6c4 Merge pull request #6108 from evsh/fix-6103
Workaround problem with moc from Qt4 and #if. Closes #6103, #5451
2017-01-12 02:08:59 +02:00
Eugene Shalygin
de403dcd9d Workaround problem with moc from Qt4 and #if
moc from Qt4 ignores Q_ENUMS when it is behind #if QT_VERSION check.
Therefore moc entries for enum in TorrentFileGuard were not generated
and the setting was not saving/loading. This closes #6103, #5451
2017-01-12 00:42:37 +01:00
sledgehammer999
48c2901d09 Allow build failures for qt4 and osx for Travis. 2017-01-12 01:12:06 +02:00
sledgehammer999
ca937b72ef Use custom qt5 bottle for homebrew (macOS) on Travis. 2017-01-12 00:59:28 +02:00
sledgehammer999
28547f4ec5 Add template for issues. 2017-01-11 20:11:59 +02:00
sledgehammer999
c384cc8c8c Move new icons to their own theme folder. 2017-01-11 18:02:26 +02:00
sledgehammer999
69da12e6b2 Merge pull request #4253 from bertyhell/stylized-icons-main-bar
Switching to stylized icons
2017-01-11 18:01:35 +02:00
sledgehammer999
bf102be567 Merge pull request #6221 from evsh/fix-qt5-log-flood
Set upper version limit for QTBUG-52633
2017-01-11 01:41:46 +02:00
Eugene Shalygin
7b594a635e Set upper version limit for QTBUG-52633
The bug seems to be fixed in version 5.7.1.
2017-01-11 00:14:16 +01:00
Tim Delaney
70ce12372d Follow project coding style. Issue #2192.
--HG--
branch : magao-dev
2017-01-08 11:46:01 +11:00
Bert Verhelst
7fb3962192 Merge branch 'master' of https://github.com/qbittorrent/qBittorrent 2017-01-06 20:14:15 +01:00
Oke Atime
84fe40c492 Webui proxy_type bug fix 2017-01-05 18:43:54 +09:00
Tim Delaney
8949a8ad75 RSS: allow resetting rule to no category. Closes #5539.
--HG--
branch : magao-dev
2016-12-31 16:58:01 +11:00
Tim Delaney
2244b7cb66 RSS episode filter refactoring and logging (prep for later commits).
--HG--
branch : magao-dev
2016-12-31 18:01:22 +11:00
Oke Atime
e89c32685b Avoid unnecessary translation. Closes #6158 2016-12-31 01:29:47 +09:00
Chocobo1
14a39ba3c3 Speedlimitdlg: raise slider default value to 10000. Closes #6150.
Old value 1000 (KB/s) can be a bit small for modern internet.
2016-12-30 13:41:27 +08:00
Chocobo1
e178e70053 Code rewrite, no behavior change 2016-12-30 13:35:47 +08:00
sledgehammer999
88b2b26007 Don't use hardcoded numbers to refer to columns. 2016-12-30 01:37:26 +02:00
sledgehammer999
2d37a39e43 Allow to change priority for unselected files through the combobox like it is done via the context menu. 2016-12-30 01:37:19 +02:00
sledgehammer999
7ba66e692f Always show progress and remaining bytes for unselected files. 2016-12-30 01:37:13 +02:00
sledgehammer999
3e375128c0 Use a disabled progressbar's palette for unselected files.
Thanks to evsh(Eugene Shalygin) for example code.
2016-12-30 01:37:02 +02:00
sledgehammer999
cd88b5595c Update gpg key with new uid. 2016-12-27 16:56:35 +02:00
Chocobo1
bc41e2034c Fix warning: unused parameter ‘action’ [-Wunused-parameter] 2016-12-27 20:19:20 +08:00
sledgehammer999
132cc7f788 Merge pull request #6099 from evsh/cmake
cmake: make prefix variables cached
2016-12-26 13:39:15 +02:00
Oke Atime
5f767b96f6 Build qbittorrent-nox for macOS 2016-12-22 23:23:21 +09:00
Eugene Shalygin
7ed5c65b10 cmake: make prefix variables cached
This allows user to override their default value via -D cmake switch
2016-12-19 17:08:23 +01:00
dzmat
6ce443424b Clarify options tab page objects names 2016-12-19 19:00:03 +07:00
sledgehammer999
7adb1d7f82 WINDOWS: Make the updater to look for the x64 installer if running x64 version. 2016-12-17 19:46:04 +02:00
Eugene Shalygin
05dbea390b Print warning to the user if stacktrace contains no function names
Count matched function names, and if there are no, point out to the user
that the stacktrace is useless. If not all stactrace elements contain
function names, suggest user that installing debug packages may improve
the stacktrace usefulness.
2016-12-17 17:46:05 +01:00
Eugene Shalygin
514de7edc4 Follow project coding style. Issue #2192. 2016-12-17 17:29:43 +01:00
sledgehammer999
d330ae2421 Merge pull request #6056 from okeatime/resume_pause
Make resume/pause menu items clickable. Closes #6040
2016-12-16 14:59:08 +02:00
Oke Atime
5ae35ea6dc Make resume/pause menu items clickable. Closes #6040 2016-12-16 21:50:09 +09:00
sledgehammer999
0f0bb7277a Merge pull request #6057 from okeatime/client_sort
Case insensitive sort for client clumn. Closes #6054
2016-12-15 13:29:25 +02:00
Oke Atime
84da355f4c Case insensitive sort for client clumn. Closes #6054 2016-12-15 15:25:30 +09:00
sledgehammer999
4f59caf3ca Fix share ratio limiting. Broken by commit 259b5e51c4. Closes #6039 #6048. 2016-12-15 00:04:50 +02:00
sledgehammer999
b2827702e5 Correctly migrate settings/rss/usage stats in macOS. Closes #6041. 2016-12-14 17:51:49 +02:00
sledgehammer999
435886bbf0 Fix GUI for proxy settings. Closes #6045. 2016-12-14 17:35:23 +02:00
sledgehammer999
5c4db0fa17 Fix slider for per torrent speed limits when no global speed limit has been set. Closes #6046. 2016-12-14 17:18:34 +02:00
sledgehammer999
26e8072c84 Merge pull request #5332 from evsh/fix-qt5-log-flood
Add a workaround for QTBUG-52633, qBt issue #5073
2016-12-13 19:37:17 +02:00
Eugene Shalygin
9a123c42c3 Add a workaround for QTBUG-52633, qBt issue #5073
The QTBUG-52633 results in food of network interface changed events, libtorrent IP
rebind calls and flood in the qBt log. The work around is the check not only for
interface name, but for IP address on that interface before triggering the libtorrent rebind.
2016-12-13 17:18:58 +01:00
sledgehammer999
283511116e New translations: Icelandic, Latvian, Malay, Occitan, Uzbek
Also re-run lupdate.
2016-12-13 02:09:28 +02:00
sledgehammer999
77da1afae5 Sync translations from Transifex and run lupdate. 2016-12-13 01:02:06 +02:00
sledgehammer999
0caf03130c Bump API_VERSION and API_VERSION_MIN to 11. 2016-12-12 22:11:06 +02:00
sledgehammer999
d88ec48468 Polish previous commit. 2016-12-11 23:24:55 +02:00
sledgehammer999
5a006d5980 Merge pull request #5810 from ghost/macOSpref
Change QSettings to IniFormat on macOS. Closes #5770 #5808
2016-12-11 23:23:22 +02:00
sledgehammer999
4e8ca90b23 Merge pull request #5958 from dzmat/auto_ptr_eviction
minimizing the number of warnings about deprecated auto_ptr
2016-12-10 21:23:42 +02:00
sledgehammer999
07edb7b74e Merge pull request #6010 from Chocobo1/warnings
Fix memory leak
2016-12-10 21:22:41 +02:00
dzmat
abeff99ba0 minimizing the number of warnings about deprecated auto_ptr 2016-12-08 19:24:52 +07:00
Chocobo1
5cf86d3677 Change Utils::Fs::freeDiskSpaceOnPath() signature
refactor the function internals
2016-12-08 15:36:34 +08:00
thalieht
9f06d0d47b SearchTab: can now save sorting column changes 2016-12-07 18:39:03 +02:00
thalieht
f523685414 PeerListDelegate: fix coding style in whole file 2016-12-07 18:39:03 +02:00
thalieht
a90100a0b7 PeerList: allow to hide zero values for the "uploaded" and "downloaded" columns 2016-12-07 18:25:18 +02:00
thalieht
1652425cee TransferListWidget: keep columns width even if they are hidden on qBittorrent startup (unless something goes wrong) 2016-12-07 18:19:54 +02:00
thalieht
c90794878f SearchTab: Allow to toggle columns in searchtab 2016-12-07 18:19:54 +02:00
thalieht
b2144f7928 SearchTab: use saveSettings() and loadSettings() to handle header state 2016-12-07 18:19:54 +02:00
thalieht
5255719661 SearchTab: align text to the right in columns that handle numbers 2016-12-07 17:47:51 +02:00
thalieht
daf33ef8aa PeerList: align text to the right in columns that handle numbers 2016-12-07 17:47:51 +02:00
sledgehammer999
ba1e5b8d58 Merge pull request #6013 from Chocobo1/mac_warnings
Fix warnings on macOS
2016-12-07 16:48:35 +02:00
sledgehammer999
49ed0765e1 Merge pull request #5928 from Chocobo1/rss-view
Change RSS view layout to horizontal
2016-12-07 01:44:56 +02:00
sledgehammer999
0d1b70e248 Decouple dependency between Session and BandwidthScheduler during Session init. Closes #6007. 2016-12-07 01:33:48 +02:00
Chocobo1
ce3c53b3c4 Replace deprecated classes 2016-12-07 01:31:44 +08:00
Chocobo1
ab187f06da Fix unused variable warnings 2016-12-07 01:31:39 +08:00
Chocobo1
0b313e0bc3 Remove unused variable 2016-12-05 20:20:01 +08:00
Chocobo1
7f2f78a816 Simplify #if expression 2016-12-05 20:05:08 +08:00
Chocobo1
e1c9e3b9ed Fix memory leak
call unicode version of the function directly
2016-12-05 20:04:21 +08:00
Chocobo1
5608827429 Simplify function call 2016-12-05 20:04:13 +08:00
sledgehammer999
b971eb52ee Fix travis osx build. 2016-12-02 23:11:05 +02:00
sledgehammer999
f7194eecb0 Merge pull request #5997 from Chocobo1/msvc_warnings
Fix msvc warnings
2016-12-02 19:15:59 +02:00
Chocobo1
5d2d22a218 Fix warning C4090.
different '__unaligned' qualifiers.
2016-12-02 15:32:27 +08:00
Chocobo1
11c2ee81c1 Fix warning C4267.
conversion from 'size_t' to 'int', possible loss of data.
2016-12-02 15:32:27 +08:00
sledgehammer999
d1d6f7ddbc Merge pull request #5954 from zywo/cmake_build_fix
Fix CMake compilation error.
2016-12-02 01:49:03 +02:00
sledgehammer999
3c1774360f Merge pull request #5981 from Chocobo1/scroll_h
Horizontal scroll
2016-12-02 01:47:08 +02:00
sledgehammer999
7bd7f2b045 Merge pull request #5998 from dzmat/mem_leak_fixing2
memleak fix
2016-12-02 01:43:13 +02:00
sledgehammer999
d557e9600a Merge pull request #5992 from Chocobo1/appveyor
Update CI scripts
2016-12-02 01:41:22 +02:00
dzmat
de26606ad5 memleak fix 2016-12-01 20:18:38 +07:00
Chocobo1
cffa729ac5 Put temp files in .qBittorrent directory. Closes #4462. 2016-12-01 01:39:27 +08:00
Chocobo1
599dbe1870 Rename 2016-11-30 13:22:51 +08:00
Chocobo1
ba2dc69ff9 Fix URL 2016-11-30 13:22:51 +08:00
Chocobo1
d84461c9b2 Remove unused header 2016-11-29 17:31:14 +08:00
Chocobo1
f4652b3f7b Shift + scroll = horizontal scroll, Closes #5980
Only for TransferListWidget, PeerListWidget
2016-11-27 16:06:46 +08:00
dzmat
4b18bb29a6 DRY violation fixed 2016-11-18 23:05:47 +07:00
zywo
6e7d3b8135 Fix CMake compilation error. 2016-11-17 16:20:36 +01:00
Chocobo1
a415f14fac Rename splitter names 2016-11-17 11:12:33 +08:00
sledgehammer999
d73688bfd8 Sync translations from Transifex and run lupdate. 2016-11-14 02:47:35 +02:00
sledgehammer999
2d053da21f Merge pull request #5847 from yezezey/downloadFromURL
Fix downloadFromURL bug. Closes #5844
2016-11-14 02:14:26 +02:00
sledgehammer999
f2d8b8e319 Travis: Use custom libtorrent formula and bottle for OSX.
Caches libtorrent 1.0.10 built with c++11 enabled.
2016-11-13 22:50:28 +02:00
sledgehammer999
fd5d1583de Option to disable tracker's favicon download. 2016-11-13 22:47:37 +02:00
sledgehammer999
7923b54456 Remove (mostly) useless log warnings about tracker's favicon. 2016-11-13 22:47:31 +02:00
sledgehammer999
34f893e8ad Merge pull request #5925 from yezezey/macOSqt5
add /usr/local/include due to Qt 5.7.0 bug on macOS
2016-11-13 16:06:35 +02:00
Yez Ezey
07c0e72bd3 add /usr/local/include due to Qt 5.7.0 bug on macOS 2016-11-12 02:51:21 +09:00
Tim Delaney
94c9772a81 Ctrl+F search filter. Closes #5797.
--HG--
branch : magao-dev
2016-11-12 01:32:58 +11:00
Tim Delaney
2e66ddb0a0 Follow project coding style. Issue #2192.
--HG--
branch : magao-dev
2017-01-08 11:46:01 +11:00
Chocobo1
6b835f53ce Use new key for storing RSS splitter_v value.
So that old value won't override the RSS layout.
2016-11-11 00:35:40 +08:00
Chocobo1
7d34a89efd Change RSS view layout to horizontal. Closes #5920.
Thanks Bhaalspawn for the idea.
2016-11-10 20:59:55 +08:00
sledgehammer999
3afe1835c0 Merge pull request #5924 from Chocobo1/travis
Update ax_boost_system.m4
2016-11-10 14:58:04 +02:00
Chocobo1
f85b97916c Update ax_boost_system.m4 to d48ec2210047bbf17702700811c3f16a5369e06c 2016-11-10 19:49:07 +08:00
Chocobo1
8abb5fdf47 Remove redundant command 2016-11-10 14:10:44 +08:00
sledgehammer999
c395bf7c7c Merge pull request #5916 from EdwardLinux/patch-1
Update portuguese.nsi
2016-11-09 18:13:41 +02:00
EdwardLinux
1e5b2e57e7 Update portuguese.nsi 2016-11-08 15:34:57 +00:00
sledgehammer999
bfde2ce875 Small travis update for OSX. 2016-11-07 17:11:33 +02:00
Tim Delaney
b84d9201fd Allow | in RSS must contain. Closes #6171.
--HG--
branch : magao-dev
2016-11-07 17:46:27 +11:00
sledgehammer999
aa1e884c81 Merge pull request #5842 from yezezey/macOSpython
Set /usr/local/bin before default PATH on macOS. Closes #5639 #5571
2016-11-07 08:41:13 +02:00
Yez Ezey
55916df97d Set /usr/local/bin before default PATH on macOS. closes #5639 #5571
Since Apple made difficult for users to set PATH and /usr/bin/python
is almost unusable, I simply add /usr/local/bin before default PATH
to pick up Homebrew Python.
2016-11-07 13:29:55 +09:00
sledgehammer999
90bbe3379d Merge pull request #5882 from onto/pvs-studio
Fixes and improvements after check by PVS-Studio
2016-11-07 00:18:46 +02:00
sledgehammer999
d5385523ac Merge pull request #5849 from yezezey/macOSconfigure
Add --disable-qt-dbus to configure if $host_os is macOS
2016-11-07 00:16:11 +02:00
Tim Delaney
390d7a8124 Improve UI responsiveness during RSS downloading. Closes #873, #1089, #1235, #5423.
--HG--
branch : magao-dev
2016-11-07 08:56:06 +11:00
sledgehammer999
9b760a8fa0 Merge pull request #5858 from yezezey/case_insensitive
Sort torrent names case insensitively
2016-11-06 23:55:57 +02:00
sledgehammer999
6302eb1317 Merge pull request #5896 from Chocobo1/qjson
QJson: update to latest git version
2016-11-06 23:52:46 +02:00
sledgehammer999
1259069358 Merge pull request #5904 from yezezey/extra_magnet
Fix extratorrent searchengine. Closes #5773
2016-11-06 23:50:14 +02:00
sledgehammer999
c7bdd10734 Merge pull request #5906 from thalieht/patch-1
Log: set "Embedded Tracker [OFF]" msg type as info
2016-11-06 23:49:10 +02:00
Tim Delaney
32bdb73f70 RSS allow infinite range to extend beyond current season. Closes #800, #3876, #6170.
--HG--
branch : magao-dev
2016-11-07 07:18:06 +11:00
thalieht
c7a04e27f4 Log: set embedded Tracker [OFF] msg type as info 2016-11-06 11:55:31 +02:00
Tim Delaney
935b30b17a RSS use red text to indicate invalid filter. Closes #6165.
--HG--
branch : magao-dev
2016-11-06 16:53:06 +11:00
Tim Delaney
e37488807b Fix tab order in RSS downloader. Closes #6164.
--HG--
branch : magao-dev
2016-11-06 15:45:44 +11:00
Tim Delaney
96c1187f47 RSS parse torrent episodes like 1x01 as well as S01E01. Closes #2749.
--HG--
branch : magao-dev
2016-11-06 15:26:48 +11:00
Tim Delaney
64f9cbbf54 Allow episode zero (special) and leading zeroes in RSS episode filter.
--HG--
branch : magao-dev
2016-11-06 22:51:33 +11:00
Tim Delaney
601649f49a Save rule on enable/disable even if not selected. Closes #6163.
--HG--
branch : magao-dev
2016-11-06 13:52:12 +11:00
Tim Delaney
cecff159a0 Move old RSS items to separate config file. Closes #6167.
--HG--
branch : magao-dev
2016-11-06 12:00:09 +11:00
Yez Ezey
f6dbf2454d Fix extratorrent searchengine. Closes #5773
They changed to magnet link.
2016-11-05 22:31:17 +09:00
Anton Lashkov
1233c5b67b Fix name of variable same as class member 2016-11-04 21:44:00 +04:00
Anton Lashkov
36901295b2 Simplify if statement 2016-11-04 21:44:00 +04:00
Anton Lashkov
a372d22fb2 Add missing else 2016-11-04 21:44:00 +04:00
Anton Lashkov
1785c54b83 Fix mistake in getting value from model 2016-11-04 21:44:00 +04:00
Chocobo1
bb4e67684c QJson: update to 5e3b9b84b225f4612e09ef05aa6d8c23379e4e71 2016-11-04 01:33:25 +08:00
sledgehammer999
05387edbfa Merge pull request #5881 from Chocobo1/trackerfilter_crash
Fix crash in TrackerFiltersList::removeItem()
2016-11-03 15:20:04 +02:00
sledgehammer999
b358809328 Merge pull request #5760 from borouhin/patch-1
Don't request client SSL certificate (closes issue #3883)
2016-11-02 23:34:00 +02:00
sledgehammer999
259b5e51c4 Don't ever stop seeding forced torrents. Closes #5784. 2016-11-02 18:25:09 +02:00
sledgehammer999
4128f01aa8 Don't revert save path value in the Dialog when metadata are received. Closes #5482. 2016-11-02 18:10:10 +02:00
sledgehammer999
146d4e049a Some more compiler warnings fixed. 2016-11-02 17:49:50 +02:00
sledgehammer999
9f8dfbc51c Fix warning due to stupid typo. 2016-11-01 22:24:55 +02:00
sledgehammer999
e10c2abf3b Delete old rss favicon before assigning new one. 2016-11-01 18:25:47 +02:00
sledgehammer999
841676fd36 WINDOWS: Fix python auto install, deletion of installer and use 3.5.x series for Vista+. Closes #5871. 2016-11-01 18:25:42 +02:00
sledgehammer999
05f4270d01 WEBUI: Changed meaning of the value of the 'dl_limit', 'up_limit', 'alt_dl_limit' and 'alt_up_limit' tokens.
The value is expressed in bytes and not in KiB.
2016-11-01 18:25:36 +02:00
sledgehammer999
e440fc3d17 Fix setting a speed limit. 2016-11-01 17:51:57 +02:00
sledgehammer999
3081a8bb3f Add libtorrent's DHT bootstrap node to our bootstrap list. 2016-11-01 03:42:38 +02:00
sledgehammer999
660b8cdb7e Use the new API to add DHT bootstrap nodes for libtorrent 1.1.x and simplify the code a bit. 2016-11-01 03:42:33 +02:00
sledgehammer999
afe930cbee Use new libtorrent 1.1.2+ utility function to generate client ID instead. 2016-11-01 03:42:28 +02:00
sledgehammer999
e054f63746 Make sure that paths are loaded/saved using slashes as dir separators. 2016-11-01 03:42:22 +02:00
sledgehammer999
59b570cf62 Display message about libtorrent plugins for the correct case. 2016-11-01 03:42:17 +02:00
sledgehammer999
f391b24b1d Migrate last setting related to interfaces to the new system. 2016-11-01 03:42:12 +02:00
sledgehammer999
7bf06cd6e6 Fix save/load of interface address setting. 2016-11-01 03:42:07 +02:00
sledgehammer999
f885c6375a Use better variable names for tracker announce IP setting. 2016-11-01 03:42:01 +02:00
sledgehammer999
db4b30ad48 Fix values for unsetting speed limits. 2016-11-01 03:41:56 +02:00
sledgehammer999
6053390bf5 Unify and simplify setting to use proxy for torrents only. 2016-11-01 03:41:51 +02:00
sledgehammer999
5cbc7b16c0 Guard the flag used for deferred session configure. 2016-11-01 03:41:45 +02:00
sledgehammer999
1757973f88 Misc fixes. 2016-11-01 03:41:40 +02:00
sledgehammer999
10cd45dc81 Fix setting limits to unlimited. 2016-11-01 03:41:35 +02:00
sledgehammer999
a5ae86512a Rename IP filtering functions and settings names. 2016-11-01 03:06:58 +02:00
sledgehammer999
b97cb7422f Export torrents added only after the setting was enabled. 2016-11-01 03:06:58 +02:00
sledgehammer999
124eddc68c Merge pull request #5342 from glassez/session
Optimize BitTorrent::Session settings applying
2016-11-01 03:02:29 +02:00
sledgehammer999
23a88b5d69 Merge pull request #5879 from darksom/master
Update portugueseBR.nsi
2016-10-31 00:55:20 +02:00
Chocobo1
aba625d544 Fix potential crash. Closes #5873. 2016-10-30 16:10:44 +08:00
Chocobo1
f8dc8ad4ad Refactor 2016-10-30 15:53:59 +08:00
DaRKSoM
1a9781d66f Update portugueseBR.nsi 2016-10-30 00:33:22 -02:00
sledgehammer999
a42b4ef0a0 Merge pull request #5868 from BouRock/patch-1
Turkish translation of NSIS installer strings.
2016-10-29 18:02:34 +03:00
Burak Yavuz
b382ae2233 Turkish translation 2016-10-27 20:55:47 +03:00
sledgehammer999
3e12d958e9 Merge pull request #5855 from Chocobo1/tray_icon_crash
Fix tray icon crash
2016-10-24 19:25:11 +03:00
Yez Ezey
81ec2e60a9 Sort torrent names case insensitively 2016-10-24 19:50:30 +09:00
Chocobo1
c49bb2daad The intended action is set the bit to 1, not flipping it. 2016-10-23 20:13:04 +08:00
Chocobo1
59942531df Fix crash when restoring from tray. Closes #5854. 2016-10-23 19:58:46 +08:00
Yez Ezey
4e33af41dd Add --disable-qt-dbus to configure if $host_os is macOS 2016-10-21 14:49:09 +09:00
Yez Ezey
42929e7783 Fix downloadFromURL bug. Closes #5844 2016-10-20 19:53:23 +09:00
sledgehammer999
07f141af2e Merge pull request #5822 from ngosang/plugins
[Search engine] Update Plugins
2016-10-18 01:34:57 +03:00
ngosang
d249e9e7c6 [Search engine] Remove TorrentReactor plugin 2016-10-11 22:51:54 +02:00
ngosang
7c13f71481 [Search engine] Update Demonoid plugin 2016-10-11 22:48:21 +02:00
Yez Ezey
26052802ca Change QSettings to IniFormat on macOS. Closes #5770 #5808
On macOS 10.12 Sierra, Apple changed the behaviour of CFPreferencesSetValue()
truncating data after a null character. https://bugreports.qt.io/browse/QTBUG-56344
Due to this, we have to move from native plist to IniFormat.
2016-10-08 14:05:30 +09:00
sledgehammer999
829425831f Properly fix the handling of default save path store/load. Bug introduced in dd34663224 2016-10-06 16:54:15 +03:00
sledgehammer999
7b04dd4106 Merge pull request #5746 from erikssm/master
fix default save path bug
2016-10-06 16:39:44 +03:00
erikssm
d2e911c3ea fix default save path bug 2016-10-05 18:54:36 +03:00
sledgehammer999
6960245a06 Merge pull request #5777 from yezezey/macosx_debug
Fix Mac OS X Build (Closes #5763)
2016-09-30 18:29:34 +03:00
Yez Ezey
c30e61904d Fix Mac OS X Build (Closes #5763)
Deleted offending code
    setUnifiedTitleAndToolBarOnMac(false);
which was a workaround to avoid bug https://bugreports.qt.io/browse/QTBUG-7305
The bug was fixed at Qt 4.6.2 https://github.com/Blizzard/qt4/blob/master/dist/changes-4.6.2
2016-09-27 05:09:38 +09:00
sledgehammer999
bec4617128 Merge pull request #5749 from yezezey/master
fixed extratorrent search not working v.3.3.7 #5736
2016-09-24 00:02:53 +03:00
sledgehammer999
b3a7954363 Use a subdomain to redirect to the actual URL for search plugins.
Will allow to move around the plugins in the git repo with the 3.4.0 release.
2016-09-23 23:16:24 +03:00
Yez Ezey
3a744a954b Fixed extratorrent search not working Closes #5736 #5753
The original code accumulates all the <td> texts between the description
link and the number of seeders into self.current_item["size"]:
    <td>248.72</td><td>&nbsp;MB<td> => "248.72 MB".
ExtraTorrents changed the table design, added the Added column and joined
the number and its unit:
    <td>8d</td><td>248.72&nbsp;MB</td> => "8d 248.72 MB"
This commit stores only the last <td> text in self.current_item["size"].
2016-09-23 03:52:12 +09:00
borouhin
501a2d7c45 Don't request client SSL certificate (closes issue #3883) 2016-09-21 02:42:51 +03:00
sledgehammer999
3ea81be2cc Merge pull request #5731 from thalieht/webui_port
Fix WEBUI port overflow
2016-09-13 23:54:01 +03:00
sledgehammer999
a7253c5ead Update UAC nsis plugin to 0.2.4c. Building the installer with nsis 3.0 (final) is possible now. Closes #5556. 2016-09-12 17:15:39 +03:00
sledgehammer999
05d226a103 Fix travis again.
I wish the homebrew guys didn't break it so often and the travis guys updated their images more frequently.
2016-09-12 02:29:40 +03:00
thalieht
6ec1c61b06 fix webui port overflow 2016-09-11 23:41:14 +03:00
sledgehammer999
6ea9325868 Sync translations from Transifex and run lupdate. 2016-09-11 22:07:25 +03:00
sledgehammer999
943cc86eb9 Merge pull request #5686 from ngosang/minor_fix
Fix warning in geoipdatabase.cpp
2016-09-04 01:51:48 -05:00
ngosang
83d6a28030 Fix warning in geoipdatabase.cpp 2016-08-29 22:11:05 +02:00
sledgehammer999
d411d8b3a1 Merge pull request #5549 from briankendall/smtp_ssl_bug_fixes
Fixes bug where sending email could silently fail
2016-08-25 20:45:11 -05:00
sledgehammer999
89d91500f1 Merge pull request #5648 from SagePtr/patch-1
Update geoipdatabase.cpp to allow larger GeoLite2-Country database (issue #5609)
2016-08-25 20:42:06 -05:00
SagePtr
c63da264d7 Update geoipdatabase.cpp
Updated MaxMind database limit from 10MB to 64MB. I hope it will be enough
for few years. Fix for issue #5609
2016-08-26 02:23:17 +02:00
Brian Kendall
da412571e4 Better error handling with smtp communication.
Adds log messages for a number of situations where sending an email will silently fail, in particular when attempting to create an unencrypted connection to an SMTP server that requires SSL
2016-08-25 17:57:26 -04:00
sledgehammer999
5f01065614 Merge pull request #5670 from ngosang/torrentz2
[Search engine] Update Torrentz2 search engine
2016-08-24 01:38:49 -05:00
ngosang
77b27abc94 [Search engine] Update Torrentz2 search engine 2016-08-24 00:46:09 +02:00
sledgehammer999
025ee32281 Merge pull request #5576 from Chocobo1/msiexec
Call system msiexec.exe directly
2016-08-23 11:29:53 -05:00
sledgehammer999
ddb8badcc9 Fix deletion via the context menu. Broken by #5616. 2016-08-23 18:56:50 +03:00
sledgehammer999
c30882e1d1 Merge pull request #5631 from ngosang/remove_search_engines
[Search engine] Update search engines
2016-08-23 10:21:27 -05:00
ngosang
b0c9c8a2aa [Search engine] Update Torrentz search engine 2016-08-22 23:25:54 +02:00
ngosang
4e2de98903 [Search engine] Remove BTDigg search engine 2016-08-13 21:38:14 +02:00
ngosang
9234f2f15d [Search engine] Remove KickassTorrents search engine 2016-08-10 20:41:03 +02:00
sledgehammer999
2ba4319850 Merge pull request #5617 from Chocobo1/hotkeys
Use "Standard Shortcuts" defined by Qt whenever possible.
2016-08-10 10:59:16 -05:00
Chocobo1
85add9a5c8 Use "Standard Shortcuts" defined by Qt whenever possible. 2016-08-10 23:09:15 +08:00
sledgehammer999
e94e8d3e7f Merge pull request #5616 from pieniacy/master
Add torrent and files deletion with Shift+Delete hotkey
2016-08-10 04:57:57 -05:00
pieniacy
5f4114ae76 Add torrent and files deletion with Shift+Delete hotkey 2016-08-06 02:52:49 +02:00
sledgehammer999
affebf3431 Merge pull request #5575 from Chocobo1/explorer
Avoid spawning a new explorer.exe process when selecting "Open containing folder"
2016-08-05 08:10:28 -05:00
Bert Verhelst
b00a9d4398 Update icon size of pngs to 256px + make pause icon wider 2016-08-03 22:49:05 -07:00
Chocobo1
9cb01dedba Avoid spawning a new explorer.exe process when selecting "Open containing
folder". Closes #5564.
2016-08-04 00:50:11 +08:00
sledgehammer999
382b5cae8f Merge pull request #5567 from itsdani/master
Fix 6-hour speedplot point push rate #5545
2016-08-02 04:17:50 -05:00
Daniel Segesdi
76580e4766 Fix 6-hour speedplot point push rate. Close #5545 2016-08-02 10:59:01 +02:00
Chocobo1
a64538b964 Call system msiexec.exe directly 2016-07-23 13:39:22 +08:00
Chocobo1
f448587271 Add function windowsSystemPath() 2016-07-23 13:39:13 +08:00
Chocobo1
bb956b8453 Refactor 2016-07-23 11:25:33 +08:00
Chocobo1
8742d7aa45 Uncrustify misc.cpp 2016-07-23 11:23:16 +08:00
sledgehammer999
d3ece7417d Upgrade pkg-config travis-ci for OS X.
Fixes 'zlib not found` errors.
Details: https://github.com/Homebrew/brew/issues/563
2016-07-21 14:43:47 +03:00
sledgehammer999
f264214e69 Update qt-translations and related installer files. 2016-07-20 01:32:39 +03:00
sledgehammer999
a7e2162cdc Sync translations from Transifex and run lupdate. 2016-07-20 00:48:45 +03:00
Brian Kendall
630871214f Hiding SSL / SMTP option when building without SSL support
The SMTP server always uses unencrypted connections in this case so showing the check box is misleading
2016-07-18 18:37:48 -04:00
sledgehammer999
4e8c509157 Merge pull request #5409 from Chocobo1/RTL_option
Fix icons are missing when using RTL languages in Options dialog
2016-07-17 15:47:13 -05:00
sledgehammer999
991502432c Merge pull request #5474 from Chocobo1/travis
[TravisCI] lock-on to libtorrent-rasterbar 1.0.9 version
2016-07-17 13:57:00 -05:00
sledgehammer999
53e3f8a239 Merge pull request #5408 from Chocobo1/run_ext
Fix external program command too long error in Windows
2016-07-17 10:18:18 -05:00
Chocobo1
1e1471c7c6 Workaround space issues in file path
References:
https://github.com/qbittorrent/qBittorrent/issues/5439#issuecomment-228616817
https://github.com/qbittorrent/qBittorrent/issues/5439#issuecomment-232214712
2016-07-16 11:27:51 +08:00
Chocobo1
3846a5b875 Invoke system's cmd.exe directly. 2016-07-16 11:19:33 +08:00
Chocobo1
705d7730dc Fix upper-bound limit of command line for "Run External Program" in Windows. Closes #5399. 2016-07-16 10:25:22 +08:00
sledgehammer999
5e114c0f2e Merge pull request #5443 from glassez/save_folder
Do not create save folder in advance. Closes #5422
2016-07-05 06:48:52 -05:00
Chocobo1
959676164b [TravisCI] lock-on to libtorrent-rasterbar 1.0.9 version 2016-07-01 21:23:30 +08:00
Vladimir Golovnev (Glassez)
c4e9291db4 Do not create save folder in advance
Closes #5422.
2016-06-26 16:48:11 +03:00
Chocobo1
6b48cab5e3 Fix icons are missing when using RTL languages in Options dialog. Closes #5398. 2016-06-21 16:06:57 +08:00
sledgehammer999
dbd079dfb8 Merge pull request #5389 from glassez/type_assert
Show type name in btjson.cpp@processMap assert
2016-06-20 08:58:21 -05:00
Vladimir Golovnev (Glassez)
bb17d4a8dd Show type name in btjson.cpp@processMap assert
This may help to solve #5381
2016-06-20 16:08:10 +03:00
Vladimir Golovnev (Glassez)
b5fe749f0b Use new libtorrent-1.1 settings API 2016-06-20 08:30:02 +03:00
Vladimir Golovnev (Glassez)
b2cb473b63 Don't use Preferences in BitTorrent::Session 2016-06-20 08:30:02 +03:00
sledgehammer999
ce22d031f6 Merge pull request #5058 from ngosang/remove_filters
[search engine] Remove filters from Torrentreactor, BTDigg and Demonoid
2016-06-19 18:39:17 -05:00
sledgehammer999
e7b4292d3c Sync translations from Transifex and run lupdate. 2016-06-20 02:35:45 +03:00
sledgehammer999
e3e7636de8 Fix parsing of eMule .DAT filters. Closes #5281. 2016-06-20 02:24:37 +03:00
sledgehammer999
57a4b9f8b6 Fix API_VERSION and API_VERSION_MIN numbers. 2016-06-20 02:15:11 +03:00
sledgehammer999
d060b0d342 Don't use QCollator for sorting on Windows. Closes #5238 and #5240. 2016-06-08 22:53:59 +03:00
sledgehammer999
39a81f30ff Merge pull request #5296 from Chocobo1/run_ext
Replace QProgress::startDetached with std::detatch.
2016-06-08 13:15:32 -05:00
sledgehammer999
6d4f46c8ae Merge pull request #5179 from Chocobo1/fix_ui
Cleanup Connection page
2016-06-08 13:13:23 -05:00
Chocobo1
5efc45190a Fix widget name collision.
Small cleanup on Downloads page.
2016-06-07 20:49:27 +08:00
Chocobo1
0ad33bf9ac Let user able to specifiy a filter when choosing an IP filter file 2016-06-07 20:49:27 +08:00
Chocobo1
d32c9470a0 Fix reload button size is not the same size as "..." button.
Rename Connection tab page
2016-06-07 20:49:27 +08:00
Chocobo1
c85a0a41ba Rename "options.ui" to "optionsdlg.ui"
Rename class name "options_imp" to "OptionsDialog"
Rename "options_imp.cpp" to "optionsdlg.h"
2016-06-07 20:49:27 +08:00
Chocobo1
97ee63fc78 Move options ui as a pointer member variable 2016-06-07 20:49:27 +08:00
Chocobo1
05cbb35814 Follow header inclusion rule 2016-06-07 20:49:23 +08:00
Chocobo1
df95efe33e Improve usability of "Run External Program"
Users can write (platform dependent) shell scripts now.
2016-06-07 00:39:27 +08:00
Chocobo1
def27bce4d Add log messages 2016-06-04 11:28:44 +08:00
ngosang
95eb0efabe [search engine] Remove filters from Demonoid 2016-06-03 23:48:52 +02:00
ngosang
12de907732 [search engine] Remove filters from Torrentreactor and BTDigg 2016-06-03 23:48:52 +02:00
sledgehammer999
fd996f15f0 Merge pull request #5339 from evsh/files-tooltip
Fix empty tooltips showed at the progress bar borders
2016-06-02 14:53:14 -05:00
Eugene Shalygin
0b1a9220a9 Fix empty tooltips showed at the progress bar borders
If tooltip text contains an empty HTML body, Qt still shows it as an
empty rectangle. Thus, output HTML tags only if we are within the
image region, and return true empty string if we are at the borders.
2016-06-02 20:51:57 +02:00
Chocobo1
98215d2231 Cleanup Connection page in Option dialog.
Add vertical spacer, closes #845.
2016-06-03 01:32:53 +08:00
sledgehammer999
95fbff3a53 Merge pull request #4936 from evsh/files-tooltip
Improve tooltips for torrent progress bar
2016-06-02 09:54:12 -05:00
sledgehammer999
978d1e1d3e Merge pull request #5336 from ngosang/pythonversion
Update Python version requirements
2016-06-02 07:20:25 -05:00
Eugene Shalygin
5f2362dc89 Replace TorrentHandle::fileExtremityPieces() with TorrentInfo::filePieces() 2016-06-02 10:30:35 +02:00
Eugene Shalygin
b3378d4599 Show files in tooltips for pieces progress bars
In addition to the current tooltip, which shows color legend, if user
holds the Shift key during hovering we show another tooltip which
contains a table of contents for the piece under the moue cursor. The
table lists file sizes and names. If the cursor points to a part of a
file which spans several pieces, those pieces are highlighted.
2016-06-02 10:30:28 +02:00
sledgehammer999
307f2919a3 Merge pull request #5334 from evsh/uncrustify
uncrustify: replace "add" with "force" for sp_ parameters
2016-06-01 18:30:47 -05:00
ngosang
88626b26d2 Update Python version requirements 2016-06-01 16:05:37 +02:00
Eugene Shalygin
f9c2bd3502 Follow project coding style. Issue #2192. 2016-05-31 19:42:08 +02:00
Eugene Shalygin
f9aeb5783d uncrustify: replace "add" with "force" for sp_ parameters
This will make uncrustify able to remove excessive spaces
2016-05-31 18:51:59 +02:00
sledgehammer999
8e64ffba01 Merge pull request #4937 from Chocobo1/option_crash
Fix crash when qbt exits with options dialog opened
2016-05-30 19:36:16 -05:00
sledgehammer999
7600e273dc Merge pull request #5328 from ngosang/searchui
Minor changes in Search UI
2016-05-30 19:25:41 -05:00
sledgehammer999
da1d6b0063 Merge pull request #5329 from ngosang/torrentz
[Search engine] Update Torrentz
2016-05-30 19:20:54 -05:00
ngosang
bd318bd004 [Search engine] Update Torrentz 2016-05-30 23:04:34 +02:00
ngosang
204f3d8542 Minor changes in Search UI 2016-05-30 22:51:09 +02:00
sledgehammer999
fee8aba610 Merge pull request #5317 from ngosang/piratebay
[Search engine] Update PirateBay
2016-05-28 18:20:48 -05:00
ngosang
47a252e517 [Search engine] Update PirateBay 2016-05-28 18:22:02 +02:00
sledgehammer999
f373ca82c6 Merge pull request #5316 from ngosang/minorfixx
Minor fix: typo and two warnings
2016-05-28 09:19:34 -05:00
ngosang
363e19be7f Minor fix: typo and two warnings 2016-05-28 15:24:59 +02:00
sledgehammer999
5878d49f60 Fixup previous commits and allow IPv6 interface addresses too. 2016-05-27 01:37:16 +03:00
sledgehammer999
1397a951fe Merge pull request #5096 from Harekiet/kietC
Bind directly to an IP instead of using a network Interface
2016-05-26 17:36:22 -05:00
sledgehammer999
6f16890475 Merge pull request #5306 from evsh/search-visited-link-colors
Use QPalette::LinkVisited color for downloaded items in search results
2016-05-26 16:15:35 -05:00
Eugene Shalygin
f05793c2e3 Use QPalette::LinkVisited color for downloaded items in search results 2016-05-26 22:51:33 +02:00
sledgehammer999
c2abbed055 Sync translations from Transifex and run lupdate. 2016-05-25 20:24:19 +03:00
sledgehammer999
81ea07abee Rename ASM to TMM and related stuff. 2016-05-25 20:07:36 +03:00
sledgehammer999
bc270bd801 Add tooltip to the saving mode checkbox. 2016-05-25 20:02:28 +03:00
sledgehammer999
df22c5a914 Slim down 'Downloads' page of options window. 2016-05-25 20:01:40 +03:00
sledgehammer999
6812b74bbf Merge pull request #5293 from botmtl/master
default RSSRefreshInterval to 30 mins
2016-05-24 06:10:42 -05:00
sledgehammer999
e2bf462a45 Fix gcc 6 compilation with qmake. See #5237. 2016-05-24 14:05:07 +03:00
sledgehammer999
57dac8d5f7 Merge pull request #5277 from Chocobo1/circular
Minor refactor
2016-05-24 00:03:38 -05:00
Chocobo1
b4bdfa7b2b Use QString::localeAwareCompare for comparsion 2016-05-24 10:44:42 +08:00
Chocobo1
f13c604fbe Use boost:circular_buffer instead of QList.
QList has to store an additional pointer for each element which leads to bad space efficiency.
2016-05-24 10:44:42 +08:00
botmtl
0ca31deedb default RSSRefreshInterval to 30 mins
closes issue #5235 (https://github.com/qbittorrent/qBittorrent/issues/5235)
2016-05-23 21:49:06 -04:00
sledgehammer999
00b5d52eab Merge pull request #5227 from ngosang/addtrackers
[WebUI] Expose Add trackers feature
2016-05-23 16:53:45 -05:00
sledgehammer999
42fec52b0d Merge pull request #2315 from pmzqla/webui-logs
WebUI: Allow to get the logs
2016-05-23 16:51:38 -05:00
sledgehammer999
fed2609cb2 Merge pull request #4888 from SeigneurSerpent/source_line
Stack trace for windows now contains source filenames and line numbers
2016-05-23 16:49:17 -05:00
SeigneurSerpent
7398e7f0ad Improve stack trace for windows by including source filenames and line numbers 2016-05-23 22:37:24 +03:00
sledgehammer999
57a61c48a2 Merge pull request #5270 from evsh/uncrustify
update uncrustify config
2016-05-22 20:12:37 -05:00
Eugene Shalygin
7f40e42ddc update uncrustify config 2016-05-23 02:40:08 +02:00
sledgehammer999
fc0746eb71 Merge pull request #5245 from thalieht/resolveCountries
Minor refactor in PeerListWidget
2016-05-17 17:55:11 -05:00
thalieht
4baa6dde52 resize column to contents only when they're visible
refactor updatePeerCountryResolutionState
deprecate m_resolveCountries var
2016-05-18 00:44:41 +03:00
sledgehammer999
529c208170 Merge pull request #5262 from Chocobo1/text
Improve wordings 2
2016-05-17 14:40:47 -05:00
Chocobo1
c907a2f857 Cleanup headers
Code formatting
2016-05-18 00:46:43 +08:00
Chocobo1
6ead0ae9ee Add lookup function to get PathType display names 2016-05-18 00:46:43 +08:00
Chocobo1
83b58468d9 Improve error messages for "Auto download torrents" 2016-05-17 23:49:07 +08:00
Gabriele
01b73bf704 WebUI: Add command to get the logs
Add /query/getLog and /query/getPeerLog to respectively retrieve
the main log and the peer log.

GET /query/getLog
Params:
 - normal (bool): include normal messages (default true)
 - info (bool): include info messages (default true)
 - warning (bool): include warning messages (default true)
 - critical (bool): include critical messages (default true)
 - last_known_id (int): exclude messages with id <= 'last_known_id'

GET /query/getPeerLog
Params:
 - last_known_id (int): exclude messages with id <= 'last_known_id'
2016-05-17 12:13:59 +02:00
sledgehammer999
673b86c6e3 Merge pull request #5258 from glassez/alert_notify
Use new alert dispathing API. Fixes compilation with libtorrent-1.1.x
2016-05-17 02:36:31 -05:00
Vladimir Golovnev (Glassez)
a318040eaa Use new alert dispathing API 2016-05-17 07:58:38 +03:00
sledgehammer999
14b867e1f6 Merge pull request #5192 from barhom/completed-on-column
Added 'Added on' column in Webui. Closes #5145,#1092,#738
2016-05-16 16:17:36 -05:00
sledgehammer999
4ca1a2d5aa Merge pull request #5251 from Chocobo1/text
Improve wordings
2016-05-16 11:50:44 -05:00
Chocobo1
8a1d387c38 Change ambiguous text "Copy selected" to "Copy IP:port" 2016-05-16 14:29:59 +08:00
Chocobo1
dbf744a179 Change "Auto download torrent" default save path to "default location". 2016-05-16 14:29:59 +08:00
Chocobo1
6ea89bf621 Improve wordings in "Auto download torrent" section 2016-05-16 14:29:59 +08:00
sledgehammer999
4f78a50add Merge pull request #5249 from evsh/auto-remove-torrents
Fix a typo in TorrentFileGuard and a crash when adding torrent via magnet link
2016-05-15 15:59:37 -05:00
Eugene Shalygin
a7495fa7b4 Fix crash when adding torrent via a magnet url
The file guard object has to be initialised in this case too because it
is accessed when dialog gets accepted or cancelled. Initialise it with
empty path.
2016-05-13 20:35:02 +02:00
Eugene Shalygin
47a3f1d93d Fix a typo in TorrentFileGuard 2016-05-13 00:12:33 +02:00
Ibrahim Tachijian
2cef805ab6 Add 'Added on' column in Webui. Closes #5145,#1092,#738 2016-05-10 15:23:24 +00:00
sledgehammer999
140016c068 Merge pull request #5223 from evsh/uncrustify
uncrustify: add constructor initialization list options
2016-05-09 14:28:55 -05:00
sledgehammer999
e22664da0f Merge pull request #5090 from evsh/auto-remove-torrents
Add option to automatically remove .torrent files upon adding
2016-05-09 07:05:09 -05:00
Eugene Shalygin
6e73fa80b8 Add option to automatically remove .torrent files upon adding
Some browsers do not download files, intended for immediate opening,
into a temporary directory, and thus a regular download directories
accumulate those unneeded files.

The option allows qBittorrent to clean after itself and delete those
files whether they were succesfully added or not (user-selectable
policy).
2016-05-09 11:52:36 +02:00
sledgehammer999
35c51ad3b1 Update definition of QBT_USES_QT5 to be true for qt >= 5.2.0 2016-05-08 19:28:02 +03:00
sledgehammer999
9c5a5fc83d Merge pull request #3908 from Chocobo1/rm_nsort
Replace `naturalSort()` with `naturalCompare()`.
2016-05-08 11:12:51 -05:00
Chocobo1
5906a4a2de Add case-sensitive & case-insensitive natural sort helper function
Fix helper function not being thread-safe
Use QBT_USES_QT5 define
2016-05-08 23:59:06 +08:00
sledgehammer999
f5855ae208 Merge pull request #5218 from Chocobo1/travis
Enable CI cache
2016-05-08 10:31:22 -05:00
sledgehammer999
5e7684ab50 Merge pull request #5225 from zywo/about-font-size
Set about tab font-size to default
2016-05-08 10:06:06 -05:00
sledgehammer999
fecf8501cb Merge pull request #5230 from Chocobo1/filterTracker
Fix "IP Filtering - Apply to trackers" wasn't being applied
2016-05-08 09:16:40 -05:00
Chocobo1
71143d1417 Use qmake built-in test function files to locate translation files 2016-05-08 21:47:28 +08:00
Chocobo1
f4f4e31a7a Use POSIX shell 2016-05-08 21:47:28 +08:00
Chocobo1
926cbb18ea Re-enable cache for linux builds
Enable cache for OSX builds
2016-05-08 21:47:28 +08:00
Chocobo1
a81cf1ea16 Fix "IP Filtering - Apply to trackers" wasn't being applied. Closes #5217. 2016-05-08 20:46:58 +08:00
ngosang
30b52b9825 [WebUI] Expose Add trackers feature 2016-05-07 15:17:01 +02:00
ngosang
be9bc07890 Display more information in tracker tab 2016-05-07 14:11:17 +02:00
zywo
49fb950195 Set about tab font-size to default 2016-05-06 09:36:10 +01:00
Eugene Shalygin
9e177a0a81 uncrustify: add constructor initialization list options 2016-05-06 01:29:09 +02:00
Chocobo1
d25430f377 Cleanup headers
Move `class NaturalCompare` to .cpp file
2016-05-04 16:35:26 +08:00
Chocobo1
f89d7c2f67 Suppress warning on OSX builds 2016-05-04 12:44:36 +08:00
sledgehammer999
f45ec40392 Merge pull request #5189 from evsh/uncrustify
uncrustify: honour pointer and reference symbols alignment rules
2016-05-03 15:06:20 -05:00
sledgehammer999
9f31b0ef4d Merge pull request #4959 from evsh/small-fix-for-settings-storage
refactor SettingsStorage class
2016-05-03 10:37:49 -05:00
sledgehammer999
f6ff680295 Merge pull request #5205 from evsh/cmake
cmake: fix powermanagement compilation
2016-05-03 08:28:04 -05:00
Eugene Shalygin
565847ceb3 cmake: add Qt::DBus library dependency for base module
This is needed for powermanagement and was mistakenly forgotten
2016-05-01 02:54:53 +02:00
Eugene Shalygin
f702d43973 cmake: mark libtorrent and qtsingleapplication include dirs as system 2016-05-01 02:54:37 +02:00
sledgehammer999
0143799623 Don't show added torrent notification during startup. 2016-04-30 01:38:24 +03:00
Eugene Shalygin
da379702a2 uncrustify: honour pointer and reference symbols alignment rules
Stick the '*' and '&' symbols to the variable name if there is one.
Also fix empty function bodies collapse option: replace it with the
eat_blanks_before_close_brace setting.
2016-04-26 15:21:09 +02:00
sledgehammer999
ef6e848756 Display notifications when a torrent is added. Closes #334 and #915. 2016-04-25 20:07:26 +03:00
sledgehammer999
31d04cffd9 Merge pull request #5181 from glassez/ext
Fix .!qB extension is added when disabled (#5141 regression hotfix)
2016-04-25 11:49:13 -05:00
Vladimir Golovnev (Glassez)
56287173b1 Fix .!qB extension is added when disabled 2016-04-25 15:30:41 +03:00
sledgehammer999
0a81152267 Merge pull request #5169 from glassez/tmpname
Use unique temp directories. Closes #5154.
2016-04-25 02:31:04 -05:00
sledgehammer999
e3265dd934 Merge pull request #5176 from evsh/cmake
cmake: reflect qmake project changes
2016-04-25 01:51:59 -05:00
Vladimir Golovnev (Glassez)
b8c703b8b0 Use truncated torrent hash in temp path 2016-04-25 08:39:36 +03:00
Vladimir Golovnev (Glassez)
850556fdfa Use unique temp directories
Save torrent in temp_path/<torrent_hash> directory.
Closes #5154.
2016-04-25 08:39:36 +03:00
Eugene Shalygin
d4e68a159f cmake: reflect qmake project changes 2016-04-25 04:41:19 +02:00
sledgehammer999
ab412ebf37 Merge pull request #5135 from ngosang/ifces
Fix duplicate network interfaces. Closes #5131
2016-04-24 17:49:39 -05:00
sledgehammer999
4ebb12e06b Merge pull request #5141 from glassez/recheck
Fix torrent adding with existing data
2016-04-24 12:41:50 -05:00
ngosang
3a49485039 Fix duplicate network interfaces. Closes #5131 2016-04-24 18:45:15 +02:00
sledgehammer999
ab65c04e0e Merge pull request #5137 from Chocobo1/fix_ui
UI fixes
2016-04-24 11:05:35 -05:00
sledgehammer999
3186541f49 Merge pull request #5170 from ngosang/fixsearch
[Seach engine] Update Torrentz, Mininova and LegitTorrents plugins
2016-04-24 10:49:08 -05:00
sledgehammer999
f80df53532 Merge pull request #5162 from evsh/uncrustify
uncrustify: add "slots" to WORDs keywords.
2016-04-24 10:47:22 -05:00
sledgehammer999
7d0bdc2863 Merge pull request #5160 from ngosang/trackersfix
Fix Add tracker dialog bugs
2016-04-24 10:45:01 -05:00
sledgehammer999
071b3981f7 Merge pull request #5143 from evsh/cmake
Cmake: clean cmake files
2016-04-24 10:40:43 -05:00
sledgehammer999
ff8b0944a2 Merge pull request #5140 from glassez/coding
Add coding style rule for header inclusion order
2016-04-24 10:40:10 -05:00
ngosang
e542f17809 [Search engine] Fix LegitTorrents plugin 2016-04-23 23:18:48 +02:00
ngosang
06cd41801e [Search engine] Fix Mininova plugin 2016-04-23 22:37:19 +02:00
ngosang
e4349e8db1 [Search engine] Fix Torrentz plugin for Python2 2016-04-23 21:57:05 +02:00
Eugene Shalygin
3f53f17411 cmake: raise minimal cmake version to 3.5 and use its features 2016-04-23 02:02:13 +02:00
Eugene Shalygin
8b64dd95a5 cmake: drop explicit Boost dependency
We get it implicitly from libtorrent
2016-04-23 02:02:13 +02:00
Eugene Shalygin
e809b042aa Add "slots" to WORDS keyword.
Uncrustify inserts line break between an access specifier and "slots".
However, it keeps these words combinations if "Q_SLOTS" is used.
Its built-in parser classifies "Q_SLOTS" as WORD token, thus let's add
"slots" to that class.
2016-04-23 01:57:28 +02:00
ngosang
7fe5674b9a Fix Add tracker dialog URL download 2016-04-22 23:48:06 +02:00
ngosang
b7ef066545 Fix Add tracker dialog empty trackers 2016-04-22 23:47:22 +02:00
Sjoerd van der Berg
220f6b1da2 Use a combo box to select the IP address you want to listen on for a specific interface 2016-04-21 18:21:49 +02:00
Vladimir Golovnev (Glassez)
599166ed0f Delete Import Torrent Dialog 2016-04-20 15:45:17 +03:00
Vladimir Golovnev (Glassez)
2fb6bb00bf Fix rechecking after torrent is finished 2016-04-20 15:45:15 +03:00
Vladimir Golovnev (Glassez)
e0d9ae3116 Try to find incomplete files for new torrent 2016-04-20 15:45:03 +03:00
Vladimir Golovnev (Glassez)
1bf24acff7 Add coding style rule for header inclusion order 2016-04-20 15:40:28 +03:00
Chocobo1
8366fced96 Fix mutually exclusive radio buttons can be unselected. 2016-04-20 09:08:58 +08:00
Chocobo1
96ce409cd1 Enable word wrap for "Run external program" help text 2016-04-19 16:54:11 +08:00
Chocobo1
c52a964a8a Fix toolbar resizing when m_searchFilter appears/disappears. Closes #5120. 2016-04-19 16:54:11 +08:00
Chocobo1
2c2638c1fe Disable comboHideZero when checkHideZero is unchecked.
Disable `checkLimituTPConnections` when `checkuTP` is unchecked.
Minor code formatting
2016-04-19 16:52:25 +08:00
Eugene Shalygin
473e23f992 cmake: add imported target for Libtorrent 2016-04-18 21:23:03 +02:00
Chocobo1
513e8f246b Morph QToolButton to QPushButton 2016-04-18 15:41:22 +08:00
Chocobo1
7bebc36cd5 Fix path to resource 2016-04-18 15:31:27 +08:00
Chocobo1
626a224382 Minor code formatting 2016-04-18 14:27:44 +08:00
Chocobo1
c3bde7c910 Sort labels with naturalCompare(). Closes #3919. 2016-04-18 14:27:44 +08:00
Chocobo1
d65ff87148 Replace naturalSort() with naturalCompare(). 2016-04-18 14:27:44 +08:00
Vladimir Golovnev (Glassez)
8e9b0d97ec Fix torrent adding with existing data 2016-04-18 08:30:49 +03:00
sledgehammer999
f22aee2bff Merge pull request #5134 from ngosang/updateall
Fix Update all button height in RSS tab
2016-04-17 15:07:42 -05:00
sledgehammer999
2d8d3c8152 Merge pull request #5057 from ngosang/statics
Minor change in Stats dialog
2016-04-17 14:13:43 -05:00
ngosang
2136e41fad Fix Update all button height in RSS tab 2016-04-17 20:52:38 +02:00
ngosang
bde762cb11 Minor change in Stats dialog 2016-04-17 19:59:09 +02:00
sledgehammer999
a8d2590a4c Display the filepath when a torrent fails to load. Closes #100 and #805. 2016-04-17 20:50:56 +03:00
sledgehammer999
36f894d0d8 Merge pull request #3976 from jleclanche/master
License file copy/paste fixes
2016-04-17 12:20:35 -05:00
sledgehammer999
18148a3aed Merge pull request #5127 from Chocobo1/shutdown
Fix Shutdown confirmation
2016-04-17 12:16:03 -05:00
sledgehammer999
49586441f3 Fix log menu item position broken by 1760beed17. 2016-04-17 19:59:58 +03:00
sledgehammer999
4c79a1d766 Bump API_VERSION to 11. 2016-04-17 19:57:08 +03:00
Chocobo1
34db2f5dd9 Fix qBittorrent doesn't exit immediately when "all donwloads are done -> exit" option enabled.
This fix is provided by glassez.
2016-04-18 00:46:47 +08:00
Chocobo1
fbc002f212 Enable access to shutdown functions when configured with --disable-gui option 2016-04-18 00:45:37 +08:00
sledgehammer999
2a20855c17 Merge pull request #4661 from buinsky/WebUI_labels_menu
WebUI: Implement labels filter context menu
2016-04-17 11:36:58 -05:00
Chocobo1
a1e0fa5509 Fix Coverity Scan 143909.
Also, the setting "Confirmation on auto-exit when downloads finish" wasn't working before.
2016-04-18 00:35:08 +08:00
sledgehammer999
2d0b9e6538 Merge pull request #5111 from Chocobo1/refactor_shutdowndlg
Cleanup shutdowndlg
2016-04-17 11:23:07 -05:00
sledgehammer999
3be35743ac Merge pull request #5124 from Chocobo1/fix_warnings
Fix warnings
2016-04-17 11:11:25 -05:00
sledgehammer999
2c459e8f74 Merge pull request #5132 from evsh/cmake
cmake: fix resources initialization and simplify QtSingleApplication linkage
2016-04-17 10:28:59 -05:00
Chocobo1
f741d3131d Delete all mainwindow child widgets. Closes #4871, #5049.
Some of the `delete` can be handled by the findChild loop
2016-04-17 18:51:35 +08:00
Chocobo1
e2a090f03f Use QAtomicInt to guarantee cleanup() is only executed once 2016-04-17 18:48:22 +08:00
Eugene Shalygin
7c0b5818b1 cmake: add imported target for QtSingleApplication
This simplifies cmake code a bit: we remove if's and just generate
different target (imported or alias) with the same name and use it
unconditionally.
2016-04-17 01:07:15 +02:00
Eugene Shalygin
f050f15a0c cmake: fix Qt resources linkage. Closes #5080
Qt resource is innitialized by a static object constructor (see
https://wiki.qt.io/QtResources). When we put resources into a static
library, the linker removes that static objects and thus the resources
themselves. To correct that we append resources to the main executable
sources list. This is done via custom function qbt_target_sources which
knows where to read the executable' name.
2016-04-17 01:06:24 +02:00
Chocobo1
7d5ab68f50 Fix Coverity Scan cid 143911.
`filesCount()` could return a negative value.
2016-04-16 12:37:23 +08:00
Chocobo1
a12d82524a Fix class member initialize order 2016-04-16 12:31:41 +08:00
Chocobo1
75bdfe971b Fix warnings in mainwindow.ui. Closes #5117.
gui/mainwindow.ui: Warning: The name 'actionExecutionLogs' (QAction) is already in use, defaulting to 'actionExecutionLogs1'.
gui/mainwindow.ui: Warning: action `actionSearch_engine' not declared
gui/mainwindow.ui: Warning: action `actionRSS_Reader' not declared
2016-04-16 12:27:33 +08:00
Chocobo1
f12e21560a Rename files:
confirmshutdowndlg.ui => shutdownconfirmdlg.ui
shutdownconfirm.cpp => shutdownconfirmdlg.cpp
2016-04-14 14:50:59 +08:00
Chocobo1
65d9739c6c Enlarge dialog size. Closes #5091.
This avoids text clipping when using Qt4 lib.
2016-04-14 14:50:59 +08:00
Chocobo1
6a11056b60 Rename enum
Change identifier from ShutdownAction to ShutdownDialogAction
Change enum value from None to Exit
2016-04-14 14:50:59 +08:00
Chocobo1
d3fb46663c Refactor
Add helper function to initialize shutdown message.
Group similar functions together.
Merge shutdown() function into its only caller.
Add override keyword
2016-04-14 14:25:12 +08:00
sledgehammer999
e4c0da4ed4 Merge pull request #5083 from glassez/coding
Fix coding style rules. Closes #5075
2016-04-13 08:49:01 -05:00
Vladimir Golovnev (Glassez)
f89819bbdb Fix coding style rules
Closes #5075
2016-04-13 16:24:38 +03:00
sledgehammer999
32490f1ef6 Merge pull request #4995 from Chocobo1/border
Search UI tweaks
2016-04-13 07:11:31 -05:00
sledgehammer999
a33cfc26dc Merge pull request #5085 from glassez/nova2dl
Use nova2dl.py script instead of DownloadManager. Closes #5026
2016-04-13 07:07:01 -05:00
Sjoerd van der Berg
03d1dad2a3 Fix variable name 2016-04-13 11:17:36 +02:00
Sjoerd van der Berg
c7c71d3c88 Change back to the original names for the announce address
Only allow ip's through that match the currenrly selected network interface and address
2016-04-13 10:51:29 +02:00
Vladimir Golovnev (Glassez)
a9e63283cc Use nova2dl.py script instead of DownloadManager
Closes #5026
2016-04-13 08:06:06 +03:00
sledgehammer999
b13c991f4b Sync translations from Transifex and run lupdate. 2016-04-13 02:02:07 +03:00
sledgehammer999
cd4f288f67 Follow project coding style. Issue #2192. 2016-04-13 01:53:54 +03:00
sledgehammer999
5e796054ba Merge pull request #4261 from onto/master
SpeedPlotView: speedup
2016-04-12 17:42:32 -05:00
sledgehammer999
b8060bc507 Merge pull request #5038 from Chocobo1/fix_resizing
Fix resizing bug in "add torrent dialog"
2016-04-12 16:56:09 -05:00
sledgehammer999
29394293ed Merge pull request #5108 from Chocobo1/ui_fixes
Fix long text clipping. Closes #5091.
2016-04-12 15:55:32 -05:00
sledgehammer999
50f7c734cb Merge pull request #5101 from evsh/deduplicate-search-download-code
Remove duplicated code from search tab and widget
2016-04-12 15:31:25 -05:00
sledgehammer999
8cb4e7934e Merge pull request #5104 from evsh/cmake
cmake: reflect qmake project changes
2016-04-12 15:21:41 -05:00
sledgehammer999
e3409228da Fix qt5 bundle on OSX. Closes #4014. 2016-04-12 23:19:02 +03:00
Chocobo1
1099a5006f Cleanup header include
Code formatting
2016-04-13 02:45:08 +08:00
sledgehammer999
87e8bc5722 Change gpg signing key.
I forgot the passphrase to the old one.
2016-04-12 20:07:04 +03:00
Chocobo1
71ec5c5c05 Fix long text clipping. Closes #5091. 2016-04-13 01:07:00 +08:00
Chocobo1
216d98844b Move m_searchPattern widget from code to .ui file 2016-04-12 16:14:09 +08:00
Chocobo1
a52f9d4ef9 [Search] Add seperator for categories & plugins
Sort categories & plugins entries
Rename & reorder entries
Use full name for plugins
2016-04-12 16:14:08 +08:00
Chocobo1
231262ad8e [Search] match combobox height to button height 2016-04-12 11:38:27 +08:00
Chocobo1
2d6669b88d [Search] minor cleanups 2016-04-12 11:38:27 +08:00
Eugene Shalygin
f51753f166 cmake: reflect qmake project changes 2016-04-12 02:07:10 +02:00
sledgehammer999
484cd2f1ce Merge pull request #4670 from glassez/rsscookies
Implement application wide cookies management dialog. Closes #4638
2016-04-11 18:54:36 -05:00
Vladimir Golovnev (Glassez)
1760beed17 Fix MainWindow coding style (Issue #2192) 2016-04-11 19:15:50 +03:00
Vladimir Golovnev (Glassez)
a6595507f0 Fix macro define cross over access specifiers 2016-04-11 19:15:48 +03:00
Vladimir Golovnev (Glassez)
c193d448d8 Delete old RSS cookies dialog 2016-04-11 19:15:47 +03:00
Vladimir Golovnev (Glassez)
c982813acb Create basic cookies management dialog 2016-04-11 19:14:28 +03:00
Vladimir Golovnev (Glassez)
95ddc57c13 Implement basic cookies model 2016-04-11 16:58:28 +03:00
Eugene Shalygin
5063940138 Remove duplicated code from search tab and widget
Both download handlers (in the tab and widget classes) convert model
index into an URL, set row color, and call download function.
Make the download button handler (in the SearchWidget class) call the
slot of the SearchTab class.
2016-04-11 14:00:50 +02:00
sledgehammer999
feab999093 Merge pull request #5070 from Chocobo1/icon_sizehint
Improve TransferListDelegate::sizeHint
2016-04-10 11:39:06 -05:00
Sjoerd van der Berg
e2f43b3383 Add option to bind directly to an IP instead of using a network Interface 2016-04-09 09:19:22 -07:00
Bert Verhelst
13e67f176a resized icons to 32px by 32px 2016-04-08 20:59:46 +02:00
sledgehammer999
43d52026b7 Merge pull request #5077 from ngosang/warnings
Fix uic warnings. Closes #5056
2016-04-05 17:19:15 -05:00
sledgehammer999
acef6ad973 Merge pull request #5069 from Chocobo1/dpi
More DPI changes
2016-04-05 17:18:18 -05:00
sledgehammer999
b30048202a Merge pull request #3989 from evsh/filter-search
Implement search filters. Partially closes #972
2016-04-05 17:17:27 -05:00
Eugene Shalygin
cc09e7e834 refactor SettingsStorage class
1. Extract "transaction" support for QSettings into separate class
TransactionalSettings.
2. Define macrto with explicit name for the case when this "transaction"
support is needed.
3. A bit optimize QHash <-> QSettings copying: replace assign with
insert() and remove repetitive key lookups.
4. In save() check dirty status before getting the lock too.

The changes from items 1 and 2 make text more structured and the logic
of the SettingsStorage class gets separated from the implementation level
task of guarding the settings serialization. The changes in 3 and 4 do not
make the app much faster, but neither make any harm to the code readability.
2016-04-05 18:43:00 +02:00
sledgehammer999
364c22bee7 Fix indentation. 2016-04-05 00:54:10 +03:00
Anton Lashkov
cdab0bb140 SpeedPlotView: code correction 2016-04-04 23:05:25 +04:00
Anton Lashkov
8a6866d409 SpeedPlotView: Simplify code using PointData struct 2016-04-04 23:05:25 +04:00
Anton Lashkov
b599a8e2fb SpeedPlotView: Use separate buffers for periods with reduce number of points. Fix coding style. 2016-04-04 23:05:25 +04:00
Anton Lashkov
baadf34134 SpeedPlotView: Save int's instead of double's 2016-04-04 23:05:25 +04:00
Anton Lashkov
dd9728334a SpeedPlotView: Replace QQueue by boost::circular_buffer, reduce number of points to draw, increase legend background size 2016-04-04 23:05:25 +04:00
ngosang
ce41702cbe Fix uic warnings. Closes #5056 2016-04-04 20:21:10 +02:00
Chocobo1
4eadda5c9a Improve TransferListDelegate::sizeHint 2016-04-04 19:03:27 +08:00
Chocobo1
f651062991 Let windows handle all widgets scaling.
Declare ourselves as a Non DPI–aware app.
Tested with Qt 5.6.
2016-04-04 16:44:44 +08:00
Chocobo1
7d3e903db0 Fix resizing bug in "add torrent dialog". Closes #5036.
1. Place all widgets in "Torrent information" into the same grid layout
instead of different layouts.
2. Tweak tab order.
2016-04-04 16:41:21 +08:00
Eugene Shalygin
b6b819a2a1 Optimize widgets inside of the search tab
Since we already have searchtab.ui, let's set up all the widgets there.
Additionally, save a bit of vertical space by putting results label in
a row with the filter widgets.
2016-04-04 02:10:09 +02:00
Eugene Shalygin
1336cb7a61 Implement search filters in the proxy model. Partially closes #972 2016-04-04 02:09:32 +02:00
sledgehammer999
cd2496215e Merge pull request #5043 from evsh/uncrustify
update uncrustify config
2016-04-03 16:50:49 -05:00
sledgehammer999
2b0ad4477e Fix memory leak. 2016-04-04 00:10:18 +03:00
Eugene Shalygin
57605cb840 update uncrustify config 2016-03-31 15:56:19 +02:00
sledgehammer999
93d8cadaaf Bump API_VERSION and API_VERSION_MIN. 2016-03-29 23:15:11 +03:00
sledgehammer999
fdc44871ca Fix public key commit again. 2016-03-28 22:15:24 +03:00
sledgehammer999
7f6e6264a8 Fix newlines in previous commit. 2016-03-28 22:13:33 +03:00
sledgehammer999
3db384efd5 Add public key used for signing source tarballs and binaries. 2016-03-28 22:10:54 +03:00
sledgehammer999
845f962bc2 Sync translations from Transifex and run lupdate. 2016-03-28 21:36:48 +03:00
sledgehammer999
ad1b5bdd47 Merge pull request #5021 from evsh/cmake
cmake: fix compilation
2016-03-28 13:27:00 -05:00
sledgehammer999
4c02bdb092 Merge pull request #5020 from Chocobo1/rss_exec
Minor UI tweaks
2016-03-28 13:25:38 -05:00
sledgehammer999
0c3813c9c5 Merge pull request #5022 from ngosang/torlock2
[Search engine] Added TorLock search engine. Fix #5012
2016-03-28 13:17:05 -05:00
Eugene Shalygin
1d6a1db491 cmake: make it compile on OS X 2016-03-28 19:59:11 +02:00
Eugene Shalygin
1e9bbce249 cmake: fix compilation 2016-03-28 19:44:59 +02:00
Bert Verhelst
0dd8f21511 Merge branch 'master' into stylized-icons-main-bar
# Conflicts:
#	src/icons/skin/ratio.png
2016-03-28 15:07:31 +02:00
Chocobo1
f1b5815f95 Minor cleanups in RSS 2016-03-28 18:32:28 +08:00
sledgehammer999
696ea0bf94 Merge pull request #5005 from ngosang/crash_fix
Potential fix for crash. Closes #4990, #4905, #4864, #4855, #4818, #4726,  #4648
2016-03-27 15:49:14 -05:00
sledgehammer999
c2b6e1ce1a Fix periodic latency spikes on Windows with WiFi connections. Closes #4209. 2016-03-27 22:53:40 +03:00
Chocobo1
c474810294 Beautify messages
And some refactor
2016-03-27 22:27:13 +03:00
Chocobo1
5c5b007618 confirmshutdowndlg.ui cleanup
shutdownconfirm.cpp cleanup
2016-03-27 22:26:57 +03:00
sledgehammer999
18ee87f586 Fix previous commit. 2016-03-27 22:26:00 +03:00
sledgehammer999
2b8327c807 Merge pull request #4218 from d3faultdotxbe/master
Add 'never show again' checkbox/pref to auto-exit confirm dialog
2016-03-27 14:24:50 -05:00
sledgehammer999
fa8bae8931 Fix commit about Esperanto. Closes #4999 again. 2016-03-27 21:06:28 +03:00
sledgehammer999
69a7747d4b Merge pull request #5014 from Chocobo1/fix_caja
Fix "Open Containing Folder" for caja
2016-03-27 11:14:40 -05:00
sledgehammer999
fb8e7a2084 Merge pull request #5012 from ngosang/torlock
[Search engine] Added TorLock search engine
2016-03-27 11:10:59 -05:00
sledgehammer999
bdd31b8f82 Merge pull request #4997 from ngosang/fix_python2_encoding
[Search engine] Python2 encoding and URL getting mechanism in BTDigg
2016-03-27 11:09:45 -05:00
ngosang
9207689941 [Search engine] Added TorLock search engine. Fix #5012 2016-03-27 17:38:49 +02:00
ngosang
b86f92212f [Search engine] Added TorLock search engine 2016-03-27 16:20:27 +02:00
Chocobo1
851d97d95e Fix "caja" file manager opens the file instead of opens the directory. Closes #5003.
Now it opens the directory correctly.
2016-03-27 16:41:34 +08:00
sledgehammer999
1eb6b05bbb Merge pull request #4961 from glassez/codingstyle
Add new Coding Style rules for some c++11 features
2016-03-26 06:42:43 -05:00
Vladimir Golovnev (Glassez)
645c3bf69f Add new Coding Style rules for some c++11 features 2016-03-26 08:11:52 +03:00
sledgehammer999
cef150eee6 Fix selection of Esperanto locale. Closes #4999. 2016-03-26 03:23:39 +02:00
sledgehammer999
d721939d5f Use SettingsStorage instead. 2016-03-26 01:50:13 +02:00
sledgehammer999
663791fac2 Raise the max log entries limit. 2016-03-26 01:39:13 +02:00
sledgehammer999
1058572c8a Implement file logger. 2016-03-26 01:39:13 +02:00
sledgehammer999
73832a5ed8 Add ability to filter log messages by type. 2016-03-26 01:39:13 +02:00
sledgehammer999
b0c324ace8 Minor log widget code optimizations. 2016-03-26 01:39:13 +02:00
sledgehammer999
6a281bef8f Follow project coding style. Issue #2192. 2016-03-26 01:39:13 +02:00
ngosang
2ea1716c1a Potential fix for crash. Closes #4990, #4905, #4864, #4855, #4818, #4726, #4648 2016-03-25 20:38:18 +01:00
ngosang
e557634feb [Search engine] Change URL getting mechanism in BTDigg 2016-03-23 14:27:01 +01:00
ngosang
376ff79f16 [Search engine] Fix Python 2 encoding problems 2016-03-23 13:35:55 +01:00
Chocobo1
0bbdda32e8 Remove border around execution log 2016-03-23 15:23:49 +08:00
sledgehammer999
2f19594bef Merge pull request #4960 from ngosang/webui_minor
[WebUI] Add missing string
2016-03-21 07:58:58 -05:00
sledgehammer999
3b5d27093a Merge pull request #4975 from evsh/uncrustify
update uncrustify config
2016-03-20 13:22:48 -05:00
sledgehammer999
edb8670dc0 Merge pull request #4972 from Chocobo1/travis_trusty
TravisCI: switch to Trusty image
2016-03-20 12:09:09 -05:00
Chocobo1
09194f8e1b TravisCI: switch to Trusty image. Closes #4953.
Drop workaround for gcc-4.8
2016-03-21 00:24:30 +08:00
Eugene Shalygin
1a0bc3cf66 update uncrustify config 2016-03-18 17:51:19 +01:00
sledgehammer999
0da4bfa0cf Fix selection of Portuguese translation files.
Qt returns "Brazil" as country of QLocale("pt") instead of "Portugal". This conflicts with QLocale("pt_BR").
Rename the pt.ts to pt_PT and put a language mapping in tx's config for that locale.
Closes #4776.
2016-03-18 03:20:20 +02:00
sledgehammer999
3067f82aea Potential fix for crash. Closes #4607. 2016-03-18 01:52:43 +02:00
sledgehammer999
2bb76bf781 Don't display warning when folder named stayed the same.
Copy some code from AddNewTorrent dialog and beautify a bit.
Closes #4970.
2016-03-18 01:09:05 +02:00
sledgehammer999
7794502324 Correctly hide useless columns in AddNewTorrent file treeview. Closes #4955. 2016-03-18 00:23:11 +02:00
sledgehammer999
e48649ac3e Merge pull request #4463 from buinsky/b
Change appearance of speed labels in status bar
2016-03-16 18:26:31 -05:00
sledgehammer999
f91fa45860 Merge pull request #4561 from Chocobo1/appveyor
Add appveyor support
2016-03-16 16:28:35 -05:00
Chocobo1
c15ddbc53c Add appveyor support 2016-03-17 02:29:00 +08:00
buinsky
d63f9e751d WebUI: Select category on right click 2016-03-16 13:17:07 +03:00
buinsky
fc077257d0 WebUI: Don't show several context menus at the same time 2016-03-16 13:17:07 +03:00
buinsky
d265d2e1a0 WebUI: Adjust context menu position 2016-03-16 13:17:07 +03:00
buinsky
ead592647a WebUI: Implement delete torrents by category 2016-03-16 13:17:07 +03:00
buinsky
2c24c0bfbf WebUI: Implement pause torrents by category 2016-03-16 13:17:07 +03:00
buinsky
f7833c9f0c WebUI: Implement start torrents by category 2016-03-16 13:17:07 +03:00
buinsky
24584503d9 WebUI: Implement removing unused categories 2016-03-16 13:17:07 +03:00
buinsky
50f2437ac3 WebUI: Implement removing categories 2016-03-16 13:17:07 +03:00
buinsky
a4dca52617 WebUI: Implement adding categories 2016-03-16 13:17:07 +03:00
buinsky
a939fca4ac WebUI: Add empty context menu to categories filter 2016-03-16 13:17:07 +03:00
buinsky
d30a799b45 WebUI: Rename function updateCategoryFN to setCategoryFN 2016-03-16 13:17:07 +03:00
buinsky
c003229fcf WebUI: Refactor ContextMenu class 2016-03-16 13:17:07 +03:00
buinsky
dbf995480a WebUI: Change the order of the values of speed labels 2016-03-15 20:21:15 +03:00
buinsky
3361f1cd80 GUI: Change the order of the values of speed labels 2016-03-15 20:19:55 +03:00
ngosang
f53cc05f52 [WebUI] Add missing string 2016-03-15 15:50:10 +01:00
buinsky
99aeacf9b0 Refactoring of StatusBar::refreshStatusBar function 2016-03-15 15:18:50 +03:00
buinsky
2d9f90c3b5 Follow project coding style. Issue #2192. 2016-03-15 15:18:50 +03:00
sledgehammer999
45b68bd46c Sync translations from Transifex and run lupdate. 2016-03-15 00:40:44 +02:00
sledgehammer999
8c83fd5e24 Merge pull request #4916 from funkydude/master
Move some URLs overs to HTTPS
2016-03-14 12:15:46 -05:00
funkydude
268a5a95c8 Move some URLs overs to https 2016-03-14 17:01:51 +00:00
sledgehammer999
2efdddb9af Always delete partfile (libtorrent 1.1.x). 2016-03-14 14:53:14 +02:00
sledgehammer999
8c36f753f9 Merge pull request #4867 from evsh/peers-show-files
Show downloading files in peers list. Attempt #2
2016-03-13 19:14:48 -05:00
sledgehammer999
d39d40c064 Don't display Country option in PeerListWidget header menu when country resolution is disabled. 2016-03-14 01:17:59 +02:00
sledgehammer999
9a91ed501e Merge pull request #4767 from thalieht/toggle_peer_columns
Add toggle columns menu for peerlist. Closes #3301
2016-03-13 18:17:12 -05:00
sledgehammer999
502d633175 Merge pull request #4930 from Chocobo1/refactor
Minor refactor
2016-03-13 17:30:47 -05:00
sledgehammer999
d1ce5826e1 Merge pull request #4917 from Chocobo1/fix_comment_space
Fix additional space in comment label
2016-03-13 17:29:14 -05:00
sledgehammer999
1fb020fb3a Merge pull request #4939 from Chocobo1/option_tab_sel
Fix tab icons messed up.
2016-03-13 15:30:40 -05:00
Chocobo1
7ac7268b8f Fix tab icons messed up in Ubuntu 16. Closes #4929.
Fixup of 1c25603686.
The following settings default are different between DEs, so they must set explicitly:
movement, flow, isWarpping, resizeMode, viewMode
2016-03-11 14:13:33 +08:00
sledgehammer999
e21c346183 Merge pull request #4935 from evsh/cmake
cmake: fix library namaes for Qt5 version of QtSingleApplication
2016-03-10 14:30:41 -06:00
Eugene Shalygin
5fbac5da5b cmake: fix library namaes for Qt5 version of QtSingleApplication
At least on Gentoo they start with 'Qt5', not 'Qt'
2016-03-09 23:32:35 +01:00
Chocobo1
e7ff5eb6b1 Minor refactor 2016-03-09 14:08:44 +08:00
sledgehammer999
d41031ebf7 Merge pull request #4925 from evsh/cmake
cmake: copy qt version requirements from autotools
2016-03-07 15:52:15 -06:00
Eugene Shalygin
05e4d4fc0d cmake: copy qt version requirements from autotools
Set versions 4.8.0 and 5.2.0 as minimal required for Qt4 and Qt5.
2016-03-07 22:38:40 +01:00
sledgehammer999
8656c1897d Merge pull request #4922 from evsh/cmake
cmake: fix man installation
2016-03-07 14:17:02 -06:00
Eugene Shalygin
6800c1a6ad cmake: fix man installation
Fix copy-n-paste error: for non-GUI build we have to install
qbittorrent-nox.1, but not qbittorrent.1.
2016-03-07 15:15:38 +01:00
Chocobo1
dd2dcc4147 Fix additional space in comment label 2016-03-07 12:34:01 +08:00
thalieht
1fa6f3123b add toggle columns for peerlist 2016-03-06 23:59:36 +02:00
sledgehammer999
80ac326f28 Merge pull request #4911 from glassez/fixes
Fix save path bugs
2016-03-06 15:46:46 -06:00
Vladimir Golovnev (Glassez)
c047ef5b37 Fix save path bugs 2016-03-06 21:23:15 +03:00
sledgehammer999
b11ab06bb2 Merge pull request #4904 from UnDifferential/master
Support SSL certificate bundles. Closes #4896.
2016-03-06 10:49:14 -06:00
UnDifferential
f50a8d4f59 Support SSL certificate bundles. Issue #4896. 2016-03-05 14:10:28 -05:00
sledgehammer999
45617e086c Merge pull request #4908 from evsh/cmake
cmake: fix systemd unit install path
2016-03-05 13:05:30 -06:00
Eugene Shalygin
5996738030 cmake: fix systemd unit install path 2016-03-05 19:23:43 +01:00
sledgehammer999
46a355675e Fix commit 83e931766f (wrong conflict resolution). 2016-03-05 19:49:15 +02:00
sledgehammer999
89b334d71c Merge pull request #4451 from netjunki/master
add a remaining column to the torrent content model
2016-03-05 10:42:14 -06:00
sledgehammer999
8372c819e9 Merge pull request #4903 from evsh/cmake
fix cmake build
2016-03-05 08:51:34 -06:00
sledgehammer999
96c2947283 Merge pull request #4849 from Chocobo1/run_ext_slash
Save "Run external program" input as is. Closes #4830.
2016-03-05 08:51:14 -06:00
Chocobo1
83e931766f Add tip about adding quotation marks around parameter 2016-03-05 11:34:56 +08:00
Chocobo1
6835b99f10 Save "Run external program" input as is. Closes #4830. 2016-03-05 11:33:55 +08:00
Eugene Shalygin
45b1a75d56 fix cmake build 2016-03-05 00:36:17 +01:00
sledgehammer999
15ec515872 Merge pull request #4877 from evsh/cmake
add basic cmake support
2016-03-04 17:30:08 -06:00
sledgehammer999
0190ac9037 Merge pull request #4885 from Chocobo1/comment_scroll
Put comment_lbl in QScrollArea.
2016-03-04 17:28:42 -06:00
sledgehammer999
ee0306c4fd Merge pull request #4883 from evsh/fix-avg-speed-units
Fix typos in speed label text
2016-03-04 17:28:12 -06:00
sledgehammer999
56605cd0c3 Merge pull request #4865 from Chocobo1/os_name
Shorten crash report on windows
2016-03-04 17:27:48 -06:00
sledgehammer999
3ddb1b98b3 Merge pull request #4833 from dsemi/master
Do not try to parse request message when content-length is 0
2016-03-04 17:26:28 -06:00
sledgehammer999
8b559a8b51 Merge pull request #4824 from starius/mxe-compat
compatibility with MXE
2016-03-04 17:25:57 -06:00
sledgehammer999
1cfda610cc Merge pull request #4781 from DoumanAsh/python_align_search_style
[search engine] Align search engine url getting mechanism. Closes #4778
2016-03-04 17:25:05 -06:00
sledgehammer999
6ff929e567 Merge pull request #4784 from glassez/asm
Implement Advanced Saving Management subsystem
2016-03-04 17:22:06 -06:00
Vladimir Golovnev (Glassez)
dd34663224 Implement Advanced Saving Management subsystem
Closes #4696
2016-03-04 19:59:53 +03:00
Vladimir Golovnev (Glassez)
d05d5a85a5 Move Preferences backend code into SettingsStorage class
Closes #4764
2016-03-04 08:39:00 +03:00
Boris Nagaev
f4dc5c6809 configure: pass variable QMAKE_LRELEASE to qmake 2016-03-03 07:54:34 +03:00
Boris Nagaev
e4c8862cc5 winconf-mingw.pri: clean library names
* remove versions from libraries,
  * remove *.dll from libraries
    (actual name of library files can be "libfoo.a")
2016-03-03 07:52:57 +03:00
Boris Nagaev
39d8f09c38 winconf.pri: change example library path for build
Path with "<", ">" causes errors when building in MXE.
http://mxe.cc/

Removing or commenting out these hardcoded paths is not
desirable, as they serve as a guide (on what to edit) for
the newcomers that want to build on windows.

See https://github.com/qbittorrent/qBittorrent/pull/4824#issuecomment-186936960
2016-03-03 07:52:57 +03:00
Boris Nagaev
fa2a1ad6d3 winconf.pri: use mask "win32-g++*"
Mask "win32-g++" doesn't match MXE.
Mask "win32-g++*" match MXE.
See http://stackoverflow.com/a/14523545
See http://mxe.cc
2016-03-03 07:50:20 +03:00
Chocobo1
94ae44bb71 Put comment_lbl in QScrollArea. Closes #4881. 2016-03-02 12:05:56 +08:00
Eugene Shalygin
7080d3da98 Fix typos in speed label text
Qt's tr() ate 'true' parameter, which was supposed to be for
friendlyUnit()
2016-03-01 23:49:33 +01:00
Dan Seminara
d75564b885 Do not try to parse request message when content-length is 0 2016-02-29 15:57:34 -05:00
Eugene Shalygin
64daecb266 add basic cmake support 2016-02-29 12:53:43 +01:00
Chocobo1
d0e31adaf7 Create helper function to get libtorrent version 2016-02-28 17:47:43 +08:00
Chocobo1
12627bbc10 Create helper function to get boost version 2016-02-28 17:47:42 +08:00
Chocobo1
498f5e3877 Create helper function to get OS name 2016-02-28 13:23:06 +08:00
Eugene Shalygin
8baa144933 Use correct piece size while calling torrent_info::map_block()
This should fix crashes. Issue #4597
2016-02-27 21:07:54 +01:00
Eugene Shalygin
b24bdcb8d9 Revert "Temporarily revert PR #2885 (filename column in peers view)."
This reverts commit 69d52a06d7.
2016-02-27 20:51:39 +01:00
Chocobo1
7b2fab411c Comment out "List of linked Modules" section in windows crash report.
It is bloating the crash report with unhelpful messages.
2016-02-27 05:42:48 +08:00
Vladimir Golovnev (Glassez)
a96cabfe73 Make AddNewTorrentDialog behavior uniform 2016-02-23 16:02:17 +03:00
sledgehammer999
654c8edc6b Merge pull request #4831 from Chocobo1/mail_time
Fix malformed date header in email.
2016-02-21 16:41:31 -06:00
Chocobo1
f83f3b84ca Follow project coding style. Issue #2192. 2016-02-22 03:18:37 +08:00
Chocobo1
60417a598a Simplify statement 2016-02-22 03:18:35 +08:00
Chocobo1
41fe85b624 Fix malformed date header in email. Closes #4828. 2016-02-22 03:18:02 +08:00
sledgehammer999
c1f7446c26 Partially revert decfae7b8a. Newer libtorrent RC_1_1 has added back the missing variables. 2016-02-21 18:42:55 +02:00
sledgehammer999
12e1cae93c Merge pull request #4810 from Chocobo1/addtor_fixup
Remove additional vertical spacer.
2016-02-21 09:46:35 -06:00
Bert Verhelst
95df9c5cf6 Delete collapse-expand.svg
This is a gif and wont be as crisp
2016-02-20 13:52:09 +01:00
Bert Verhelst
4c4fb44363 Delete arrow-right.svg
This is a gif and won't be as crisp as the original
2016-02-20 13:51:45 +01:00
Bert Verhelst
d9cf1187d7 Added png converted files for skin icons 2016-02-20 12:57:41 +01:00
Bert Verhelst
403de336d2 Added the last of the skin icons (svg) 2016-02-20 12:52:30 +01:00
Chocobo1
ebc7997dbf Remove additional vertical spacer.
Fixup of 843f7ed.
2016-02-17 22:47:39 +08:00
sledgehammer999
cd85d00b3b Merge pull request #4251 from Chocobo1/200_scaling
Fix incorrectly displayed UI elements on Windows
2016-02-16 15:12:54 -06:00
Chocobo1
51b7e299b4 Simplify resize actions for AddNewTorrentDialog 2016-02-16 11:39:29 +08:00
Chocobo1
3b7fcf0813 Disable cell selection in advanced options. Fixup of a8b39475. 2016-02-16 11:39:29 +08:00
Chocobo1
76dd4ea5c0 Put links into table 2016-02-16 11:39:28 +08:00
Chocobo1
c5f5292d9e Set icon directly in .ui file 2016-02-16 11:39:27 +08:00
Chocobo1
b2527a0ad6 Make authors email clickable & selectable 2016-02-16 11:39:27 +08:00
Chocobo1
2fbb712f57 about_imp.h: Use larger qbt icon
Shrink title size
2016-02-16 11:39:26 +08:00
Chocobo1
1c25603686 Fix weird left panel icon layout
Remove Advanced page border
2016-02-16 11:39:25 +08:00
Chocobo1
aa246f0ca8 Let OS handle DPI scaling for now. Should let Qt do the work when it's more mature.
Opt-in to the high DPI pixmap support
Closes #2963.
2016-02-16 11:39:25 +08:00
Chocobo1
f410b29c99 Follow project coding style. Issue #2192. 2016-02-16 11:39:24 +08:00
Chocobo1
e35a7ef9d3 Move statusbar styelsheet to where it belongs 2016-02-16 11:39:23 +08:00
Chocobo1
f058e666e5 Use short date in addnewtorrentdialog
Correction "Free disk space" to "Free space on disk"
2016-02-16 11:39:23 +08:00
Chocobo1
843f7ede8f Cleanup addnewtorrentdialog.ui
Reorder Torrent info column
Rename "Save as" to "Save at"
2016-02-16 11:39:22 +08:00
sledgehammer999
b099a766e6 Don't merge trackers for private torrents. Closes #2928. 2016-02-15 03:24:22 +02:00
Douman
d5209d7ddf Align search engine url getting mechanism. Closes #4778
1. Switch to retrieve_url instead of low-level HTTPConnection module usage
2016-02-10 16:05:12 +03:00
sledgehammer999
f37aed868e Merge pull request #4744 from Chocobo1/splash_scrn
Fix potential race condition in showSplashScreen()
2016-02-09 09:50:22 -06:00
sledgehammer999
09d3f73154 Merge pull request #4772 from glassez/fix_crash
Fix crash caused by AdvancedSettings::addRow()
2016-02-08 14:29:37 -06:00
Vladimir Golovnev (Glassez)
9a393bbcea Fix crash caused by AdvancedSettings::addRow() 2016-02-08 18:25:40 +03:00
Chocobo1
a43db66d87 Cleanup about.ui
Shorten text in "Libraries" tab, to avoid About dialog being too wide
Make QLabels in Libraries tab selectable
Use QGroupBox in "Author" tabs
Rename "Thanks to" to "Special Thanks"
Rename "Translation" to "Translators"
Remove borders in "Thanks to", "Translation", "License" tabs
2016-02-07 11:18:28 +08:00
Chocobo1
a667f900c5 Set "Show splash screen on start up" option default to off 2016-02-07 10:48:51 +08:00
Chocobo1
65a30bab3f Cleanup about_imp.h
Fix dialog too narrow on highDPI screens
Remove IRC link
Rewrite about text to support RTL languages better
Follow project coding style. Issue #2192.
2016-02-06 10:12:43 +08:00
sledgehammer999
958b70e4ac Merge pull request #4403 from glassez/fastresume
Improve .fastresume saving and torrents starting up. Closes #4315.
2016-02-05 12:06:58 -06:00
Vladimir Golovnev (Glassez)
732f46cc69 Save resume data using QSaveFile (Qt5 only) 2016-02-05 20:29:30 +03:00
sledgehammer999
30819b3cbc Merge pull request #4675 from Chocobo1/hide_zeros
Hide zero & infinity values
2016-02-05 09:59:51 -06:00
Chocobo1
ee277bf126 Add "Paused torrents only" option for "Hide zero and infinity values" 2016-02-05 11:54:28 +08:00
Chocobo1
1a010cbfc6 Fix total values for "Seeds" & "Peers" 2016-02-05 11:54:28 +08:00
sledgehammer999
176d4780b5 Merge pull request #4746 from buinsky/WebUI_torrents_request
WebAPI: Add "Added on" and "Completion on" fields to query/torrents …
2016-02-04 15:32:14 -06:00
sledgehammer999
4a5f29b0d1 Merge pull request #4482 from glassez/savepath
Manage save path in one place
2016-02-04 15:16:26 -06:00
Vladimir Golovnev (Glassez)
034bd83915 Manage save path in one place 2016-02-04 11:42:30 +03:00
buinsky
b94a1b9fbe WebAPI: Add "Added on" and "Completion on" fields to query/torrents query response 2016-02-04 09:28:51 +03:00
Ben Lau
cd9cae4121 add a remaining column to the torrent content model 2016-02-03 20:28:10 -08:00
Chocobo1
48d2beece5 Fix potential race condition. Closes #4742. 2016-02-04 00:39:10 +08:00
Chocobo1
b0a5c973a5 Simplify common paint actions 2016-02-03 12:09:23 +08:00
Chocobo1
5c4470ec07 Remove unused destructor
move get state text to its own function
2016-02-03 12:07:54 +08:00
Chocobo1
a56b745429 Follow project coding style. Issue #2192. 2016-02-03 12:07:52 +08:00
Chocobo1
325ba48601 Add "Hide zero values" option. Closes #3543. 2016-02-03 12:05:55 +08:00
sledgehammer999
6054e05e70 Merge pull request #4725 from ngosang/webui_css
[Web UI] Minor changes in CSS styles
2016-02-02 16:07:49 -06:00
sledgehammer999
87c32ccb98 Merge pull request #4731 from ngosang/webui_username
Check WebUI username and password length. Closes #4191
2016-02-02 16:06:54 -06:00
sledgehammer999
232af6b802 Merge pull request #4733 from glassez/fix
Fix upgrade corrupted fastresume file
2016-02-01 09:25:11 -06:00
Vladimir Golovnev (Glassez)
057cbed204 Fix upgrade corrupted fastresume file 2016-02-01 09:20:28 +03:00
sledgehammer999
4e4b370b4a Merge pull request #4730 from thalieht/unlock_column
Unlock the first column in peerlist too
2016-01-31 19:01:54 -06:00
Vladimir Golovnev (Glassez)
c57aaf0216 Create MagnetUri object from BC link or HASH string 2016-01-31 21:32:41 +03:00
ngosang
2ee43758d5 Check WebUI username and password length. Closes #4191 2016-01-31 19:18:45 +01:00
ngosang
9507e12ca7 [Web UI] Minor changes in CSS styles 2016-01-31 19:18:10 +01:00
thalieht
a17fc84fd0 Unlock first column in peerlist too
I just copy pasted from trackerlist (tested ofc). No idea if it can be
done differently.
2016-01-31 16:54:16 +02:00
sledgehammer999
f23cd9204c Merge pull request #4623 from glassez/libt11
Add libtorrent v1.1 basic support
2016-01-31 05:57:10 -06:00
Vladimir Golovnev (Glassez)
decfae7b8a Add libtorrent v1.1 basic support 2016-01-31 14:04:25 +03:00
Vladimir Golovnev (Glassez)
c93ada1e7b Prepare for libtorrent v1.1 support 2016-01-31 10:40:55 +03:00
Vladimir Golovnev (Glassez)
31be920ba4 Don't use wide strings in libtorrent 2016-01-31 10:40:55 +03:00
sledgehammer999
53261cc0b2 Merge pull request #4677 from buinsky/WebUI_misc_fixes
WebUI: Misc fixes and improvements
2016-01-30 12:11:46 -06:00
sledgehammer999
c8a562b865 Merge pull request #3816 from ngosang/fix_last_piece
Download more pieces in "Download first and last pieces first" feature
2016-01-30 12:08:32 -06:00
sledgehammer999
38f3c39d1d Merge pull request #4715 from ngosang/update_tpb
[search engine] Update PirateBay plugin.
2016-01-30 12:02:08 -06:00
sledgehammer999
43aede8d63 Merge pull request #4716 from ngosang/max_ratio
[Web UI] Fix max_ratio precision. Closes #4707
2016-01-30 11:59:47 -06:00
ngosang
87dc9a4a18 [Web UI] Fix max_ratio precision. Closes #4707 2016-01-30 18:22:11 +01:00
ngosang
6b6411d06b Download more pieces in "Download first and last pieces first" feature 2016-01-30 03:11:14 +01:00
ngosang
398d11a453 [search engine] Update PirateBay plugin. 2016-01-30 01:08:28 +01:00
Bert Verhelst
f579360086 converted all oxygen icons to svg files + added grunt task to convert to png
Check readme for more information on how to convert the icons to png
src/icons/oxygen/build-icons/readme.md
2016-01-29 21:39:19 +01:00
buinsky
c04f502863 WebUI: Submit the label in the new label dialog on pressing enter key 2016-01-29 18:02:36 +03:00
buinsky
3591a0cedd WebUI: Repair translation 2016-01-29 09:57:27 +03:00
sledgehammer999
193913129f Merge pull request #4360 from Chocobo1/signal_fix
Simplify signal handler
2016-01-28 16:08:49 -06:00
sledgehammer999
44624d0003 Fix loading *.magnet files from watched folders. Closes #4701. 2016-01-28 23:59:02 +02:00
sledgehammer999
2f62a79135 Merge pull request #4122 from Chocobo1/adv_options
Group settings in advanced settings table
2016-01-28 15:10:02 -06:00
sledgehammer999
063eb7e9ab Merge pull request #3941 from jconnop/announceIP
Always update native session's announce_ip setting
2016-01-28 11:44:23 -06:00
sledgehammer999
a3d6371d36 Merge pull request #2644 from birdie-github/patch-2
Let's check if the torrent file can actually be opened before passing it...
2016-01-28 11:40:58 -06:00
Chocobo1
a26d48082d Add header to differentiate settings 2016-01-26 20:30:07 +08:00
Chocobo1
acbc7d9556 Rename setRow() to addRow()
Use template to avoid code duplication
2016-01-26 20:27:02 +08:00
Chocobo1
a8b394752e Set parent object for advancedsettings
Remove borders
Resize column size correctly
2016-01-26 20:18:51 +08:00
Chocobo1
29c94d2fb5 Move code from advancedsettings.h to its own cpp file 2016-01-26 20:13:44 +08:00
Chocobo1
2fd8a0ea22 Add license in advancedsettings.h 2016-01-26 19:48:26 +08:00
sledgehammer999
0d32b9a692 Fix splash screen staying on top of all windows. Closes #1391. 2016-01-25 15:59:20 +02:00
buinsky
418734b0a3 WebUI: Fix JavaScript exception on WebUI load 2016-01-24 14:29:29 +03:00
Bert Verhelst
b752df7557 60 of the svg's in the oxigen folder converted 2016-01-22 22:11:59 +01:00
Chocobo1
4a3d9029d1 Add #include guard 2016-01-22 01:36:11 +08:00
Chocobo1
ef75ae4aee Try to concat most of the string at compile time
The lesser unsafe code in signal handler the better
Add license
2016-01-22 01:36:11 +08:00
Chocobo1
5c8a4b3912 Simplify signal handler
Try to use signal-safe functions as much as possible
Closes #3995
Define sys_signame[] ourselves on linux
2016-01-22 01:36:11 +08:00
Zach Bacon
f975187e48 tests if qmake is in path properly 2016-01-20 18:26:55 -05:00
sledgehammer999
69d52a06d7 Temporarily revert PR #2885 (filename column in peers view).
There's a bug that causes frequent crashes.
Issue #4597.
2016-01-21 00:26:03 +02:00
sledgehammer999
de5381856d Merge pull request #4619 from buinsky/WebUI_fix
WebUI: Fix unnecessary updates of peers table
2016-01-20 13:16:24 -06:00
sledgehammer999
d31ccbde15 Merge pull request #4620 from buinsky/WebUI_add_style
WebUI: Move style of dynamic table header to CSS
2016-01-20 13:16:06 -06:00
Zach Bacon
8f875962b2 fixes qmake pathing and also fixes a type in configure.ac 2016-01-20 12:47:53 -05:00
buinsky
cdb70a8c14 WebUI: Move style of dynamic table header to CSS 2016-01-20 15:16:40 +03:00
buinsky
b2839a6442 WebUI: Fix unnecessary updates of torrent peers table 2016-01-20 12:13:27 +03:00
sledgehammer999
1af8a1533e Bump Copyright year. 2016-01-19 01:46:01 +02:00
sledgehammer999
ab813df992 Bump WebUI API_VERSION and API_VERSION_MIN. 2016-01-19 01:31:39 +02:00
sledgehammer999
3fa15eeb35 Sync translations from Transifex and run lupdate. 2016-01-19 00:49:48 +02:00
sledgehammer999
d3c38da04d Merge pull request #4565 from glassez/fixes
Fix some bugs (reported by Coverity Scan)
2016-01-17 16:18:40 -06:00
sledgehammer999
717759db29 Merge pull request #4566 from buinsky/WebUI_tabs
WebUI: Remember last opened tab
2016-01-17 11:50:23 -06:00
sledgehammer999
c2a26d39af Merge pull request #4577 from glassez/hotfix
[IMPORTANT] Fix loading corrupted .fastresume file
2016-01-17 11:49:58 -06:00
sledgehammer999
b79b5a01cc Merge pull request #4586 from glassez/geoip_nogui
Allow GeoIP in NoGUI builds
2016-01-17 11:48:53 -06:00
Vladimir Golovnev (Glassez)
3df802cef7 Delete unused include 2016-01-17 10:12:55 +03:00
Vladimir Golovnev (Glassez)
dbf430ac2e Allow GeoIP in NoGUI builds 2016-01-17 10:11:55 +03:00
Vladimir Golovnev (Glassez)
3a2bd3c9b1 Fix loading corrupted .fastresume file 2016-01-16 15:27:01 +03:00
Vladimir Golovnev (qlassez)
245f424014 Optimize Session::startupTorrents()
Reduce queue size by starting up initial items (torrents) when they are detected
2016-01-16 14:36:56 +03:00
Vladimir Golovnev (qlassez)
a5780dd66c Switch to using previous fastresume file names 2016-01-16 14:36:56 +03:00
Vladimir Golovnev (qlassez)
4f01660591 Perform fastresume data saving in separate thread
Closes #4315
2016-01-16 14:36:56 +03:00
buinsky
e8789dcd02 WebUI: Remember last opened tab 2016-01-15 19:18:09 +03:00
Vladimir Golovnev (Glassez)
a35cbdc4a9 Fix unchecked dynamic_cast
Replace some unnecessary (and slow) dynamic_cast with static_cast.
2016-01-15 11:32:16 +03:00
Vladimir Golovnev (Glassez)
a203246e85 Fix unitialized pointer field 2016-01-15 09:50:29 +03:00
Vladimir Golovnev (Glassez)
ea8acf3bbd Fix unitialized scalar field bugs 2016-01-15 09:44:10 +03:00
Vladimir Golovnev (Glassez)
9bdd26de43 Simplify Log::Msg and Log::Peer
Also fixes some unitialized scalar field bugs.
2016-01-15 08:50:36 +03:00
sledgehammer999
909fc3fa50 Merge pull request #4553 from glassez/fixes
Fix some bugs (reported by Coverity Scan for the most part)
2016-01-13 17:15:02 -06:00
sledgehammer999
ca45d15424 Merge pull request #4526 from buinsky/WebUI_translation
WebUI: Repair translation
2016-01-13 17:10:07 -06:00
sledgehammer999
5e0252c152 Merge pull request #4341 from pmzqla/delete-label
WebUI: Allow to remove the label assigned to a torrent
2016-01-13 17:09:00 -06:00
Vladimir Golovnev (Glassez)
c6ca877b72 Fix unitialized scalar fields 2016-01-13 20:25:06 +03:00
Vladimir Golovnev (Glassez)
4965704b10 Fix NetworkCookieJar::deleteCookie() behavior to match Qt5 one 2016-01-13 20:24:54 +03:00
Vladimir Golovnev (Glassez)
cf25ed3d80 Fix reconfigure additional trackers
Replace wrong QList::empty() call with QList::clear()
2016-01-13 19:12:31 +03:00
Gabriele
9e91cd70ee WebUI: Allow to remove the label assigned to a torrent
Empty strings are not valid label names, but they are used to remove
torrent labels, so allow them.
2016-01-13 14:57:49 +01:00
sledgehammer999
049e622e3c Merge pull request #4547 from Chocobo1/doc_link_fix
Update CONTRIBUTING.md
2016-01-12 12:37:41 -06:00
Chocobo1
26fceae7e5 Update uncrustify script link. 2016-01-12 13:05:09 +08:00
sledgehammer999
a19e2e48a1 Merge pull request #4436 from GuidC0DE/magnet_handler_osx
Set qBittorrent as default torrent app in Mac OS
2016-01-11 12:28:38 -06:00
sledgehammer999
21f587cc45 Sync translations from Transifex and run lupdate. 2016-01-11 19:54:51 +02:00
sledgehammer999
3a99e3b755 Various updates on the Windows configuration file. 2016-01-11 19:44:44 +02:00
sledgehammer999
1fea2b3d8a Merge pull request #4286 from filipporig8/runparams
Update webui run program parameters
2016-01-11 10:14:56 -06:00
sledgehammer999
a17ca5382d Merge pull request #4538 from buinsky/WebUI_misc_fixes
WebUI: Miscellaneous fixes
2016-01-11 10:12:50 -06:00
sledgehammer999
76c075395a Merge pull request #4542 from vlakoff/translation
Work on French translation for installer
2016-01-11 10:12:12 -06:00
vlakoff
bb9516c5cb Complete French translation for installer 2016-01-11 15:57:19 +01:00
vlakoff
0779b29022 Fixes in French translation for installer 2016-01-11 15:27:01 +01:00
sledgehammer999
2bcefe364f Merge pull request #4522 from buinsky/icons
Edit speed limits and upload ratio icons
2016-01-10 07:29:47 -06:00
buinsky
00e6e00e71 Edit speed limits and upload ratio icons 2016-01-10 16:24:34 +03:00
sledgehammer999
ca4bbdd02b Merge pull request #4528 from Chocobo1/pri_rename
Rename column header
2016-01-10 06:57:42 -06:00
sledgehammer999
b863e77b63 Fix newlines in wiki rendering. 2016-01-10 14:56:53 +02:00
sledgehammer999
5e6c38a524 Add info and files for coding style. Issue #2192. 2016-01-10 14:50:05 +02:00
sledgehammer999
c75d6fd2b5 Merge pull request #4505 from starius/windows-header-lowercase
convert includes like <Windows.h> to lowercase
2016-01-10 06:26:50 -06:00
sledgehammer999
6d4a828698 Merge pull request #4525 from ngosang/tpb
[search engine] Update PirateBay plugin. Closes #4470
2016-01-10 06:24:17 -06:00
sledgehammer999
9b4a0d3dee Merge pull request #4521 from buinsky/WebUI
WebUI: Move some styles into css
2016-01-10 06:19:29 -06:00
sledgehammer999
1b44eaf6fe Merge pull request #4518 from schnurlos/patch-2
Update german.nsi
2016-01-10 06:19:10 -06:00
buinsky
165ab473df WebUI: Fix torrent table context menu
Don't show "Limit download speed" menu item for downloaded torrents.
2016-01-10 12:11:54 +03:00
buinsky
a5e6cd256c WebUI: Fix deleting torrents
Fix possible showing "qBittorrent client is not reachable" message on
deleting torrents.
2016-01-10 12:03:46 +03:00
Chocobo1
6ff1722dbf Replace names with camelCase style 2016-01-10 14:57:56 +08:00
Chocobo1
829012ae3c Use C++11 initializer list 2016-01-10 14:57:56 +08:00
Chocobo1
e330a91921 Follow project coding style. Issue #2192. 2016-01-09 17:19:35 +08:00
buinsky
f961fd6a7c WebUI: Repair translation 2016-01-09 12:04:27 +03:00
Chocobo1
9b031d2fae Rename column header 2016-01-08 22:18:41 +08:00
schnurlos
c5c540469f Update german.nsi
Translated the "A previous installation was detected ..." text.
2016-01-07 18:05:09 +01:00
buinsky
486b65487f Move some styles into css 2016-01-07 10:07:50 +03:00
ngosang
1e8299f842 [search engine] Update PirateBay URL. Closes #4470 2016-01-07 01:45:06 +01:00
ngosang
b8c4a86348 [search engine] Fix PirateBay plugin implementation for Python 3 2016-01-07 01:41:16 +01:00
sledgehammer999
05b557c27f Merge pull request #4515 from ngosang/es-translation
Update installer translations in Spanish language
2016-01-06 17:49:09 -06:00
sledgehammer999
abcdd105e3 Don't require GUI libs for qt4 nox build. Closes #4404. 2016-01-07 01:41:40 +02:00
ngosang
6202156f97 Update installer translations in Spanish language 2016-01-07 00:34:37 +01:00
Boris Nagaev
4706733846 convert includes like <Windows.h> to lowercase
There is header file windows.h, not Windows.h.
MinGW on Linux build machine is filename case-sensitive.
2016-01-05 23:29:26 +03:00
sledgehammer999
e07562beae Merge pull request #4497 from dzmat/patch-1
Update russian.nsi
2016-01-05 10:38:07 -06:00
sledgehammer999
6ccf2f9232 Merge pull request #4020 from glassez/rss
RSS code redesign (Issue #2433).
2016-01-05 10:29:13 -06:00
sledgehammer999
52d08f7112 Merge pull request #4413 from glassez/dlmgr
Improve Download Manager. Closes #4305
2016-01-05 10:10:08 -06:00
dzmat
59c6a0f736 Update russian.nsi
Translated new string/
2016-01-04 17:32:01 +06:00
Vladimir Golovnev (Glassez)
6662081044 Improve RSS parsing logic. 2016-01-04 06:59:07 +03:00
Vladimir Golovnev (Glassez)
28ed981082 Redesign RSS base classes. 2016-01-04 06:37:54 +03:00
Vladimir Golovnev (Glassez)
6f7ae728eb Move base RSS names to Rss namespace. 2016-01-04 06:19:02 +03:00
Vladimir Golovnev (Glassez)
67758cb092 Fix coding style (Issue #2192). 2016-01-04 06:16:20 +03:00
Vladimir Golovnev (qlassez)
881108057d Use DownloadManager by DNSUpdater 2016-01-04 05:51:50 +03:00
Vladimir Golovnev (qlassez)
e378a65508 Use DownloadManager by ProgramUpdater
Closes #2023
2016-01-04 05:49:02 +03:00
Vladimir Golovnev (qlassez)
12c151eb69 Save RSS cookies to common cookie storage
Closes #4305
2016-01-04 05:45:30 +03:00
Naikel Aparicio
fa34f0efcc Implemented WebUI interface for the new Watched Folders feature 2016-01-03 22:08:55 +02:00
sledgehammer999
06be9edfe1 Remove watch folders permanently only if the user accepts the Preferences dialog. 2016-01-03 22:08:55 +02:00
sledgehammer999
9c88959651 Make it scroll horizontally when necessary. 2016-01-03 22:08:55 +02:00
sledgehammer999
ecc19ff23e Fix translated string. 2016-01-03 22:08:55 +02:00
sledgehammer999
429a1ba78a Method to update the watch path parameters. 2016-01-03 22:08:55 +02:00
sledgehammer999
990e33a4b1 Don't add the watch folder before the user closes the Preferences window. 2016-01-03 22:08:55 +02:00
sledgehammer999
56ca80eb78 Support loading multiple magnets/hashes/urls per .magnet file in the watched folder(one per line). Closes #217. 2016-01-03 22:08:55 +02:00
Vladimir Golovnev (qlassez)
ed7fb20758 Fix setting custom download location for watched folder 2016-01-03 22:08:55 +02:00
sledgehammer999
bc92f156c1 Improve the "Watch folders" UI. Closes #4300. 2016-01-03 22:08:55 +02:00
sledgehammer999
e9547f7a1c Indicate to the user that he's going to download the new version.
Indicate from the installer that the old version was detected and no settings will be deleted.
Closes #4320.
2016-01-03 17:54:04 +02:00
sledgehammer999
c700b8c5c5 Move the 'qBittorrent-resume' file even when no magnets were recovered. Also make sure to rename it with a unique name. Closes #4334. 2016-01-03 16:26:36 +02:00
sledgehammer999
17f1a7d22a Merge pull request #2885 from evsh/peers-show-files
Add column with list of currently downloading files
2016-01-02 11:48:10 -06:00
sledgehammer999
15652025d3 Update native names for Chinese locales. Closes #4381. 2016-01-02 18:55:36 +02:00
sledgehammer999
ef1261de45 Merge pull request #4441 from naikel/upload_fix
Multiple Torrents Uploads Fix.  Closes #4428
2015-12-31 16:27:03 -06:00
Dmitry Victorov
a564b96ccf Set qBittorrent as default torrent app in Mac OS 2015-12-29 13:54:50 +03:00
sledgehammer999
76c16e0994 Merge pull request #4283 from Chocobo1/travis
[Travis CI] Don't build with Qt4 on OSX
2015-12-28 17:40:16 -06:00
sledgehammer999
719e71264b Merge pull request #4282 from buinsky/master
WebUI: Show filtered torrents number
2015-12-28 17:23:49 -06:00
sledgehammer999
7a0f04e667 Merge pull request #4435 from Chocobo1/crash_fix
Crash fix for #4280
2015-12-27 07:57:02 -06:00
sledgehammer999
bd85ce02da Merge pull request #4438 from glassez/tmpfolder
Fix moving torrents to Temp after app restart. Closes #4434.
2015-12-27 07:33:03 -06:00
buinsky
2691bb1540 Fix paused, active and inactive filters 2015-12-27 09:22:45 +03:00
Naikel Aparicio
c9293dd2d1 Fixed bug when uploading several files and only the last one was considered. 2015-12-26 20:55:13 -04:30
filipporig8
d3b47f45ab Update webui run program parameters 2015-12-24 14:43:28 +01:00
Vladimir Golovnev (qlassez)
30f4036c97 Fix moving torrents to Temp after app restart
Closes #4434
2015-12-23 14:13:49 +03:00
Vladimir Golovnev (Glassez)
405b06319d Move base RSS code to Core. 2015-12-22 14:07:03 +03:00
Vladimir Golovnev (qlassez)
0bffa066db Make DownloadManager to save/load cookies 2015-12-22 14:02:14 +03:00
Chocobo1
edbfff62e8 Fix typo 2015-12-22 12:43:38 +08:00
Chocobo1
deb9a6b37f Simplify statement 2015-12-22 12:40:51 +08:00
Chocobo1
07de39ff17 Add check for null. Fix provided by glassez.
Closes #4280.
2015-12-22 12:39:02 +08:00
sledgehammer999
db459b2400 Merge pull request #3832 from glassez/search
Search Engine code redesign (Issue #2433).
2015-12-21 11:13:38 -06:00
Vladimir Golovnev (Glassez)
ac365c5efb Fix coding style (Issue #2192). 2015-12-20 21:52:26 +03:00
Vladimir Golovnev (Glassez)
54979e6b53 Move basic search-related code into Core.
Also use qBittorrent torrent file download routines instead of
nova2dl.py script.
2015-12-20 19:20:59 +03:00
Eugene Shalygin
768b67d275 Add column with list of currently downloading files
Add a new column to peers list that shows list of files which are
downloaded right now from a peer. The column is empty if we do not
download anything from the given peer.
2015-12-20 01:45:35 +01:00
Eugene Shalygin
0a92cb74a5 functions for retrieving list of currently downloading files 2015-12-20 01:45:35 +01:00
Eugene Shalygin
efed388402 Revert "Remove unused parameter."
This reverts commit 87347cf0e5.
2015-12-20 01:45:35 +01:00
sledgehammer999
e4679a6eaf Merge pull request #4299 from Fale/patch-2
Fix lrelease version due to the default Qt5 build
2015-12-18 09:36:07 -06:00
Fabio Alessandro Locati
981bbae75f Fix lrelease version due to the default Qt5 build
As title
2015-12-18 12:53:31 +01:00
sledgehammer999
c3b4ebdc1b Merge pull request #3960 from Chocobo1/iso3166
Update country codes
2015-12-17 16:51:51 -06:00
sledgehammer999
450b1e75c9 Fix linux build. 2015-12-13 17:29:55 +02:00
sledgehammer999
82e02f7118 Don't apply some settings again if they weren't changed. Closes #4278. 2015-12-13 16:58:32 +02:00
sledgehammer999
2d25edd4d6 Don't recheck twice after 'Force Recheck' with 'Recheck torrents on completion' enabled. Closes #4274. 2015-12-13 14:33:16 +02:00
Chocobo1
fa92a10f15 Turn off warning on OSX builds: unused-local-typedefs
Reorder option list, sort by lt_branch then qt then gui
2015-12-10 21:11:20 +08:00
sledgehammer999
ebe6d1b603 Fix resolution of peer host names. Closes #4307. 2015-12-09 17:52:34 +02:00
d3fault
07599b5923 Add 'never show again' checkbox/pref to auto-exit confirm dialog 2015-12-09 01:01:48 -07:00
Jesse Connop
41dbb82cc2 Always update native session's announce_ip setting 2015-12-08 21:55:34 +13:00
sledgehammer999
39ad4d65e8 Sync translations from Transifex and run lupdate. 2015-12-08 00:15:50 +02:00
sledgehammer999
91a99c6903 Fix possible deadlock during application exit. 2015-12-07 23:59:45 +02:00
sledgehammer999
3e0f8a1e4e Bump WebUI API_VERSION. 2015-12-07 23:59:39 +02:00
sledgehammer999
970e21fc33 Change update URL to FossHub. Closes #4188. 2015-12-07 23:59:34 +02:00
sledgehammer999
9e20553dab Follow project coding style. Issue #2192. 2015-12-07 23:59:28 +02:00
sledgehammer999
87347cf0e5 Remove unused parameter. 2015-12-07 23:59:23 +02:00
buinsky
b10f04abbd WebUI: Show filtered torrents number 2015-12-07 23:27:45 +03:00
Chocobo1
d203f39f0a Update ISO 3166 country codes. Closes #3942. 2015-12-07 09:44:55 +08:00
sledgehammer999
75d4e2a2f2 Merge pull request #4109 from buinsky/master
WebUI: Implement peers tab
2015-12-06 13:34:25 -06:00
buinsky
05a2e5a92e Implement torrent peers table in WebUI 2015-12-06 22:21:28 +03:00
buinsky
00c765be1b Implement sync/torrent_peers request 2015-12-06 22:21:24 +03:00
buinsky
aea6c38b33 Follow project coding style. Issue #2192. 2015-12-06 22:07:47 +03:00
buinsky
1e3a57ad92 Rename 'context_menu' variable to 'torrents_table_context_menu' 2015-12-06 22:07:44 +03:00
buinsky
805f0d4c90 Rename 'myTable' variable to 'torrentsTable' 2015-12-06 22:07:42 +03:00
buinsky
2275060022 Split the DynamicTable class into 2 classes 2015-12-06 22:07:39 +03:00
buinsky
c9b74c2742 Add seeds tab to WebUI 2015-12-06 22:07:37 +03:00
Vladimir Golovnev (Glassez)
8754fd5646 Move Search-related files into Gui. 2015-12-06 21:25:40 +03:00
Vladimir Golovnev (Glassez)
3797cc767f Fix search-related file/class names. 2015-12-06 21:25:40 +03:00
sledgehammer999
2aa8c07d0e Merge pull request #3860 from glassez/base
Rename Core to Base (Closes #3733).
2015-12-06 11:03:51 -06:00
Vladimir Golovnev (Glassez)
9db93e5d8f Rename Core to Base (Closes #3733). 2015-12-06 14:27:00 +03:00
sledgehammer999
29b0200f62 Merge pull request #4269 from glassez/rss_magnet
Fix RSS isn't automarking articles as read. Closes #4260.
2015-12-06 05:16:21 -06:00
Vladimir Golovnev (Glassez)
696ce427a8 Fix RSS isn't automarking articles as read
Closes: #4260, #4233, #4221, #4133
2015-12-06 14:04:31 +03:00
sledgehammer999
17ac4b90be Use simpler DEFINE for detecting Qt5 so moc will work too. 2015-12-05 22:20:49 +02:00
sledgehammer999
623ab03492 Merge pull request #4203 from glassez/hotfixes
Hotfixes
2015-12-05 14:14:13 -06:00
sledgehammer999
b3e4d8487b Add clarifying comment. 2015-12-05 21:22:01 +02:00
sledgehammer999
bae5c6a1db Partially revert b4c9c7cde. 2015-12-05 21:18:52 +02:00
sledgehammer999
658a73e610 Merge pull request #4208 from glassez/upgrade
Improve upgrade to v3.3. Fixes #4195.
2015-12-05 12:14:37 -06:00
Vladimir Golovnev (Glassez)
bdac97147f Improve upgrade to v3.3. Fixes #4195. 2015-12-05 20:38:17 +03:00
sledgehammer999
78462dfa6c Merge pull request #4225 from glassez/export
Improve torrent export feature. Closes #4205.
2015-12-05 11:25:25 -06:00
sledgehammer999
8362cb5e4f Merge pull request #4262 from glassez/scandirs
Fix scan dirs settings saving. Closes #4254, #4239, #4187.
2015-12-05 11:17:41 -06:00
sledgehammer999
ae3c473490 Merge pull request #4250 from Chocobo1/contributing
Add CONTRIBUTING.md
2015-12-05 10:13:36 -06:00
Vladimir Golovnev (Glassez)
8014d74210 Fix scan dirs settings saving. Closes #4254, #4239, #4187. 2015-12-05 17:48:57 +03:00
Chocobo1
71bdd353d3 Add CONTRIBUTING.md 2015-12-05 11:24:01 +08:00
Bert Verhelst
ad7bce76d8 Added stylized icons for the main actions bar
This will look like this:
https://goo.gl/tV7duh
2015-12-04 21:45:12 +01:00
Vladimir Golovnev (Glassez)
7cc5a3e050 Improve torrent export feature. Closes #4205. 2015-12-03 20:18:10 +03:00
Vladimir Golovnev (Glassez)
6bf2c5a946 Remove unused LineEdit slot. Fix compiler warning. 2015-11-30 19:58:19 +03:00
Vladimir Golovnev (Glassez)
9853187051 Fix wrong encoding for listen failed error message. 2015-11-30 19:55:13 +03:00
sledgehammer999
f4ef0633c9 Merge pull request #4170 from vlakoff/filtering-v3
Support wildcards for filtering torrent list and torrent content
2015-11-29 18:13:58 -06:00
sledgehammer999
91c3de4620 Merge pull request #4145 from Chocobo1/misc_fix
Misc fixes
2015-11-29 18:13:39 -06:00
sledgehammer999
6545ba9a35 Merge pull request #4074 from Chocobo1/lineEdit
Use QLineEdit built-in ClearButton
2015-11-29 18:13:19 -06:00
sledgehammer999
797861a9c0 Merge pull request #4059 from Chocobo1/prop_cleanup
Properties widget cleanup
2015-11-29 18:13:05 -06:00
sledgehammer999
8df192e8dd Merge pull request #4051 from takiz/qblabels
"Set as default label" option
2015-11-29 18:12:37 -06:00
sledgehammer999
6f2eccd62f Merge pull request #4015 from naikel/cookies
[WebUI] Add save path, cookies and labels when adding torrents
2015-11-29 18:12:10 -06:00
sledgehammer999
a7777a48e3 Bump to v3.4.0alpha 2015-11-30 00:16:49 +02:00
sledgehammer999
b4c9c7cde4 Delete from the repo the qt4 translations used in the Windows installer. 2015-11-30 00:12:30 +02:00
sledgehammer999
8ad82fc748 Update Changelog. 2015-11-29 21:51:14 +02:00
sledgehammer999
6e5aab7e98 Sync translations from Transifex and run lupdate. 2015-11-29 21:43:11 +02:00
sledgehammer999
fd39efd846 Fix cases where the fastresume was wrongly overwritten when in 'Missing Files' status. Closes #3602. 2015-11-29 18:40:24 +02:00
sledgehammer999
86dba7bd21 Don't rebind listen port on 'network configuration changed' signal when we listen on any address. Closes #4139. 2015-11-29 14:30:49 +02:00
sledgehammer999
ac3b01e02e Merge pull request #4177 from ngosang/webui_color
[WebUI] Change colors in selected filters and torrents.
2015-11-29 06:25:47 -06:00
sledgehammer999
c267036427 Merge pull request #4178 from ngosang/torrentzup
[searchengine] Update Torrentz trackers
2015-11-29 06:16:00 -06:00
sledgehammer999
0a0c8f307b Merge pull request #4175 from glassez/seq_dl
Prevent return cached "sequential download" state. Closes #4167.
2015-11-29 06:15:22 -06:00
Chocobo1
b2bf1b3425 Reduce mainwindow border width 2015-11-29 00:21:08 +08:00
vlakoff
692cac1dc5 Support wildcards for filtering torrent list and torrent content 2015-11-26 19:02:43 +01:00
Vladimir Golovnev (Glassez)
e804e6e91a Prevent return cached "sequential download" state. Closes #4167. 2015-11-26 15:09:11 +03:00
Vladimir Golovnev (Glassez)
67e90d8d2a Make setSequentialDownload/setFirstLastPiecePriority independent. 2015-11-26 15:08:01 +03:00
sledgehammer999
88abe2baff Fix shutdown dialog. Closes #4171. 2015-11-25 18:30:43 +02:00
sledgehammer999
23748547a2 Merge pull request #4150 from glassez/coding_style
Improve CODING_GUIDELINES.md.
2015-11-23 10:19:50 -06:00
sledgehammer999
0b68c2356c Merge pull request #4111 from dpeukert/master
WebUI: Change selected color
2015-11-23 10:18:03 -06:00
sledgehammer999
0aaf4d1050 Update Changelog. 2015-11-22 22:08:33 +02:00
sledgehammer999
ce535c9492 Bump version status. 2015-11-22 22:08:21 +02:00
sledgehammer999
3e6d76245c Bump WebUI API_VERSION. 2015-11-22 22:08:16 +02:00
sledgehammer999
18f3517efa New translation: Esperanto
Also re-run lupdate.
2015-11-22 22:08:10 +02:00
sledgehammer999
09e85900d7 Sync translations from Transifex and run lupdate. 2015-11-22 22:08:04 +02:00
sledgehammer999
6e09028682 Switch to Qt5 by default. 2015-11-22 22:07:59 +02:00
Vladimir Golovnev (Glassez)
59427ed6af Improve CODING_GUIDELINES.md. 2015-11-21 11:25:14 +03:00
Chocobo1
c19e660306 Change text description for half-open connection 2015-11-20 12:08:40 +08:00
Chocobo1
067a8bf108 Fix -1 is displayed instead of C_INFINITY symbol 2015-11-20 12:05:06 +08:00
sledgehammer999
340288f308 Merge pull request #4114 from glassez/fix-4105
Fix default save path for magnet. Closes #4105.
2015-11-18 11:36:12 -06:00
sledgehammer999
b76428420e Merge pull request #4136 from glassez/remove_labels
Fix 'Remove unused labels'. Closes #4066.
2015-11-18 11:07:03 -06:00
sledgehammer999
22d9427e20 Fix reordering of first column with Qt5. Closes #2835. 2015-11-18 18:14:24 +02:00
sledgehammer999
2e3cce6755 Merge pull request #4135 from Chocobo1/speedplot_color
Fix Speed graph legend is illegible on dark background. Closes #4134.
2015-11-18 04:14:32 -06:00
Vladimir Golovnev (Glassez)
3f9b568808 Fix 'Remove unused labels'. Closes #4066. 2015-11-18 12:52:06 +03:00
Chocobo1
a74bac20c4 Fix Speed graph legend is illegible on dark background. Closes #4134. 2015-11-18 14:41:29 +08:00
sledgehammer999
ee6b968f2f Don't save/load the session state. We configure it anyway. 2015-11-17 23:03:56 +02:00
sledgehammer999
00fae05507 Don't ask the user questions in nox build when in non-interactive mode. Closes #3875. 2015-11-17 23:00:33 +02:00
sledgehammer999
9718b7d9ba New view for errored torrents. 2015-11-17 19:29:05 +02:00
sledgehammer999
bf0319f7b2 Fix status string for errored torrents. 2015-11-17 19:18:50 +02:00
sledgehammer999
5b232528cc Fixup previous commit. 2015-11-16 02:58:41 +02:00
dsimakov
1f17a7836d 1. In option window add column 'download path' for watched folders and enlarge heigth.
2. Change logic checkbox in column 'download here': if it checked,
   then torrent file will download to watchdir, if state is unchecked,
   will be use download path from next column.
2015-11-16 02:45:23 +02:00
Vladimir Golovnev (Glassez)
e183c12bed Fix default save path for magnet. Closes #4105. 2015-11-14 09:38:01 +03:00
Daniel Peukert
3901f1555d WebUI: Change selected color
The selected color was little bit too close to the progress bar color.
2015-11-14 00:23:33 +01:00
sledgehammer999
84f6a82d98 Merge pull request #4062 from glassez/speedup
Some TransferListWidget speedup.
2015-11-13 11:14:43 -06:00
Naikel Aparicio
753c9556fd Cookies support on WebUI when downloading torrent from a URL. Modified download and upload windows to allow autocompletion of browsers.
Fixed the spinner in the WebUI upload page. Modified height of the WebUI download page.

Fixed all the JavaScript functions for download and upload pages.
2015-11-10 10:02:20 -04:30
sledgehammer999
100cff1738 Merge pull request #3856 from ngosang/fix_search
[searchengine] Fix invalid plugin message and detect new plugin URL from clipboard
2015-11-10 03:15:59 -06:00
sledgehammer999
d12ab5c048 Sync translations from Transifex and run lupdate. 2015-11-10 01:13:25 +02:00
sledgehammer999
055ad080a1 Pass the alertMask to the session constructor to not lose initial alerts. 2015-11-10 00:23:59 +02:00
sledgehammer999
c771703c34 Merge pull request #3932 from Chocobo1/refactor
Refactor
2015-11-09 15:29:19 -06:00
sledgehammer999
cf1c934083 Merge pull request #3961 from Chocobo1/comment_click
Make URL in "Add Torrent File..." clickable
2015-11-09 15:27:56 -06:00
sledgehammer999
c40bab0555 Merge pull request #4094 from ngosang/webui_ipv6
[WebUI] Patch mootools-more to fix IPv6 problem. Closes #3621
2015-11-09 11:23:25 -06:00
Chocobo1
ccec11e568 Follow project coding style. Issue #2192. 2015-11-09 20:31:50 +08:00
Chocobo1
0eaf991d6f Use QLineEdit built-in ClearButton (Qt5 only) 2015-11-09 20:30:50 +08:00
Chocobo1
fadb208299 Fix compile warning:
warning: enumeration value 'Unknown' not handled in switch [-Wswitch]
2015-11-09 16:14:29 +08:00
Chocobo1
a6d2f5186f Avoid falling through the switch case 2015-11-09 16:10:04 +08:00
ngosang
80f7e7868d [searchengine] Update Torrentz trackers 2015-11-09 04:10:57 +01:00
ngosang
40bdeb6c2d [WebUI] Change colors in selected filters and torrents. 2015-11-09 03:38:37 +01:00
ngosang
e0be09dd81 [WebUI] Patch mootools-more to fix IPv6 problem. Closes #3621 2015-11-09 01:57:40 +01:00
sledgehammer999
45dbfe80a1 Merge pull request #4035 from Chocobo1/reduce_cache
Reduce max value of "Disk cache size"
2015-11-08 04:26:22 -06:00
Chocobo1
db45c11d84 Reduce max value of "Disk cache size" to 1536MB. Closes to #4028. 2015-11-08 13:58:28 +08:00
sledgehammer999
80a9896a4e Merge pull request #4080 from ngosang/privacy
Change personal email
2015-11-07 18:09:50 -06:00
ngosang
9fefdc0fbb Change personal email 2015-11-07 23:40:11 +01:00
Chocobo1
af90eadf71 Cleanup "Content" page layout
Limit lineEdit maximum size
2015-11-07 15:51:29 +08:00
sledgehammer999
a16d0f8d28 Don't connect to "any interface" when the configured network interface is missing. Closes #3943, #2741, #1159, #844 and #143. 2015-11-07 02:06:07 +02:00
sledgehammer999
472fff06dc Merge pull request #3984 from glassez/root_path
Fix TorrentHandle path methods. Closes #3847.
2015-11-06 16:03:48 -06:00
takiz
d336c7c02c "Set as default label" option 2015-11-06 23:43:10 +05:00
Vladimir Golovnev (Glassez)
91ffbfcf68 Some TransferListWidget speedup.
Handle data changed event for all torrents at once.
2015-11-06 08:38:09 +03:00
Chocobo1
7005af3047 Cleanup "Peers" page layout
Cleanup "HTTP Sources" page layout
Cleanup "Speed" page layout
2015-11-05 20:06:38 +08:00
Chocobo1
ff67d29573 Cleanup "Trackers" page layout 2015-11-05 18:37:29 +08:00
sledgehammer999
5cf976bbb2 Better fix for e6b7a429ea. 2015-11-04 23:37:35 +02:00
sledgehammer999
e6b7a429ea Fix reporting of tracker status. Closes #3101. 2015-11-04 19:13:09 +02:00
sledgehammer999
12072e2b69 Always apply filter for manually banned IPs. Related #3988. 2015-11-04 17:15:37 +02:00
sledgehammer999
4cecb585bc Merge pull request #3444 from ngosang/webui_labels
[Web UI] Labels implementation
2015-11-03 16:31:05 -06:00
sledgehammer999
66ce5c2557 Merge pull request #3332 from ngosang/addtrackers2
Automatically add trackers to new downloads. Closes #262
2015-11-02 10:51:59 -06:00
sledgehammer999
f7f23d2ae9 Merge pull request #3809 from ngosang/webui_optim
[Web UI] Code cleanup and little change in contextual menu
2015-11-01 17:38:55 -06:00
sledgehammer999
e204562f4d Merge pull request #4037 from glassez/label
Fix 'Append label to save path'. Closes #4031.
2015-11-01 11:12:16 -06:00
Vladimir Golovnev (Glassez)
c38987fc03 Provide torrent paths to external program. 2015-11-01 17:09:15 +03:00
Vladimir Golovnev (Glassez)
501ab07024 Fix TorrentHandle path methods. Closes #3847. 2015-11-01 17:09:09 +03:00
sledgehammer999
d0ebe08bf5 Merge pull request #3604 from Chocobo1/deletion
Don't remove torrent contents parent folder, even it is empty.
2015-11-01 07:35:03 -06:00
Chocobo1
4fcd107ff3 Don't remove torrent contents parent folder, even it is empty. Closes #2244. 2015-11-01 21:01:55 +08:00
Vladimir Golovnev (Glassez)
25feee2366 Fix 'Append label to save path'. Closes #4031. 2015-11-01 11:26:57 +03:00
sledgehammer999
a39ce57094 Merge pull request #4022 from glassez/vector
Fix PieceAvailabilityBar::intToFloatVector(). Closes #3937.
2015-10-29 15:59:29 -05:00
Vladimir Golovnev (Glassez)
f7150edd44 Fix DownloadedPiecesBar::bitfieldToFloatVector(). 2015-10-29 14:49:01 +03:00
Vladimir Golovnev (Glassez)
be78188691 Fix PieceAvailabilityBar::intToFloatVector(). Closes #3937. 2015-10-29 14:46:43 +03:00
sledgehammer999
c75725e2d8 Fix printing of avg download speed in General button. Closes #4013. 2015-10-28 01:47:01 +02:00
sledgehammer999
9b6122c328 Fix corner case of reseting 'm_hasSeedStatus' in 3a29d70dd5. 2015-10-28 01:46:53 +02:00
sledgehammer999
99ba8a6a53 Merge pull request #3990 from naikel/payload_fix
Changed payload functions from int to qlonglong in TorrentHandle class
2015-10-27 03:48:22 -05:00
sledgehammer999
3a29d70dd5 Correctly set the 'm_hasSeedStatus' parameter on different situations. 2015-10-26 00:53:04 +02:00
Naikel Aparicio
2a2c947602 Changed payload functions from int to qlonglong in TorrentHandle class 2015-10-25 14:29:12 -04:30
sledgehammer999
cd3dc3d645 Merge pull request #3343 from Chocobo1/tx_list
Minor style change in transfer list & filters
2015-10-25 10:09:40 -05:00
sledgehammer999
f74c68e121 React again to finished torrents when previously unselected files have finished downloading. 2015-10-25 17:03:22 +02:00
sledgehammer999
bfd30dcabc Don't put finished torrents in seed_mode.
Seed mode has special function in libtorrent. It is used to skip hash checking when adding a torrent and consider it complete.
2015-10-25 17:03:14 +02:00
Chocobo1
5d3ba06e9d Use thin border for transfer list 2015-10-25 14:06:06 +08:00
Chocobo1
e275c3ba52 Add helper function: Get DPI scaled icon size (device-dependent) 2015-10-25 14:06:06 +08:00
Chocobo1
3335a111e1 Use a larger spacing between filters
Simplify code
2015-10-25 14:06:06 +08:00
sledgehammer999
f7c8a499d5 Unload the GeoIP db when disabled. 2015-10-25 02:54:27 +03:00
sledgehammer999
ad7ad8f596 Faster GeoIP lookups.
QCache results in speed decrease.
See https://github.com/qbittorrent/qBittorrent/pull/3488#issuecomment-124731983
2015-10-25 02:54:19 +03:00
sledgehammer999
ef5b3b90c3 Don't save the GeoIP nodes beforehand.
It saves a lot of memory and isn't much faster.
2015-10-25 02:54:11 +03:00
sledgehammer999
787b824d90 Merge pull request #3323 from Chocobo1/prop_bar
Availability bar, progress bar, button group improvements
2015-10-24 06:45:12 -05:00
Jerome Leclanche
0070dcf550 LICENSE: Fix mixed indenting 2015-10-22 20:17:54 +03:00
Jerome Leclanche
213cefb001 LICENSE: Remove copy/paste error 2015-10-22 20:16:48 +03:00
Chocobo1
7e6dfa759c Replace horizontal line with border 2015-10-22 17:34:22 +08:00
Chocobo1
c6a6f85a5e Use theme color for background in PropertiesWidget 2015-10-22 17:34:22 +08:00
Chocobo1
421b45c553 Add tooltips/legend for availability bar & progress bar 2015-10-22 17:34:22 +08:00
sledgehammer999
0507876080 Merge pull request #3967 from glassez/webui
Cast MaxRatioAction to int when store as JSON. Closes #3939.
2015-10-19 15:15:45 -05:00
Vladimir Golovnev (Glassez)
52db762677 Cast MaxRatioAction to int when store as JSON. Closes #3939. 2015-10-19 21:14:41 +03:00
sledgehammer999
94037cd017 Merge pull request #3949 from netswap/patch-1
[german.nsi] Little fixes
2015-10-19 11:21:56 -05:00
Chocobo1
a16de62103 Make URL in "Add Torrent File..." clickable. Closes #3928. 2015-10-19 11:57:03 +08:00
sledgehammer999
df8def02f5 Merge pull request #3933 from glassez/streamops
Register stream operators for enum classes. Closes #3921.
2015-10-18 15:09:59 -05:00
sledgehammer999
d60f2fc7df Fix another potential crash when memory allocation failed.
See commit e95fce3084.
Related issues #3877 and #2673.
2015-10-17 18:21:33 +03:00
sledgehammer999
cc9ffc4767 Use the actual function names for debug logging. 2015-10-17 17:41:53 +03:00
sledgehammer999
f6a620cf6e Merge pull request #3951 from glassez/const
Fix possible compilation error. Closes #3947.
2015-10-16 04:55:23 -05:00
Vladimir Golovnev
a7cf8cea3f Fix possible compilation error. Closes #3947. 2015-10-16 12:02:47 +03:00
netswap
4cec06e67c [german.nsi] Little fixes
Line 6: "auf dem" instead of "am" (oriented at https://support.microsoft.com/de-de/kb/140443; more commonly used)
Line 41: "aus" instead of "in" (makes more sense imo)

Anyone else fluent in German can discuss for sure. Only because I changed something it does not mean it is *completely* right, eh? ;-)
2015-10-15 22:38:36 +02:00
sledgehammer999
41c953de46 Merge pull request #3938 from glassez/path
Use default save path if save path is not set.
2015-10-14 18:43:43 -05:00
Vladimir Golovnev (Glassez)
986bb1a8ac Use default save path if save path is not set. 2015-10-13 21:58:25 +03:00
Vladimir Golovnev
a7ff38d389 Register stream operators for enum classes. Closes #3921. 2015-10-13 10:39:17 +03:00
Chocobo1
f530bb7537 Fix availability label & progress label clipped on high DPI displays, closes #3237. 2015-10-12 15:34:22 +08:00
Chocobo1
b5adbaef78 Fix availability bar & progress bar height being too small on high DPI displays 2015-10-12 15:12:42 +08:00
sledgehammer999
4a271d358f Merge pull request #3918 from glassez/winfix
Fix compilation on Windows.
2015-10-11 16:26:46 -05:00
Vladimir Golovnev (Glassez)
d9e51c220e Fix compilation on Windows. 2015-10-11 15:07:20 +03:00
sledgehammer999
d413c2061c Merge pull request #3859 from glassez/simplify
Simplify Session/TorrentHandle classes.
2015-10-11 04:19:51 -05:00
sledgehammer999
9646794bb1 Merge pull request #3844 from glassez/added_time
Use libtorrent::torrent_status::added_time (Closes #3764).
2015-10-11 04:14:30 -05:00
Vladimir Golovnev (Glassez)
d40495a4be Simplify Session/TorrentHandle classes. 2015-10-11 08:05:57 +03:00
Vladimir Golovnev (Glassez)
b63a68c9db Use libtorrent::torrent_status::added_time (Closes #3764). 2015-10-11 07:58:56 +03:00
sledgehammer999
1ba1f90058 Merge pull request #3845 from glassez/drop_unused
Drop unused TorrentHandle methods.
2015-10-10 13:06:10 -05:00
sledgehammer999
8d025949d9 Merge pull request #3838 from glassez/wswitch
Fix compiler warnings (Closes #3826).
2015-10-10 13:01:27 -05:00
sledgehammer999
4291a08d47 Merge pull request #3649 from glassez/savepathlabel
Fix 'Append label to save path'. Closes #3495.
2015-10-10 12:45:20 -05:00
sledgehammer999
3eac05b229 Fix broken .desktop file icon for some locales. See #3905. 2015-10-09 17:53:26 +03:00
sledgehammer999
e39f8fafb1 Bump WebUI API_VERSION. 2015-10-09 16:46:20 +03:00
sledgehammer999
50b9438fb6 Cleaner way to disable linux qt5 builds on Travis. 2015-10-09 06:01:14 +03:00
sledgehammer999
357dfca3e0 Optimize text color for dark themes v2. Closes #3815. 2015-10-09 02:05:15 +03:00
sledgehammer999
8f8218c515 Fix Qt5 nox build on non-Windows. 2015-10-07 21:29:21 +03:00
sledgehammer999
10e3009c46 Enable Qt5 compilation for OS X on Travis. 2015-10-07 21:29:16 +03:00
sledgehammer999
cc5a737836 Fix Coverity Scan builds. 2015-10-05 23:39:43 +03:00
sledgehammer999
19ad58c394 Merge pull request #3685 from glassez/cpp11
Add C++11 support.
2015-10-05 11:53:42 -05:00
sledgehammer999
8a905bed5d Merge pull request #3879 from Chocobo1/avail_bar_crash
Fix potential crash when memory allocation failed. Closes #3877.
2015-10-05 11:30:23 -05:00
sledgehammer999
f781cc18a6 Merge pull request #3852 from ngosang/filemanagers
Fix Konqueror detection in Plasma (KDE5)
2015-10-05 04:09:57 -05:00
sledgehammer999
db174614f2 Add forum link in README. Closes #3853. 2015-10-04 22:30:44 +03:00
sledgehammer999
b9a061680d Fix broken donation link. Closes #3771. 2015-10-04 22:26:56 +03:00
sledgehammer999
63df3090d5 Fix python detection when the 'Anaconda' software is installed. Closes #3731. 2015-10-04 12:10:07 +03:00
sledgehammer999
ff8ff72eab Merge pull request #3863 from netswap/patch-1
[german.nsi] Added letter "p"
2015-10-04 03:37:30 -05:00
sledgehammer999
8b547644b0 Merge pull request #3165 from Chocobo1/rss_sort
Sort labels in RSS Downloader dialog
2015-10-03 18:52:46 -05:00
Chocobo1
8605c4d4d3 Follow project coding style. Issue #2192. 2015-10-02 04:17:27 +08:00
Chocobo1
e95fce3084 Fix potential crash when memory allocation failed. Closes #3877. 2015-10-02 04:08:24 +08:00
Chocobo1
cf91685f6f Sort labels in RSS Downloader dialog, closes #3140. 2015-09-28 00:30:43 +08:00
netswap
e3e3f9a745 Added letters
The letter "p" was missing in "Dateiverknüpfung" in line 47 & 49
2015-09-26 15:05:36 +02:00
ngosang
6a1497de92 [searchengine] Detect new plugin URL from clipboard 2015-09-25 11:15:41 +02:00
ngosang
fc65ba4ced [searchengine] Fix invalid plugin message 2015-09-24 18:17:50 +02:00
ngosang
73fb0a6309 Fix Konqueror detection in Plasma (KDE5) 2015-09-24 15:53:44 +02:00
Vladimir Golovnev (Glassez)
2a411987db Bump minimum supported version of gcc to 4.8. 2015-09-24 13:26:25 +03:00
sledgehammer999
79617949c1 Merge pull request #3849 from ngosang/fix_rss_crash
Fix RSS crash when deleting RSS feeds. Closes #3846
2015-09-23 17:04:45 -05:00
ngosang
c3921ce2fe Fix RSS crash when deleting RSS feeds. Closes #997, #2152, #2461, #3718, #3747, #3766, #3806, #3814, #3829 and #3846. 2015-09-23 23:51:39 +02:00
Vladimir Golovnev (Glassez)
228f51fff9 Drop unused method TorrentHandle::firstFileSavePath(). 2015-09-23 21:55:04 +03:00
Vladimir Golovnev (Glassez)
08ee439a47 Drop unused method TorrentHandle::savePathParsed(). 2015-09-22 20:39:09 +03:00
Vladimir Golovnev (Glassez)
1a67282dd3 Fix Qt4 qmake warning (unknown QT: concurrent). 2015-09-22 19:34:07 +03:00
Vladimir Golovnev (Glassez)
d2f1216987 Fix compiler warnings (Closes #3826). 2015-09-21 11:45:40 +03:00
Vladimir Golovnev (Glassez)
b519700e33 Use c++11 enum classes instead of macros. 2015-09-18 08:33:22 +03:00
Vladimir Golovnev (Glassez)
12d9898b5d Enable c++11 support. 2015-09-18 08:33:12 +03:00
sledgehammer999
ef39fb0709 Merge pull request #3811 from ngosang/rss_refresh
[RSS] Removes refresh message when adding a new feed
2015-09-17 18:09:59 -05:00
sledgehammer999
f068f63f0d Merge pull request #3745 from cbodley/webui-savepath
RFC: [Web UI] add save_path to /query/torrents and /sync/maindata
2015-09-17 17:14:44 -05:00
sledgehammer999
57ca831d4d Merge pull request #3730 from Gelmir/rss_save
Couple o' fixes to RSS
2015-09-17 17:02:27 -05:00
ngosang
093c5d84d2 [RSS] Removes refresh message when adding a new feed 2015-09-17 19:17:52 +02:00
ngosang
e922275c72 [Web UI] Clean up JavaScript code 2015-09-17 17:48:38 +02:00
ngosang
52ff53b0b0 [Web UI] Reorder "Super seeding mode" option in right click menu 2015-09-17 17:22:09 +02:00
Chocobo1
65d3ca8c3f Capitalize items 2015-09-17 18:08:12 +08:00
Chocobo1
a16c264aa3 RSS Downloader dialog cleanup 2015-09-17 18:08:12 +08:00
sledgehammer999
4642a35de7 Don't limit the number of torrents that can be announced to the tracker/dht/lsd. Closes #3473. 2015-09-16 22:03:20 +03:00
sledgehammer999
50822a7476 Merge pull request #3071 from ppolewicz/interface_bind_fixes
Interface bind fixes
2015-09-16 13:04:52 -05:00
Pawel Polewicz
f108e67dcc Call setListeningPort() when state of network interface changes (closes qbittorrent/qBittorrent#475, closes qbittorrent/qBittorrent#3072) 2015-09-16 14:32:49 +02:00
Pawel Polewicz
fb22940639 Small refactor in Session::setListeningPort() 2015-09-16 14:32:49 +02:00
ngosang
9c7bb08a03 Automatically add trackers to new downloads. 2015-09-16 11:43:57 +02:00
sledgehammer999
b4680e82b7 Merge pull request #3765 from jsayol/patch-1
Allow adding torrent link from Torcache
2015-09-15 18:52:53 -05:00
sledgehammer999
cbf683878a Show current label in the torrent context menu. Closes #3776. 2015-09-16 02:43:48 +03:00
Josep Sayol
fd5d3d0a48 Allow adding torrent link from Torcache
Recent changes in Torcache prevent adding (or drag-and-dropping) a torrent link into qBittorrent. Modifying DownloadManager to always spoof the HTTP Referer header to the file itself being downloaded solves this.
2015-09-16 05:08:53 +07:00
sledgehammer999
5cb022c7b1 Merge pull request #3736 from Chocobo1/option
Cleanup in options_imp
2015-09-15 17:03:45 -05:00
sledgehammer999
145950e766 Optimize text color for dark themes. Closes #3633. 2015-09-15 23:23:49 +03:00
sledgehammer999
8bde7d45b8 Try to avoid loading a corrupted configuration file. Also log errors encountered while saving/loading the configuration. Closes #3503. 2015-09-14 02:23:13 +03:00
Chocobo1
e0935fe14f Follow project coding style. Issue #2192. 2015-09-10 15:24:38 +08:00
Chocobo1
c27aa7723e Options GUI layout cleanups: Speed Page
Move uTP options to it's own section
2015-09-10 15:24:38 +08:00
Casey Bodley
87b26a8dcc webui: add save_path to /query/torrents
Signed-off-by: Casey Bodley <cbodley@gmail.com>
2015-09-07 16:25:07 -04:00
sledgehammer999
0b2b07e98e Sync translations from Transifex and run lupdate. 2015-09-04 23:30:39 +03:00
sledgehammer999
581d544f61 Fix typos. Make ìTP untranslatable. Use American variation of words. Closes #3654. 2015-09-04 23:14:02 +03:00
sledgehammer999
aa5fbd461f Merge pull request #3734 from ngosang/rss_sidebar
Fix RSS panel position not saved. Closes #3732
2015-09-04 13:53:05 -05:00
sledgehammer999
5394b77086 Merge pull request #3725 from Chocobo1/osx
TravisCI: build on osx
2015-09-03 03:24:27 -05:00
Chocobo1
7028c2712a Reorder code in options_imp::loadOptions() according to GUI layout 2015-09-03 15:19:05 +08:00
Chocobo1
89be63da02 TravisCI: build on osx 2015-09-03 12:51:54 +08:00
ngosang
4f504f597d Fix RSS panel position not saved 2015-09-03 04:45:47 +02:00
ngosang
a9e9a9c835 [Web UI] Changes in labels implementation 2015-09-03 03:16:07 +02:00
Felipe Barriga Richards
4ae2f6c33b webui (js): feature: Added complete support for labels (add/set/reset/display/filter) #648
Changes:
- added list of labels on the lower-left corner
- added support to add/set/reset labels on context menu
- added support to filter torrents by label
2015-09-03 03:16:07 +02:00
Felipe Barriga Richards
76d93c23b7 webui (c++): feature: added labels support. #648 2015-09-03 03:16:07 +02:00
sledgehammer999
9d051ea523 Merge pull request #3713 from ngosang/translate_countries
Allows translation of country names. Closes #3710
2015-09-02 16:48:14 -05:00
sledgehammer999
ff279681ac Merge pull request #3599 from pmzqla/strings
Misc translatable strings changes
2015-09-02 16:47:20 -05:00
Gabriele
5cc5552d9b Use infinity symbol rather than -1 for nb_connections 2015-09-02 23:34:17 +02:00
Gabriele
42c74f9553 Avoid concatenation when dealing with translatable strings
Concatenation could be problematic with RTL languages.
2015-09-02 23:34:17 +02:00
Gabriele
420fa82e8d Put some string placeholders between quotes 2015-09-02 23:26:19 +02:00
sledgehammer999
70f2086202 Merge pull request #3567 from ngosang/rssfixes
[RSS] Several changes in RSSs. Closes #3560
2015-09-02 14:24:25 -05:00
ngosang
ee21562426 [RSS] Handle more types of RSS feeds 2015-09-02 20:10:44 +02:00
ngosang
b6c707c080 [RSS] Simplify string translation 2015-09-02 20:00:38 +02:00
ngosang
2eaeead67c [RSS] Allow multiple selection in RSS torrents list 2015-09-02 19:36:45 +02:00
ngosang
7c7da44622 [RSS] Don't hide the elements in Unread list when clicked 2015-09-02 19:12:39 +02:00
ngosang
7c6da30705 [RSS] More precise message and code simplification in RSS feeds deletion 2015-09-02 19:12:32 +02:00
ngosang
2955bb5488 [RSS] Improve error handling when a RSS feed doesn't contain torrents 2015-09-02 19:06:33 +02:00
ngosang
b78ccf289e [RSS] Fix contextual menu in RSS torrents list 2015-09-02 19:01:59 +02:00
ngosang
b9b7786477 [RSS] Trim elements text in RSS articles 2015-09-02 18:51:39 +02:00
ngosang
c3592304b6 [RSS] Handle magnet links as torrents instead of news URLs. Closes #3560 2015-09-02 18:51:39 +02:00
Nick Tiskov
2442411a5e Fix: Adding RSS rule with a new label doesn't add this label to UI. 2015-08-31 02:12:02 +03:00
Nick Tiskov
f5c0cddea5 Fix: Label changes to first item in RSS rule list are forgotten, because checkRegex calls updateMustLineValidity, which saves the rule before new label can be applied. 2015-08-31 01:48:30 +03:00
sledgehammer999
51e0e485f4 Merge pull request #3592 from pmzqla/favicon
Try to download favicon.png when the download of favicon.ico fails
2015-08-30 15:35:53 -05:00
Gabriele
3889b4c101 Try to download favicon.png when the download of favicon.ico fails
This was done only when favicon.ico couldn't be decoded, but not when
favicon.ico could not be downloaded at all.
2015-08-30 22:28:06 +02:00
sledgehammer999
247ba02bb8 Merge pull request #3586 from pmzqla/configure
configure: don't depend on GNU sed
2015-08-30 13:52:34 -05:00
sledgehammer999
25c6d8bf6b Merge pull request #3561 from pmzqla/proxy-torrent
Add an option to allow the use of proxies only for torrents
2015-08-30 12:38:16 -05:00
sledgehammer999
cf72318d74 Merge pull request #2633 from Chocobo1/my_dev2
Fix wrong default download directory in Windows. Closes #2625.
2015-08-30 10:59:24 -05:00
Gabriele
a8c05ca02e Add https_proxy env variable
This forces Python to use the HTTP proxy for HTTPS connections.
2015-08-30 17:46:12 +02:00
Gabriele
1c8abd5c3b Add an option to allow the use of proxies only for torrents
Closes #2701.
2015-08-30 17:46:11 +02:00
Chocobo1
6ebe3897fb Fix wrong default download directory in Windows. Closes #2625. 2015-08-30 23:45:34 +08:00
sledgehammer999
9faa44eabf Merge pull request #3581 from pmzqla/redirect
DownloadManager: fix downloads after a redirection
2015-08-30 09:43:18 -05:00
sledgehammer999
f81ffdb78e Merge pull request #3644 from Chocobo1/graph_btn
Change "Select Graphs" from QToolButton to QComboBox
2015-08-30 08:59:00 -05:00
Chocobo1
2997c0fd1e Change "Select Graphs" from QToolButton to QComboBox 2015-08-30 21:38:05 +08:00
sledgehammer999
193d273f00 Merge pull request #3636 from Chocobo1/moveOption_del
Move option "Confirm torrent deletion" to Behavior page
2015-08-30 08:34:54 -05:00
Chocobo1
e54cd8499e Move option "Confirm torrent deletion" to Behavior page 2015-08-30 21:28:16 +08:00
ngosang
c984902fbf Allows translation of country names 2015-08-30 15:09:15 +02:00
sledgehammer999
45cbf4bf25 Merge pull request #3481 from Chocobo1/moveOption
Move option "Ignore transfer limits on local network" to Speed page
2015-08-30 07:58:30 -05:00
Chocobo1
2204f27de1 Follow project coding style. Issue #2192. 2015-08-30 20:35:33 +08:00
sledgehammer999
735b1cc6b9 Merge pull request #3470 from ngosang/reorder_buttons
Change Queue buttons order in the Toolbar (GUI & Web UI)
2015-08-30 07:10:20 -05:00
sledgehammer999
a0da4a844c Merge pull request #3625 from Chocobo1/native_path
Use native path separators
2015-08-30 07:07:58 -05:00
sledgehammer999
45ef98b077 Update ax_boost_base.m4 to fix ppc64le detection. 2015-08-30 04:50:30 +03:00
sledgehammer999
ef7de49ec8 Fix dolphin detection for KDE5. 2015-08-29 23:49:14 +03:00
sledgehammer999
e937344761 Fix a bug with highlighting selected file on Windows. Closes #3185. 2015-08-29 23:49:09 +03:00
sledgehammer999
f3c3912923 Merge pull request #2544 from pmzqla/select-destination
Select the file of single file torrents when opening the destination folder
2015-08-29 12:49:52 -05:00
Gabriele
e728710430 Select the file of single file torrents when opening destination folder
Also, add the support for Nautilus (Gnome 3), Caja and Nemo.
2015-08-29 16:09:22 +02:00
sledgehammer999
ddd6533812 Merge pull request #3701 from onto/master
SpeedPlotView: fix render graphs with zero speed
2015-08-29 07:28:02 -05:00
Anton Lashkov
0d74131edd SpeedPlotView: fix render graphs with zero speed 2015-08-29 11:24:51 +04:00
Chocobo1
cf3a87ed55 Use native path separators, fixup of 030dd9e, 3baec1c. 2015-08-29 14:17:21 +08:00
sledgehammer999
632cba8b30 Merge pull request #3638 from Fale/patch-1
Fix minimum libtorrent-rasterbar version
2015-08-17 15:49:46 -05:00
Vladimir Golovnev (Glassez)
0afa4d260c Fix 'Append label to save path'. Closes #3495. 2015-08-17 18:37:00 +03:00
Fabio Alessandro Locati
3f2303a479 Fix minimum libtorrent-rasterbar version
as title
2015-08-17 10:13:20 +02:00
Gabriele
7bfa847d01 configure: don't depend on GNU sed
Closes #3169.
2015-08-07 00:11:42 +02:00
sledgehammer999
331219dda8 Write BOM to german.nsi. Closes #3574, #3566 2015-08-05 23:24:21 +03:00
Gabriele
b2df917011 DownloadManager: fix downloads after a redirection
Closes #3580.
2015-08-05 21:41:57 +02:00
Chocobo1
b727ce3b29 Remove filters frame 2015-08-05 12:56:23 +08:00
Chocobo1
0e1eaa518b Alignment cleanup 2015-08-05 12:56:23 +08:00
sledgehammer999
f893131b8d Less verbose compilation output. Closes #3565. 2015-08-04 19:17:01 +03:00
sledgehammer999
2ec1d9e39e New translation: Slovenian
Also re-run lupdate.
2015-08-04 19:14:02 +03:00
sledgehammer999
bd2f9e436c Sync translations from Transifex and run lupdate. 2015-08-04 19:03:32 +03:00
sledgehammer999
ea38e4da4d Merge pull request #2699 from pmzqla/copyurl-search
Add "Copy description page URL" button in search tab
2015-08-04 18:45:31 +03:00
Gabriele
4d66a0929c Add "Copy description page URL" button in search tab
Closes #2371.
2015-08-04 11:18:46 +02:00
sledgehammer999
0520f01510 Merge pull request #3550 from Chocobo1/title_fix
Add back "qBittorrent" in program updater title, closes #3549.
2015-08-04 11:53:03 +03:00
Chocobo1
deaf322740 Add back "qBittorrent" in program updater title, closes #3549. 2015-08-04 13:07:14 +08:00
sledgehammer999
929cd30e33 Merge pull request #3517 from glassez/strict_aliasing
Fix strict-aliasing warning.
2015-08-03 02:50:22 +03:00
sledgehammer999
eef2a0a200 Merge pull request #3537 from ngosang/fixwarnings
Fix 3 compiler warnings
2015-08-02 16:10:24 +03:00
ngosang
fbb47ce08f Fix 3 compiler warnings 2015-08-02 14:22:47 +02:00
sledgehammer999
f746760ccf Merge pull request #3505 from pmzqla/search-close
searchengine: fix crash when a tab with a running search is closed
2015-08-02 15:21:30 +03:00
Gabriele
67c0f47928 searchengine: remove size constraints to search button 2015-08-02 14:04:11 +02:00
Gabriele
7c00e80f7a searchengine: use kill() instead of terminate() on Windows 2015-08-02 14:04:11 +02:00
Gabriele
3a9cf70228 searchengine: use a single string for the search results number label 2015-08-02 14:04:11 +02:00
Gabriele
0f35bac605 searchengine: don't use strings to determine the status of search processes
'&' symbols are dynamically added to strings, making comparisons
unreliable.
2015-08-02 14:04:07 +02:00
Gabriele
1b24feb4f4 searchengine: drop unused flag and related code 2015-08-02 13:53:12 +02:00
Gabriele
ee8a492954 searchengine: fix crash when closing tab with running search
If a tab is closed, the search process gets terminated. This can take
a while and by the time searchFinished() is executed, activeSearchTab
is null, leading to a crash. Fix this by waiting for the process to
terminate and make sure activeSearchTab is not null when used.
2015-08-02 13:49:42 +02:00
sledgehammer999
e3cb9de365 Bump minimum libtorrent version required to 1.0.6. 2015-07-31 23:29:59 +03:00
sledgehammer999
a217988dbb Merge pull request #3515 from glassez/parser
Fix HTTP header parsing. Closes #3511.
2015-07-31 02:38:04 +03:00
sledgehammer999
81c6de48dc Don't use geoip for Travis CI. 2015-07-30 23:45:35 +03:00
sledgehammer999
1217d8d021 Merge pull request #3497 from Chocobo1/ext_param_early
Fix "Run External Program Launches too Early" issue
2015-07-30 11:28:08 +03:00
sledgehammer999
3362766cb5 Merge pull request #3512 from Chocobo1/travis
Migrate TravisCI to container-based infrastructure
2015-07-30 11:27:29 +03:00
Vladimir Golovnev (Glassez)
34da3e653d Fix strict-aliasing warning. 2015-07-30 09:38:25 +03:00
Vladimir Golovnev (Glassez)
ddb5c0052d Fix HTTP header parsing. Closes #3511. 2015-07-30 08:57:52 +03:00
Chocobo1
a8f0acecb7 Migrate TravisCI to container-based infrastructure, closes #3506. 2015-07-30 12:02:00 +08:00
sledgehammer999
8f1f57afe4 Remove obsolete Boost configurations. 2015-07-30 01:51:55 +03:00
sledgehammer999
0209a9f41d Merge pull request #3228 from Chocobo1/win_build
Compilation on windows
2015-07-30 00:21:11 +03:00
sledgehammer999
bf3a6d1c20 Merge pull request #3455 from Chocobo1/label_fix
Fix '&' character in label name becomes accelerator key, closes #3454.
2015-07-29 23:30:25 +03:00
sledgehammer999
256793aad7 Merge pull request #3447 from glassez/filters
Fix label filter. Closes #3429.
2015-07-29 23:28:47 +03:00
sledgehammer999
a56c21551d Merge pull request #3458 from Chocobo1/path_fix
Use `rootPath()` in save path field
2015-07-29 23:24:51 +03:00
sledgehammer999
fce3a2d5c0 Merge pull request #3457 from Chocobo1/ext_param
Add more "Run External Program" parameters
2015-07-29 23:17:19 +03:00
sledgehammer999
675298bc73 Merge pull request #3483 from glassez/bandwidth
Fix Bandwidth Scheduler. Closes #3376.
2015-07-29 22:28:22 +03:00
sledgehammer999
6985b553af Merge pull request #3494 from glassez/drop_libtorrent_0
Drop libtorrent 0.16.x support.
2015-07-29 22:15:45 +03:00
Gabriele
885eb64df3 Follow project coding style. Issue #2192. 2015-07-29 19:58:22 +02:00
Chocobo1
2ce9aa20a5 Fix "Run External Program Launches too Early" issue, closes #2107. 2015-07-28 18:21:56 +08:00
Chocobo1
be34f29b05 Fix warnings by qmake -Wall, cleanups 2015-07-28 16:55:01 +08:00
Chocobo1
077e94342f Add path to openssl, cleanups 2015-07-28 16:55:01 +08:00
Chocobo1
09d7d9a360 Update .gitignore 2015-07-28 16:55:01 +08:00
sledgehammer999
438ee23d2c Bump version status. 2015-07-28 03:07:42 +03:00
sledgehammer999
4f2d74f793 Merge pull request #3374 from ngosang/webui_info
[Web UI] Add information in General tab
2015-07-28 03:03:45 +03:00
sledgehammer999
0e62a52e59 Merge pull request #3493 from ngosang/python
Improve Python detection
2015-07-28 02:59:25 +03:00
sledgehammer999
369561f8f7 Fix typo in string which prevents word substitution. 2015-07-28 02:05:29 +03:00
ngosang
69812bbf18 Converts the string "Seeded for" to lowercase 2015-07-26 14:33:11 +02:00
ngosang
e33570625f [Web UI] Fix friendlyUnit() implementation. Related to #2719 2015-07-26 14:31:11 +02:00
ngosang
2132704e1d [Web UI] Add information in General tab 2015-07-26 14:27:59 +02:00
ngosang
38a6f4cc34 Improve Python detection 2015-07-26 14:15:40 +02:00
sledgehammer999
626a3b10d3 [webui] Fix ugly 'C++' wrapping in About dialog. 2015-07-26 00:35:04 +03:00
sledgehammer999
c7fa778732 Merge pull request #2702 from pmzqla/rss-count
Add count of unread items to RSS tab label
2015-07-26 00:29:47 +03:00
Vladimir Golovnev (Glassez)
e72cc4eaf9 Drop libtorrent 0.16.x support. 2015-07-25 19:00:18 +03:00
Gabriele
c48407e038 Add count of unread items to RSS tab label
Closes #2681.
2015-07-25 11:57:03 +02:00
sledgehammer999
7c7bb14a93 Sync translations from Transifex and run lupdate. 2015-07-25 03:24:44 +03:00
sledgehammer999
f9dc76928c Merge pull request #3467 from ngosang/webui_refresh
[Web UI] Massive increase in performance.
2015-07-23 01:17:57 +03:00
sledgehammer999
5b7ea0e611 Merge pull request #3186 from glassez/geoip
New GeoIP manager.
2015-07-22 23:59:00 +03:00
sledgehammer999
5437674fdf Fix installing search plugin by drag-n-dropping file. 2015-07-22 23:29:57 +03:00
sledgehammer999
21f18d015d Fix installing search plugin from local file. 2015-07-22 23:29:50 +03:00
sledgehammer999
47d9c12f4b Fix segfault on Linux due to early initialization of global var.
Utils::Misc::pythonVersion() gets called before the Logger is initialized.
2015-07-22 23:29:43 +03:00
sledgehammer999
f6bbd9377f Improve checks for python. Print python version and path to log. 2015-07-22 23:29:35 +03:00
Chocobo1
3baec1c327 Add more "Run External Program" parameters, closes #3053, #238, #1291, #1522. 2015-07-22 15:25:31 +08:00
Chocobo1
bd657fe9ae Move option "Ignore transfer limits on local network" to Speed page 2015-07-22 14:52:24 +08:00
Vladimir Golovnev (Glassez)
64ebc5cfd6 Fix Bandwidth Scheduler. Closes #3376. 2015-07-22 08:54:23 +03:00
Vladimir Golovnev (Glassez)
84922dcdcf Fix need restart to enable/disable peer countries resolution. 2015-07-22 08:07:13 +03:00
Vladimir Golovnev (Glassez)
79976fbfce Implement new GeoIPManager class. 2015-07-22 08:06:51 +03:00
Vladimir Golovnev (Glassez)
c702a7e426 Improve DownloadManager.
Now we can use downloaded data directly without saving to file.
We also can disable redirection to Magnet URI handling (useful for
non-torrent files downloading).
2015-07-21 09:50:39 +03:00
Vladimir Golovnev (Glassez)
336519b7b5 Move compression functions to Utils::Gzip. 2015-07-21 09:37:32 +03:00
sledgehammer999
dfb2f8b3b3 Merge pull request #3469 from ngosang/search_py32
[search engine] Fix cpu_count in old Python versions
2015-07-21 01:58:01 +03:00
sledgehammer999
8b99e29dc0 Fixup previous commits on python search. 2015-07-21 01:56:14 +03:00
sledgehammer999
d6af4683bb Merge pull request #2624 from pmzqla/python
Prefer python3 over python2
2015-07-21 01:55:14 +03:00
ngosang
32c813eece [search engine] Fix cpu_count in old Python versions 2015-07-20 19:12:58 +02:00
ngosang
03f86a71de Change Queue buttons order in the Toolbar (GUI & Web UI) 2015-07-20 04:44:29 +02:00
ngosang
2db942e606 [Web UI] Massive increase in performance. 2015-07-20 02:13:44 +02:00
sledgehammer999
6668018b45 Static order of items in the transferlist menu. 2015-07-20 02:48:11 +03:00
sledgehammer999
f21cafb605 Merge pull request #3410 from ngosang/preview
Minor changes in the GUI (Preview file & Forece Resume)
2015-07-20 02:46:40 +03:00
sledgehammer999
3864a7fdc6 Fix compiler warning for unused variable. 2015-07-20 00:13:18 +03:00
Chocobo1
ff8f37b262 Save trimmed string in preference 2015-07-20 01:16:15 +08:00
sledgehammer999
783f17ec4d Merge pull request #3456 from Chocobo1/localhost
Fix translated localhost address (::ffff:127.0.0.1) is not recognized
2015-07-19 19:37:59 +03:00
sledgehammer999
46a0eb4aa4 Update Changelog. 2015-07-19 19:34:54 +03:00
sledgehammer999
2de5390c08 Merge pull request #3433 from ngosang/webui_extlinks
[Web UI] Open external links in a new window/tab
2015-07-19 18:57:59 +03:00
sledgehammer999
bfaa0789f0 Merge pull request #3428 from ngosang/webui_queuenum
[Web UI] Fix sort by queue number
2015-07-19 18:52:18 +03:00
sledgehammer999
eb73e7c1d4 Merge pull request #3150 from ngosang/add_peer_dialog
Add multiple peers in Peers addition dialog. Closes #1563, #2245, #3133, #1419, #3287, #1419
2015-07-19 18:33:10 +03:00
ngosang
63ed69789b Allow to copy all peers with a keyboard shortcut 2015-07-19 13:04:30 +02:00
sledgehammer999
983c19eb29 Merge pull request #2676 from pmzqla/copytrackers
Allow to copy all the trackers with a keyboard shortcut
2015-07-19 14:04:28 +03:00
ngosang
cef3c9a34d Add multiple peers in Peers addition dialog. Closes #1563, #2245, #3133, #1419, #3287, #1419 2015-07-19 13:04:00 +02:00
Chocobo1
030dd9eed8 Use rootPath() in save path field 2015-07-19 18:17:28 +08:00
Chocobo1
6721363f8c Resave in Qt designer 2015-07-19 16:04:25 +08:00
Chocobo1
8bb2e98b90 Fix localhost address (::ffff:127.0.0.1) is not recognized when connecting to WebUI 2015-07-19 14:48:58 +08:00
Chocobo1
58b600198f Fix '&' character in label name becomes accelerator key, closes #3454. 2015-07-19 13:41:44 +08:00
sledgehammer999
5281593bb6 Fix qt5 compilation with QtConcurrent. 2015-07-18 21:06:50 +03:00
sledgehammer999
0b20794672 Fixup speedwidget code. 2015-07-18 19:31:51 +03:00
sledgehammer999
8dd7014af6 Merge pull request #2757 from onto/master
Upload/download speed graph widget.
2015-07-18 19:30:29 +03:00
Anton Lashkov
7b736b6ae3 Add speedwidget based on QGraphicsView 2015-07-18 00:54:36 +04:00
Vladimir Golovnev (Glassez)
d475ab3881 Fix label filter. Closes #3429. 2015-07-16 14:39:25 +03:00
sledgehammer999
b26724d12b Merge pull request #3437 from ngosang/extratorrent
[search engine] Remove the word 'torrent' in ExtraTorrent results
2015-07-16 00:47:23 +03:00
sledgehammer999
3d71ea5bc0 Merge pull request #3431 from Chocobo1/announce
DHT announce
2015-07-16 00:16:44 +03:00
ngosang
1f4d01e512 [Web UI] Changes in Force Resume icon and menu order 2015-07-15 23:12:12 +02:00
ngosang
9dbb2720b0 Changes in Force Resume icon and menu order 2015-07-15 22:46:24 +02:00
ngosang
808f07250e Minor changes in Preview File dialog 2015-07-15 22:46:24 +02:00
sledgehammer999
ed45ff89f8 Merge pull request #2861 from DoumanAsh/search_status_tab
Search status tab
2015-07-15 23:07:59 +03:00
sledgehammer999
d59440f99e Fix printing of the copyright symbol in the About dialog. 2015-07-15 22:45:13 +03:00
sledgehammer999
b80ced2b3a Don't add a torrent which doesn't have a matching .torrent file to its .fastresume file. Closes #3346. 2015-07-15 21:01:07 +03:00
Chocobo1
8873900df3 Also reannounce to DHT when "Force reannounce to all trackers" is selected 2015-07-15 07:05:04 +08:00
Chocobo1
4d6bde9731 Remove announce to DHT after editing tracker list 2015-07-15 07:05:04 +08:00
Chocobo1
fb1772f019 Rewrite TrackerList::reannounceSelected(), now it can force reannounce DHT 2015-07-15 07:05:04 +08:00
ngosang
cc503b36e8 [search engine] Remove the word 'torrent' in ExtraTorrent results 2015-07-15 00:27:09 +02:00
ngosang
0fe99fe10f [Web UI] Open external links in a new window/tab 2015-07-14 12:16:01 +02:00
DoumanAsh
e2aa8056af Search status uses tab's status 2015-07-14 09:03:27 +03:00
ngosang
10bba1a632 [Web UI] Fix sort by queue number 2015-07-14 01:48:05 +02:00
sledgehammer999
5e400d3117 Merge pull request #3377 from BlaXpirit/recheck-confirmation-setting
Implement an option to disable confirmation of torrent recheck
2015-07-14 00:32:53 +03:00
sledgehammer999
39e0c560cf Update color scheme of completed.png icon. 2015-07-13 23:44:55 +03:00
sledgehammer999
bf13238ccf Merge pull request #3385 from ngosang/webui_addtracker
[Web UI] Fix empty trackers addition
2015-07-13 23:37:14 +03:00
sledgehammer999
5b56717501 Merge pull request #3394 from ngosang/json3
[Web UI] Fix API Content Types. Closes #3393
2015-07-13 23:36:34 +03:00
sledgehammer999
de84bb9824 Merge pull request #3407 from glassez/seqdl
Fix restore sequential download state.
2015-07-13 23:35:17 +03:00
DoumanAsh
496f843016 Replace indent to 4 spaces 2015-07-13 09:31:23 +03:00
sledgehammer999
c1e2ddc843 Merge pull request #3384 from ngosang/webui_upnp
[Web UI] New option Web UI port UPNP. Closes #3358
2015-07-13 00:46:58 +03:00
ngosang
ac74f14408 Increase API_VERSION 2015-07-12 23:08:43 +02:00
ngosang
3a44b94cc7 [Web UI] New option Web UI port UPNP. Closes #3358 2015-07-12 23:07:49 +02:00
sledgehammer999
948b2c0410 Merge pull request #3375 from ngosang/completed_filter
Add Force Seeding state to Completed filter
2015-07-12 15:44:01 +03:00
sledgehammer999
d4151c1832 Merge pull request #3395 from ngosang/content_percent
Fix progress calculation in Content tab. Closes #2639 Closes #2752
2015-07-12 15:42:46 +03:00
sledgehammer999
365d039209 Merge pull request #3386 from ngosang/webuibug
[Web UI] Fix an error in Content tab when the torrent doesn't have me…
2015-07-12 14:39:13 +03:00
sledgehammer999
40c9727cb9 Merge pull request #3383 from ngosang/webui_port
[Web UI] Ports between 1 and 65535 as in the GUI. Closes #1602
2015-07-12 14:33:39 +03:00
sledgehammer999
e6946042ae Merge pull request #3382 from ngosang/webui_trackmenu
[Web UI] Torrent download from hash. Closes #1173
2015-07-12 14:27:40 +03:00
Vladimir Golovnev (Glassez)
8e03f01518 Fix restore sequential download state. 2015-07-12 13:56:24 +03:00
ngosang
6413537f45 [Web UI] Fix API Content Types. Closes #3393 2015-07-12 01:29:03 +02:00
ngosang
e20a24ab2e Fix progress calculation in Content tab. Closes #2639 Closes #2752 2015-07-12 01:27:16 +02:00
ngosang
47c31c8b03 [Web UI] Ports between 1 and 65535 as in the GUI. Closes #1602 2015-07-12 01:24:34 +02:00
ngosang
f0d32e2cde [Web UI] Torrent download from hash. Closes #1173 2015-07-12 01:21:09 +02:00
ngosang
62b803e268 [Web UI] Fix empty trackers addition 2015-07-11 15:35:53 +02:00
ngosang
9ea56ea5d4 [Web UI] Fix an error in Content tab when the torrent doesn't have metadata 2015-07-09 18:11:04 +02:00
Oleh Prypin
7474c05209 Implement an option to disable confirmation of torrent recheck 2015-07-08 23:29:31 +03:00
sledgehammer999
647140c7c7 Merge pull request #3371 from ngosang/webuialterdl
[Web UI] Fix alternative global rate limits. Closes #3359
2015-07-08 21:19:08 +03:00
sledgehammer999
46c54e51ee Update Changelog. 2015-07-08 19:19:11 +03:00
sledgehammer999
9eee92b5c6 Merge pull request #3372 from ngosang/torrentz_speed
[search engine] Fix Python 2 implementation of Torrentz
2015-07-08 18:25:57 +03:00
ngosang
ac2c8a3d30 Add Force Seeding state to Completed filter 2015-07-08 16:01:10 +02:00
ngosang
ee44fd54b6 [search engine] Fix Python 2 implementation of Torrentz 2015-07-08 11:04:50 +02:00
ngosang
0ed8ea9599 [Web UI] Additional checks in Options dialog 2015-07-08 09:53:01 +02:00
ngosang
d9ef7c1b32 [Web UI] Reorder Options dialog code 2015-07-08 09:06:41 +02:00
ngosang
357334fb46 [Web UI] Fix alternative global rate limits. 2015-07-08 06:47:59 +02:00
sledgehammer999
d0b54b0797 Merge pull request #3348 from ngosang/webuistates
[Web UI] Fix missing torrent states.
2015-07-04 02:24:32 +03:00
ngosang
768e87b0da [Web UI] Fix missing torrent states. 2015-07-04 01:04:10 +02:00
sledgehammer999
14187978c0 Update Chinese locale names for WebUI too. 2015-07-03 22:52:08 +03:00
sledgehammer999
cac91737ac Sync translations from Transifex and run lupdate. 2015-07-03 22:34:36 +03:00
sledgehammer999
0b18e7bd60 Add unicodestrings.h to core.pri 2015-07-03 22:22:14 +03:00
sledgehammer999
61705fdd42 Partially revert fb7ba92f6 and split the Chinese locales into 3.
Chinese Simplified, Chinese Traditional(Taiwan), Chinese Traditional(Hong Kong).
Closes #3262.
2015-07-03 22:20:32 +03:00
sledgehammer999
6dd3795b7a Fix Properties bar size when started minimized to tray. Closes #3206. 2015-07-03 22:09:37 +03:00
sledgehammer999
2e0c3f8751 Merge pull request #3329 from glassez/state
Fix missing torrent states. Closes #3302.
2015-07-03 21:58:57 +03:00
sledgehammer999
e1e8471728 Merge pull request #3324 from pmzqla/sort-eta-master
Fix sorting torrents by ETA
2015-07-03 21:55:52 +03:00
Heiko Becker
3c66997427 Add missing QDataStream include
Fixes building with Qt 5.5.0-beta.
2015-06-30 22:04:34 +03:00
Vladimir Golovnev (Glassez)
5ec2af7b5a Fix missing torrent states. 2015-06-30 11:14:41 +03:00
Gabriele
d3b23e4b81 Fix sorting torrents by ETA
Same as #2966.
Related issue: #2965.
2015-06-29 21:03:44 +02:00
Gabriele
d76a84048b Increase priority value of "High"
It was observed that setting the priority of a file to High has almost
no effect, so increase its value.
2015-06-29 02:01:51 +03:00
Gabriele
f21fbff1a8 Use enums instead of values when dealing with file priorities
Manually backported commit 10880e10f1 from v3_2_x branch.
2015-06-29 02:00:50 +03:00
sledgehammer999
c17a56cb8b Merge pull request #3318 from ngosang/searchorder
Fix column sort in search engine. Closes #2621
2015-06-29 01:42:17 +03:00
ngosang
b23608ec35 Fix column sort in search engine. Closes #2621 2015-06-28 23:51:09 +02:00
sledgehammer999
a8df699441 Merge pull request #3197 from ngosang/webui_websources
[Web UI] Add Web Seeds (HTTP Sources) tab
2015-06-28 19:34:23 +03:00
sledgehammer999
1b430abb16 Don't use a default upload limit. Closes #3275. 2015-06-28 19:21:47 +03:00
sledgehammer999
e4062e0f35 Sync translations from Transifex and run lupdate. 2015-06-28 18:18:44 +03:00
ngosang
e6f2926ccd [Web UI] Don't update the tabs if tab's panel is collapsed 2015-06-28 16:36:46 +02:00
ngosang
263d45ca9d [Web UI] Use camelCase in variable names 2015-06-28 16:36:46 +02:00
ngosang
8e4b9f30bb [Web UI] Add Web Seeds (HTTP Sources) tab 2015-06-28 16:36:45 +02:00
sledgehammer999
f12b300298 Partially revert e675625d0d.
It causes problems with Travis CI builds because travis checks out the branch which might have newer commits and not find our particular commit.
2015-06-28 16:43:04 +03:00
sledgehammer999
2db4a661ee Merge pull request #3251 from Chocobo1/unicode_fix
Fix MSVC2013 complains on Unicode characters
2015-06-28 16:12:47 +03:00
sledgehammer999
3c6ee3d57f Merge pull request #3317 from ngosang/search_eng
Cosmetics changes in search engine
2015-06-28 16:11:20 +03:00
Chocobo1
e2a1211513 Mention github contributors in thanks.html 2015-06-28 21:08:21 +08:00
Chocobo1
436b3a472a Move translators & thanks to its own file
Add HTML header & cleanup
2015-06-28 21:08:20 +08:00
sledgehammer999
f177ecd50c Merge pull request #3313 from Chocobo1/travis
Travis script update
2015-06-28 16:07:51 +03:00
Chocobo1
e675625d0d Switch to libtorrent git repository
Reduce clone depth to 1
Fix missing variable when compiling for coverity scan
2015-06-28 21:02:41 +08:00
ngosang
326a74425f Cosmetics changes in search engine 2015-06-28 14:38:17 +02:00
sledgehammer999
a217d97fda Merge pull request #3304 from Chocobo1/menu_cap
Capitalize menu item
2015-06-28 15:17:37 +03:00
sledgehammer999
6959084f98 Merge pull request #3315 from Chocobo1/disk_space
Update disk space label after changing partition, closes #3309.
2015-06-28 15:16:29 +03:00
sledgehammer999
216bf9b477 Merge pull request #3279 from ngosang/webui_newoptions
[Web UI] Add new options
2015-06-28 15:15:35 +03:00
Chocobo1
3efb311076 Better message for users 2015-06-28 19:37:31 +08:00
ngosang
3ac9b2525e Increase API_VERSION due to changes in #3279, #3197, #3226 and #3040 2015-06-28 13:33:56 +02:00
ngosang
831b47b8f9 [Web UI] Add new options 2015-06-28 13:33:51 +02:00
ngosang
ff10eafcbc Follow project coding style. Issue #2192. 2015-06-28 13:32:57 +02:00
Chocobo1
38c0dbfc95 Update disk space label after changing partition, closes #3309. 2015-06-28 19:32:54 +08:00
Chocobo1
e739e81205 Fix compilation on MSVC2013 by moving unicode strings to
"unicodestrings.h". Closes #3059.
2015-06-28 19:18:57 +08:00
sledgehammer999
1bcfae5265 Merge pull request #3308 from ngosang/torrentreactorimp
[search engine] Update TorrentReactor
2015-06-28 14:13:25 +03:00
ngosang
b249b461d7 [search engine] Update TorrentReactor 2015-06-28 12:54:34 +02:00
sledgehammer999
af79ba433c Merge pull request #3307 from ngosang/extratorrentimp
[search engine] Update ExtraTorrent
2015-06-28 13:46:08 +03:00
sledgehammer999
14013c80c0 Merge pull request #3270 from Chocobo1/info_box
Reorder layout in information box
2015-06-28 13:45:25 +03:00
ngosang
85a7c7303d [search engine] Update ExtraTorrent 2015-06-28 12:36:33 +02:00
sledgehammer999
f94214ae14 Merge pull request #3291 from ngosang/torrent_creator
Add 16 KiB, 8 MiB and 16 MiB piece sizes in Torrent Creator. Closes #2656
2015-06-28 13:31:06 +03:00
sledgehammer999
ca4fbe40dd Merge pull request #3306 from ngosang/torrentzimp
[search engine] Update Torrentz
2015-06-28 13:30:31 +03:00
ngosang
91818417be Add 16 KiB, 8 MiB and 16 MiB piece sizes in Torrent Creator 2015-06-28 12:26:24 +02:00
ngosang
577ace4971 Follow project coding style. Issue #2192. 2015-06-28 12:26:03 +02:00
Chocobo1
776d91f663 Add connectionsLimit() back 2015-06-28 18:15:17 +08:00
sledgehammer999
b9ed94a098 Merge pull request #3292 from glassez/resumedata
Fix save resume data for torrents w/o metadata. Closes  #1488.
2015-06-28 12:43:00 +03:00
sledgehammer999
800630a813 Merge pull request #3290 from glassez/trackers
Fix trackers removing (#2892 regression).
2015-06-28 12:42:34 +03:00
sledgehammer999
4854a1b2ee Merge pull request #3311 from ngosang/btdiggimp
[search engine] Update BTDigg
2015-06-28 12:32:47 +03:00
sledgehammer999
bcfb8f1f53 Merge pull request #3312 from ngosang/kickassimp
[search engine] Update KickassTorrents
2015-06-28 12:30:30 +03:00
ngosang
2afa282190 [search engine] Update BTDigg 2015-06-27 21:33:50 +02:00
ngosang
2b2ffca7d0 [search engine] Update Torrentz 2015-06-27 21:00:47 +02:00
ngosang
650e7018a7 [search engine] Update KickassTorrents 2015-06-27 18:25:20 +02:00
Chocobo1
1e0ac5c5f1 Capitalize menu item, missed in b4a855f. 2015-06-26 14:16:57 +08:00
Vladimir Golovnev (Glassez)
b9c087f46c Fix save resume data for torrents w/o metadata. 2015-06-24 18:49:55 +03:00
Chocobo1
9d5cfbcda9 Preserve plain text formatting 2015-06-24 19:28:31 +08:00
Vladimir Golovnev (Glassez)
ffe6292237 Fix trackers removing. 2015-06-24 14:09:43 +03:00
sledgehammer999
9d97c05889 Merge pull request #3282 from ngosang/search_check
[search engine] Fix novaprinter.py version number
2015-06-23 18:22:13 +03:00
sledgehammer999
2658b39434 Merge pull request #3283 from glassez/rss
Fix add torrent dialog is not shown (#2892 regression).
2015-06-23 18:21:24 +03:00
sledgehammer999
f6cf07a147 Merge pull request #3284 from glassez/about
Fix ugly 'C++' wrapping in About dialog.
2015-06-23 18:21:13 +03:00
Vladimir Golovnev (Glassez)
4752fa5301 Fix ugly 'C++' wrapping in About dialog. 2015-06-23 13:22:52 +03:00
Vladimir Golovnev (Glassez)
f40d3d1fc6 Fix add torrent dialog is not shown. 2015-06-23 11:19:34 +03:00
ngosang
d7ffabe7ca [search engine] Fix novaprinter.py version number 2015-06-23 09:46:19 +02:00
Chocobo1
b318f54fdf Force set "plain text" format to reduce attack vector. 2015-06-22 22:10:33 +08:00
Chocobo1
661ddd75b6 Allow wordWrap for "Save Path" & "Comment" 2015-06-22 13:32:32 +08:00
sledgehammer999
bc97208516 Merge pull request #3187 from glassez/model
Improve TorrentModel class (Issue #2433).
2015-06-21 16:32:30 +03:00
Vladimir Golovnev (Glassez)
64c8f61bb1 Improve TorrentModel class. 2015-06-21 16:28:21 +03:00
sledgehammer999
7699b7ce6f Merge pull request #3271 from glassez/rename
Fix torrent renaming (3715e8d2 regression).
2015-06-21 16:00:49 +03:00
Vladimir Golovnev (Glassez)
347832d852 Fix torrent renaming (3715e8d2 regression). 2015-06-21 13:32:48 +03:00
Chocobo1
50b3a24371 Change Comment field from QTextBrowser to QLabel 2015-06-21 13:52:11 +08:00
Chocobo1
4d5512dcca Reorder layout in information box 2015-06-21 13:20:19 +08:00
sledgehammer999
2e6c890883 Partially revert 30f21259f8.
Fixes Linux issue for when the theme doesn't have a corresponding icon.
2015-06-21 00:56:18 +03:00
sledgehammer999
f94d733c62 Minimize to tray only if the relevant option is enabled. 2015-06-20 23:28:40 +03:00
sledgehammer999
9032808112 Fix sorting by queue. 2015-06-20 20:05:49 +03:00
sledgehammer999
a22137e06e Merge pull request #3240 from ngosang/webui_interface
[Web UI] Changes in menus, new features and reordered Options.
2015-06-20 19:31:06 +03:00
ngosang
973518694e [Web UI] Tabs indentation replaced with spaces 2015-06-20 18:18:36 +02:00
ngosang
d6caf1c839 [Web UI] Reorder the tabs/groups in Options window 2015-06-20 18:04:23 +02:00
ngosang
6f7dca1f83 [Web UI] Option to hide Top Toolbar 2015-06-20 18:04:18 +02:00
sledgehammer999
dbbf1a8fce Merge pull request #2690 from Chocobo1/dev4
Don't close downloadFromURL dialog when showing empty url warning.
2015-06-20 18:50:51 +03:00
sledgehammer999
27e18f0eb8 Merge pull request #2643 from mayankasthana/tab_FocusChange
Download-from-URL textbox change focus on tab key
2015-06-20 18:43:37 +03:00
ngosang
bbc667cb78 [Web UI] Changes in menus to keep the client's style 2015-06-20 17:36:13 +02:00
sledgehammer999
74d757f0f1 Delete tempfile when downloading favicon.ico. Closes #3257. 2015-06-20 18:21:20 +03:00
sledgehammer999
a224650281 Merge pull request #3078 from Chocobo1/props_widget
Revamp general tab info, closes #982
2015-06-20 16:50:32 +03:00
sledgehammer999
54abcfcd93 Merge pull request #3260 from glassez/sort
Fix torrent state sort order (#2892 regression).
2015-06-20 16:40:47 +03:00
sledgehammer999
627d74233b Merge pull request #3245 from glassez/upgrade
Upgrade to v3.3
2015-06-20 16:33:32 +03:00
Vladimir Golovnev (Glassez)
b29f6916cb Implement upgrage code. 2015-06-20 16:23:10 +03:00
Vladimir Golovnev (Glassez)
7041a96fda Fix torrent state sort order. 2015-06-20 16:03:56 +03:00
Chocobo1
6bc42cfd1a Add functionality to new data fields, cleanups 2015-06-20 20:42:44 +08:00
Chocobo1
bd8b8a8c8f Use warning message box instead of critical 2015-06-20 20:36:35 +08:00
sledgehammer999
cf1a62cec3 Merge pull request #2719 from Chocobo1/dev6
Fix potential out-of-bound access in misc::friendlyUnit()
2015-06-20 02:46:47 +03:00
sledgehammer999
fd6fcffa67 Merge pull request #3247 from glassez/ratio
Fix ratio limit for new torrents. Closes #3210.
2015-06-19 18:53:40 +03:00
sledgehammer999
75fecf9645 Merge pull request #3226 from ngosang/webui_dhtport
[Web UI] Remove DHT port setting. Closes #3225
2015-06-18 23:37:53 +03:00
Vladimir Golovnev (Glassez)
04f3f9d29d Fix ratio limit for new torrents. 2015-06-18 16:28:52 +03:00
sledgehammer999
fb7ba92f69 Rename Chinese translation files. Closes #2936. 2015-06-17 23:06:08 +03:00
sledgehammer999
c259666e43 Merge pull request #2803 from Chocobo1/shutdown
WebUI: add delay in shutdown command in order to send out response msg
2015-06-17 22:58:49 +03:00
Gabriele
6609d3e89f Don't use list of versions for the Python fallback detection on Windows
Always pick the newest versions among those installed.
2015-06-17 21:30:35 +02:00
Gabriele
f4c44ce128 Don't specify the Python version required in the notification
Both python2 and python3 are supported.
2015-06-17 21:30:35 +02:00
Gabriele
a8276dd70f Update link to the Windows Python installer
From v2.7.3 to v3.4.3.
2015-06-17 21:30:35 +02:00
Gabriele
0c23d22472 Show notification if Python is not found and a search is started
Also, don't bother starting a search if it's known that Python is
not available.
2015-06-17 21:30:12 +02:00
Gabriele
e34cc79dad Use python3 and python2 instead of python on Linux
Prefer python3 over python2 when both are available.

Both python2 and python3 should always exists.
More info at: http://legacy.python.org/dev/peps/pep-0394/
2015-06-17 21:29:20 +02:00
Vladimir Golovnev (Glassez)
de712c6ba9 Use native QDir::removeRecursively() in Qt5. 2015-06-17 19:19:56 +03:00
sledgehammer999
1396c63525 Merge pull request #3224 from glassez/fastresume
Fix resume torrents without metadata.
2015-06-17 19:12:22 +03:00
Vladimir Golovnev (Glassez)
8cc9c64ff8 Fix resume torrents without metadata. 2015-06-17 19:06:48 +03:00
Chocobo1
64665146e1 Expose more data fields 2015-06-17 23:20:34 +08:00
Chocobo1
cdec6c9027 Add new data fields, capitialize labels, cleanups 2015-06-17 23:20:34 +08:00
sledgehammer999
0172ab1f50 Merge pull request #3242 from glassez/hotfixes
Fix some #2892 regressions. Closes #3210.
2015-06-17 17:45:14 +03:00
Vladimir Golovnev (Glassez)
d76c4554e2 Fix MaxRatio ignoring. 2015-06-17 14:45:47 +03:00
Vladimir Golovnev (Glassez)
3d09f579d0 Fix torrent creation date loss. 2015-06-17 11:21:41 +03:00
Chocobo1
e95a017e33 Fix potential out-of-bound access of units[i] 2015-06-17 08:03:51 +08:00
sledgehammer999
2c91157926 Update settings for Coverity Scan. 2015-06-17 00:19:00 +03:00
sledgehammer999
d2697cd124 Merge pull request #2957 from Chocobo1/coverity_scan
Hookup to Coverity Scan, Closes #2601
2015-06-17 00:13:51 +03:00
sledgehammer999
061fbeff56 Merge pull request #3234 from glassez/openfile
Fix crash when cancel open file dialog.
2015-06-16 22:55:57 +03:00
Vladimir Golovnev (Glassez)
77b3a0c4cd Fix crash when cancel open file dialog.
Closes #3232.
2015-06-16 09:09:08 +03:00
ngosang
8340abbe63 [Web UI] Remove DHT port setting. Closes #3225 2015-06-15 11:00:36 +02:00
sledgehammer999
3f8e76ce93 Clear missing files flag when resuming or force rechecking. Fixes issues in #2750. 2015-06-15 00:48:28 +03:00
sledgehammer999
a2c48646ae New translation: Indonesian. 2015-06-14 23:43:21 +03:00
sledgehammer999
78f5b960a0 Sync translations from Transifex and run lupdate. 2015-06-14 23:28:28 +03:00
sledgehammer999
f6236d13d1 Merge pull request #3190 from Chocobo1/ratio_fix_master
Improve ratio calculation formula
2015-06-14 23:02:34 +03:00
sledgehammer999
6b56a8accf Merge pull request #3211 from yurivict/compile-issues
Added missing include <cstdlib>
2015-06-14 21:50:13 +03:00
sledgehammer999
9febd608c6 Merge pull request #3216 from Chocobo1/rm
Fix additional file included in #3167
2015-06-14 21:49:21 +03:00
sledgehammer999
e4282c10c7 Merge pull request #2847 from Chocobo1/move_stats
Revamp menu items
2015-06-14 20:21:27 +03:00
sledgehammer999
575578428c Merge pull request #3167 from Chocobo1/opt_ip_filter_tracker
Add checkbox option for IpFilterTrackers, closes #3154.
2015-06-14 20:15:12 +03:00
Chocobo1
6e1bfdef4c Fix additional file included in 32a712f 2015-06-15 00:02:07 +08:00
Chocobo1
36da49667a Resave in Qt Designer 2015-06-14 20:01:14 +08:00
Chocobo1
ade1936f9c Remove menu items: "Visit Website" and "Report a Bug".
Many issues opened on github should be asked on forum first, and the links are already present in "About" window.
2015-06-14 20:01:14 +08:00
Chocobo1
580642b08e Rename "Execution Log" to "Log".
Rename "When Downloads Done" to "On Downloads Done".
2015-06-14 20:01:14 +08:00
Chocobo1
b4a855f4c1 Move statistics from Tools to View
Reorder & add separators in Help menu

Rename `Auto-Shutdown on downloads completion` to `When downloads done`

Capitalize menu items, modify accelerator
2015-06-14 20:01:11 +08:00
Chocobo1
32a712f005 Add checkbox option for IpFilterTrackers, closes #3154. 2015-06-14 19:10:11 +08:00
Yuri
ea2b2937b9 Added missing include <cstdlib> for rand(3) 2015-06-14 03:17:12 -07:00
Yuri
a86961a22e Added missing include <cstdlib> for rand(3) 2015-06-14 03:14:27 -07:00
Chocobo1
2299580dc9 Improve ratio calculation formula. Closes #3096. 2015-06-14 17:45:40 +08:00
sledgehammer999
77786bb8bb Add translator to credits. 2015-06-14 12:28:08 +03:00
sledgehammer999
9ee67364c2 Merge pull request #3209 from ngosang/minor_fixes
Code clean up
2015-06-14 11:40:41 +03:00
ngosang
4a76526417 Code clean up
This changes were proposed by @PiotrNawrot in these PRs: #2967, #2970.
2015-06-14 10:35:32 +02:00
sledgehammer999
f89c44e1a0 Merge pull request #2938 from dartraiden/master
Fixed typos, spelling correction
2015-06-14 11:20:15 +03:00
dartraiden
8ac83cfd42 Fixed typos, spelling correction 2015-06-14 10:55:46 +03:00
sledgehammer999
f5b0008158 Merge pull request #2805 from ngosang/typo_revision
Changes in typography
2015-06-13 22:06:12 +03:00
sledgehammer999
1be26cf2bd Merge pull request #2808 from ngosang/AnnounceToAllTrackers
Change default preferences
2015-06-13 21:39:45 +03:00
ngosang
e01a61d816 changes in typography 2015-06-13 20:04:20 +02:00
sledgehammer999
25e04ee2f3 Merge pull request #3191 from Chocobo1/neg_loop_master
Fix potential negative loop bound
2015-06-13 21:03:41 +03:00
sledgehammer999
4d848e99f0 Merge pull request #3004 from ngosang/cppcheck_fixes
Cppcheck: scope reduction & unused variables
2015-06-13 20:16:53 +03:00
sledgehammer999
157b1eadfa Merge pull request #3203 from glassez/unistd
Fix qbittorrent-nox compilation.
2015-06-13 09:33:44 +03:00
Vladimir Golovnev (Glassez)
5798fb959d Fix qbittorrent-nox compilation. 2015-06-13 09:20:16 +03:00
sledgehammer999
35e04a795d Merge pull request #3194 from glassez/save_path
Fix BitTorrent::TorrentHandle class.
2015-06-13 01:51:27 +03:00
sledgehammer999
e22f7570fe Merge pull request #3192 from who-me/patch-1
Update qBittorrent.appdata.xml (invalid tag)
2015-06-13 01:47:58 +03:00
sledgehammer999
93bbda851a Merge pull request #3188 from glassez/datetime
Fix time_t 0 special meaning.
2015-06-13 01:46:12 +03:00
sledgehammer999
2c34aa4ea2 Merge pull request #3179 from DoumanAsh/legittorrents_update
[search engine] Update Legit Torrent to remove sgmllib
2015-06-13 01:44:28 +03:00
sledgehammer999
4f5ce16dcb Merge pull request #3176 from DoumanAsh/py3_remove_cache
[search engine] Remove python3 cache during updateNova()
2015-06-13 01:38:58 +03:00
sledgehammer999
df2068d734 Merge pull request #3010 from ngosang/user-agent
Changes in User-Agents
2015-06-13 01:37:21 +03:00
DoumanAsh
033817f70b [search engine] Update Legit Torrent to remove sgmllib 2015-06-12 18:23:56 +03:00
Vladimir Golovnev (Glassez)
9c28977001 Fix adjustActualSavePath() when torrent is moving. 2015-06-12 15:37:52 +03:00
Vladimir Golovnev (Glassez)
a55a27508a Fix append .!qB extension when it disabled. 2015-06-12 15:35:20 +03:00
who-me
031d14e320 Update qBittorrent.appdata.xml
Usage of the <updatecontact/> breaks validation. The correct tag is <update_contact/> as per info on this page:
http://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-update_contact
2015-06-12 13:48:53 +03:00
Chocobo1
817b595222 Fix potential negative loop bound.
QTorrentHandle::num_files() could return -1 in these cases.
2015-06-12 17:09:22 +08:00
Vladimir Golovnev (Glassez)
56df8c2dd0 Fix time_t 0 special meaning.
Return null QDateTime object when converting from 0 time_t value.
2015-06-12 09:36:01 +03:00
ngosang
3715e8d2c8 Change default preferences 2015-06-12 02:09:01 +02:00
ngosang
ad2a18b3bc Changes in User-Agent 2015-06-12 01:30:01 +02:00
ngosang
3eb61cfe83 Cppcheck: scope reduction & unused variables 2015-06-12 01:16:21 +02:00
DoumanAsh
1222dab6f8 [search engine] Remove python3 cache during updateNova() 2015-06-12 01:30:35 +03:00
sledgehammer999
8897001567 Merge pull request #2844 from ngosang/search_version
[Search engine] Show the version of search engines
2015-06-12 01:20:23 +03:00
ngosang
930161a0dd [Search engine] Show the version of search engines 2015-06-11 23:37:50 +02:00
sledgehammer999
3aa0a845cd Merge pull request #2892 from glassez/bittorrent
Core classes redesign (Issue #2433).
2015-06-11 23:54:05 +03:00
sledgehammer999
cc8419d344 Fix python detection from reigstry when multiple versions are installed. Update fallback mechanism for newer versions. 2015-06-11 23:45:18 +03:00
sledgehammer999
f3dd93a42c Merge pull request #2832 from pmzqla/rss-liveupdate
Update matching RSS articles while editing rules
2015-06-11 22:56:31 +03:00
sledgehammer999
13da85e859 Merge pull request #3164 from ngosang/demonoid
[search engine] Add Demonoid search engine
2015-06-11 22:39:44 +03:00
ngosang
cd5f904b53 Minor fixes in search engines 2015-06-11 19:06:29 +02:00
ngosang
274cde0396 [search engine] Add Demonoid search engine 2015-06-11 18:24:18 +02:00
sledgehammer999
3d40834c57 Merge pull request #2550 from DoumanAsh/multiprocessor_search
[search engine] Replace threading with multiprocessing
2015-06-11 19:14:11 +03:00
DoumanAsh
920aefddde [search engine] Final enhancements. 2015-06-11 07:52:27 +03:00
DoumanAsh
7dafb384e9 [search engine] Cosmetic update TorrentReactor 2015-06-11 07:47:39 +03:00
DoumanAsh
2fc1487603 [search engine] re-factoring of code 2015-06-11 07:47:37 +03:00
DoumanAsh
d6d0f422f5 [search engine] engines update 2015-06-11 07:45:55 +03:00
DoumanAsh
bef8106d0f [search engine] Nova2 multiprocessing 2015-06-11 07:45:53 +03:00
sledgehammer999
e502ce38ec Merge pull request #2670 from DoumanAsh/safe_url_retrieve
[search engine] Exception free url_retrieve
2015-06-11 02:22:02 +03:00
Vladimir Golovnev (Glassez)
7d73bddfd2 Split some "header only" sources. 2015-06-10 10:58:20 +03:00
DoumanAsh
86a0eaf317 Exception free retrieve_url()
Set 2 second timeout and handle any possible connection error
Return empty string to engine in case of connection exception
2015-06-10 08:15:23 +03:00
Vladimir Golovnev (Glassez)
5f288d228d Fix coding style (Issue #2192). 2015-06-09 21:30:57 +03:00
Vladimir Golovnev (Glassez)
191cdc2849 Move utilities to core/utils folder.
Also move the names to Utils namespace.
2015-06-09 21:30:56 +03:00
Vladimir Golovnev (Glassez)
427688cb34 Remove unused sources. 2015-06-09 21:30:53 +03:00
Vladimir Golovnev (Glassez)
d16d1fdb3a Redesign main core classes. 2015-06-09 21:30:42 +03:00
sledgehammer999
832272bf3a Merge pull request #2672 from DoumanAsh/abort_search_on_exit
Aborting search engine process during closure. Close #2671
2015-06-09 01:49:36 +03:00
sledgehammer999
d87cea1fb7 Merge pull request #2880 from Chocobo1/alluppercase
Use AllUppercase for label text
2015-06-08 01:41:01 +03:00
sledgehammer999
dabbc49c20 Merge pull request #2882 from pmzqla/openfile-enter
Allow to Open files from the properties pane by pressing "Enter"
2015-06-08 01:22:40 +03:00
sledgehammer999
9daf9e612b Merge pull request #2935 from Chocobo1/add_tray_menu
Add "Add link to torrent" menu in TrayIconMenu. Closes #2918.
2015-06-08 00:51:38 +03:00
sledgehammer999
46e2e5342b Merge pull request #2996 from Chocobo1/tray_icon
Enable to choose dark/light tray icons on all platforms.
2015-06-03 23:59:16 +03:00
sledgehammer999
c682d87a65 Merge pull request #2999 from LazyBui/master
Treating Alt Global Rate Limits Like Regular Global Rate Limits
2015-06-03 23:48:13 +03:00
sledgehammer999
101b0ee58e Merge pull request #3011 from ngosang/start_minimize
Fix Start Minimized checkbox in Options
2015-06-03 23:07:32 +03:00
Vladimir Golovnev (Glassez)
60c0939e05 Fix coding style (Issue #2192).
Also split filesystemwatcher.h into .h/.cpp files.
2015-06-03 22:11:44 +03:00
Vladimir Golovnev (Glassez)
d32bb52390 Don't add core to INCLUDEPATH. 2015-06-03 22:11:43 +03:00
Vladimir Golovnev (Glassez)
4b5e7e6168 Move network related code to core/net. 2015-06-03 22:11:41 +03:00
Vladimir Golovnev (Glassez)
3eeed813d6 Implement new download manager. 2015-06-03 22:11:40 +03:00
Vladimir Golovnev (Glassez)
f1bce0b8e0 Fix downloadthread.* coding style (Issue #2192). 2015-06-03 22:11:39 +03:00
Vladimir Golovnev (Glassez)
98dfb6302d Fix shutdownconfirm.* coding style (Issue #2192). 2015-06-03 22:11:38 +03:00
Vladimir Golovnev (Glassez)
d87a9bf7ec Move GUI-related sources into gui subdir. 2015-06-03 22:11:36 +03:00
sledgehammer999
2b7c47c789 Merge pull request #3092 from Chocobo1/focus_default
Change default focus button in various dialog, closes #3085
2015-06-03 21:35:17 +03:00
sledgehammer999
bafb189244 Merge pull request #3136 from Chocobo1/exit
Change option text "Confirmation on exit when torrents are active"
2015-06-03 21:05:00 +03:00
Chocobo1
ab91fb87ea Change option text "Confirmation on exit when torrents are active" 2015-06-03 13:25:36 +08:00
sledgehammer999
2ad10ea47e Merge pull request #3006 from ngosang/translate_search
Make strings translatable in search engine
2015-06-01 17:08:37 +03:00
sledgehammer999
fc28f261cf Merge pull request #2534 from ngosang/disable_chbox
Disable Auto piece size checkbox when creating a new torrent
2015-06-01 16:55:09 +03:00
sledgehammer999
a84518d69f Merge pull request #2542 from ngosang/search_tab
Change width of columns in search tab. Closes #764
2015-06-01 16:33:31 +03:00
sledgehammer999
17cba898e9 Merge pull request #3005 from ngosang/wasted
Web UI: Display wasted data with friendly units. Closes #2994
2015-06-01 16:03:59 +03:00
sledgehammer999
736f20538d Merge pull request #3040 from ngosang/webui_global_slot
Web UI: New config - Global maximum number of upload slots. Closes #2997
2015-06-01 15:57:44 +03:00
sledgehammer999
6cee7483ba Merge pull request #3041 from ngosang/webui_fix_torrentinfo
Web UI: Fix Max connections and Time active in transfer panel. Closes #2993
2015-06-01 15:26:50 +03:00
sledgehammer999
50a5e830ac Merge pull request #3086 from ngosang/webui_titlebar
Web UI: Changes in title bar, translatable strings and style
2015-06-01 15:21:57 +03:00
sledgehammer999
81b3517166 Merge pull request #3021 from ngosang/improve_torrentz
[search engine] Improve torrentz engine to return more results
2015-06-01 13:32:58 +03:00
sledgehammer999
14b5d15268 Merge pull request #3020 from ngosang/fix_piratebay
[search engine] Fix thepiratebay engine. Closes #3012
2015-06-01 13:29:59 +03:00
Chocobo1
e75de01809 Set default focus to no button in exit confirm box 2015-05-26 15:03:42 +08:00
Chocobo1
a29f2dcfaa Set default focus to ok button in add new torrent dlg 2015-05-24 15:12:07 +08:00
Chocobo1
2b2bc11d7d Set default focus to cancel button in delete confirm dlg, closes #3085 2015-05-24 15:11:37 +08:00
ngosang
7129ad47f4 Web UI: Minor changes in style 2015-05-23 22:18:52 +02:00
ngosang
dcdb319653 Web UI: Complete translatable strings 2015-05-23 20:35:25 +02:00
ngosang
c5ce99ebec Web UI: Changes in title bar 2015-05-23 19:20:04 +02:00
ngosang
e46c238f15 [search engine] Fix thepiratebay. Closes #3012 2015-05-20 08:01:41 +02:00
Vladimir Sinenko
56ee6dac08 Fixed sort order for datetime columns with empty values (closes #2988)
A small fix belonging to #2531.
During the sorting empty QDateTime values are shuffled around due to
unstable sort in QSortFilterProxyModel (see #2526 and #2158), causing
the transfer list items to constantly change order.

Fixed by using an already existing correct comparison (with a torrent
hash fallback).
2015-05-19 22:10:57 +06:00
LazyBui
23ec562375 Making alternate download/upload configuration behave like global download/upload configuration so as to allow boundless down/up 2015-05-17 12:58:29 -05:00
sledgehammer999
2c1d76c87f Merge pull request #3027 from ngosang/fix_webui_all
Web UI: Fix resumeAll and pauseAll. Closes #3016
2015-05-17 18:44:11 +03:00
sledgehammer999
d222dece92 Merge pull request #3039 from ngosang/webui_relative_urls
Web UI: Fix login and logout relative URLs. Closes #3038
2015-05-17 18:43:38 +03:00
ngosang
8b06f72a94 Web UI: Fix Max connections and Time active in transfer information 2015-05-17 15:47:37 +02:00
ngosang
2e05777dc5 Web UI: New config - Global maximum number of upload slots 2015-05-17 14:40:34 +02:00
ngosang
dd71355e8a Web UI: Fix login and logout relative URLs 2015-05-17 13:48:06 +02:00
sledgehammer999
c92eb1b17d Merge pull request #3019 from Chocobo1/icons_path
Fix wrong path in .ui files
2015-05-17 12:37:03 +03:00
ngosang
a90ec4cce7 Web UI: Fix resumeAll and pauseAll. Closes #3016 2015-05-15 22:49:03 +02:00
Chocobo1
f1c2eae264 Fix wrong path for icons.qrc 2015-05-16 01:08:45 +08:00
ngosang
28fcbe9bc5 [search engine] Improve torrentz engine to return more results 2015-05-15 18:34:28 +02:00
ngosang
b18138bad0 Change width of columns in search tab. Closes #764 2015-05-15 14:25:51 +02:00
ngosang
0ef728d385 Fix Start Minimized checkbox in Options 2015-05-14 21:48:09 +02:00
ngosang
bd6afc2d86 Make strings translatable in seach engine 2015-05-14 14:39:30 +02:00
ngosang
de3c84bd0b Web UI: Display wasted data with friendly units. Closes #2994 2015-05-14 13:35:48 +02:00
sledgehammer999
e788445fe2 Bump to 3.3.0alpha 2015-05-13 23:33:22 +03:00
sledgehammer999
88237fbd1e Update Copyright year. 2015-05-13 23:23:53 +03:00
sledgehammer999
6fba6796b8 Fix typo in configure script. 2015-05-13 23:04:12 +03:00
sledgehammer999
2a2cb313cf Merge pull request #2990 from LazyBui/master
Removing the confusion caused by moving GeoIP code/.dat
2015-05-13 22:58:32 +03:00
Chocobo1
30f21259f8 Enable to choose dark/light tray icons on all platforms. 2015-05-13 21:50:15 +08:00
LazyBui
be62c34e46 Removing the confusion caused by moving GeoIP code/.dat to a different directory 2015-05-13 00:15:10 -05:00
sledgehammer999
e2ac4ebf9d Merge pull request #2977 from pmzqla/configure-whitespace
configure: don't fail when $CPPFLAGS starts with a white space
2015-05-11 19:03:57 +03:00
Gabriele
b67a10c4a1 configure: don't fail when $CPPFLAGS starts with a white space 2015-05-11 13:49:20 +02:00
sledgehammer999
fc52248bf7 Correctly detect FreeBSD when configuring.
Thanks to yurivict for helping.
Closes #2962.
2015-05-11 00:29:46 +03:00
sledgehammer999
4725022f7e Fix configure typo. 2015-05-11 00:29:42 +03:00
sledgehammer999
a3574d3e28 Merge pull request #2846 from Noctem/fixVariableNames
Fix variable names
2015-05-10 17:53:26 +03:00
Chocobo1
04300c11c3 Hookup to Coverity Scan, Closes #2601 2015-05-10 15:07:36 +08:00
Chocobo1
1d6263385b Use AllUppercase for label text 2015-05-10 14:13:25 +08:00
sledgehammer999
24c2f73a9d Update Changelog. 2015-05-10 04:17:32 +03:00
sledgehammer999
0f122df5f3 Change name of make target that creates the release tarball. The old name conflicts with the 'dist' folder. 2015-05-10 04:17:22 +03:00
sledgehammer999
1ba8ce7345 Sync translations from Transifex and run lupdate. 2015-05-10 03:03:07 +03:00
sledgehammer999
8a5d2208a5 Fix UI freeze when right clicking on a torrent with libtorrent 1.0.x.
Thanks to pmzqla for finding the root issue.
Closes #2365 #2388.
2015-05-10 02:31:35 +03:00
sledgehammer999
18e2bb6f60 Fix updating of Error/Warning trackers counter. 2015-05-09 20:39:38 +03:00
sledgehammer999
6c579950f6 Correctly detect trackers with invalid TLDs or IPv4/IPv6 addresses. 2015-05-09 20:39:29 +03:00
sledgehammer999
e378f28fb7 Use a single scrollbar for all filters in the sidepanel. 2015-05-09 20:39:20 +03:00
sledgehammer999
1f55c7aa6b Merge pull request #2866 from heirecka/master
Use DATADIR for installation of icons and appdata
2015-05-08 22:38:38 +03:00
sledgehammer999
2704e5577f Merge pull request #2948 from Chocobo1/res_compress
Increase resource files compression level
2015-05-08 22:06:04 +03:00
Chocobo1
010bf80b90 Increase resource files compression level, the result is 1.9% smaller binary size 2015-05-08 15:33:40 +08:00
DoumanAsh
62776df9e1 Aborting search engine process during closure. Close #2671 2015-05-05 19:29:13 +03:00
Chocobo1
72c5bce6a4 Add "Add link to torrent" menu in TrayIconMenu. Closes #2918. 2015-05-04 00:59:00 +08:00
sledgehammer999
6e4fbcf017 Fix linux build. 2015-05-03 01:21:06 +03:00
sledgehammer999
bf463d48d5 Bump version status. 2015-05-03 00:27:59 +03:00
sledgehammer999
3a3027e17c Update Changelog. 2015-05-03 00:27:44 +03:00
sledgehammer999
1a9b13b829 Sync translations from Transifex and run lupdate. 2015-05-03 00:08:02 +03:00
sledgehammer999
6644fe0714 Tell Windows to wait during shutdown by creating a ShutdownBlockReason.
Huge thanks to paolo-sz for bringing this to my attention, for the various patches he tried to submit and for testing.
See issue #1984 for complete history.
Closes #1535.
2015-05-02 23:55:58 +03:00
sledgehammer999
6c1740f78f Fix typo in configure script help description. 2015-05-02 23:51:51 +03:00
sledgehammer999
0994d258e2 Use absolute path to nox binary in the systemd service file. Also generate the service file with configure. Closes #2914. 2015-05-02 23:46:34 +03:00
sledgehammer999
d14805d065 Merge pull request #2863 from racam/master
login.html escape quotes + add qbittorrent-nox to gitignore + bug with startup info with qbittorrent-nox
2015-05-02 23:09:10 +03:00
racam
d7ac142885 Enhancement of the webui preference and of the quote escape for javascript 2015-05-01 21:59:36 +02:00
sledgehammer999
452b643e0c Merge pull request #2898 from glassez/app_quit
Fix aboutToQuit signal is not emitted on Windows.
2015-04-30 14:28:54 +03:00
Vladimir Golovnev (Glassez)
0a3406ea80 Fix aboutToQuit signal is not emitted on Windows.
In some cases QApplication::aboutToQuit() and
QApplication::commitDataRequest() signals not emitted on
Windows. This happened when qBittorrent is started with both "Show
minimized" and "Minimize to system tray" enabled.
2015-04-30 13:15:06 +03:00
sledgehammer999
3d41aced2b Merge pull request #2923 from pmzqla/webui-session
WebUI: create a new session for each user
2015-04-30 02:30:03 +03:00
Gabriele
8017680055 WebUI: create a new session for each user
Closes #2919.
2015-04-29 16:13:43 +02:00
sledgehammer999
167d20083d Merge pull request #2875 from pmzqla/qvarianthash
WebUI: Convert torrent list from QVariantHash to QVariantMap
2015-04-28 22:10:19 +03:00
racam
80b526d1af add qbittorrent-nox to the .gitignore 2015-04-27 23:29:21 +02:00
sledgehammer999
866f9654eb Merge pull request #2876 from pmzqla/webui-forcestart
WebUI: Implement 'Force Start' feature.
2015-04-16 22:22:57 +03:00
Gabriele
41fa59f164 Allow to Open files from the properties pane by pressing "Enter"
Allow to open only one file at a time and ignore keypresses when
multiple items are selected.
2015-04-16 18:50:11 +02:00
Gabriele
b5b40abb56 WebUI: Implement 'Force Start' feature. 2015-04-16 18:32:31 +02:00
sledgehammer999
2c5edf8652 Implement 'Force Start' feature. Closes #270. 2015-04-15 18:13:24 +03:00
sledgehammer999
f555fca5e0 Merge pull request #2531 from pmzqla/stable-list
Don't reorder the torrents in the transfer list if not necessary
2015-04-15 18:11:34 +03:00
Gabriele
1f77a03eb6 Don't reorder the torrents in the transfer list if not necessary
The current sorting algorithm is not stable and causes undesidered
rearrangements of the transfer list when different torrents have same
values in respect to the current sorting criterion. Fix this by using
the priority, the seed date and the hash of the torrents as fallback
values to determine the order.

Closes #2158.
Closes #2526.
2015-04-15 11:43:22 +02:00
Gabriele
fff1436e26 WebUI: Convert torrent list from QVariantHash to QVariantMap
Currently QJsonDocument::fromVariant() does not support QVariantHash,
so convert the torrent list to QVariantMap.

Closes #2849.
2015-04-14 20:36:25 +02:00
Gabriele
1b2e65011d Follow project coding style. Issue #2192. 2015-04-13 21:16:44 +02:00
sledgehammer999
79a9696703 Merge pull request #2869 from zywo/french.nsi
Update french.nsi
2015-04-13 17:36:44 +03:00
zywo
43bf51a4c8 Update french.nsi 2015-04-13 14:43:13 +01:00
sledgehammer999
7aab10b68f Merge pull request #2499 from ngosang/torrent_name
Changes torrent name when metadata is retrieved. Closes #2360.
2015-04-13 13:27:12 +03:00
ngosang
20d7f37fd0 Changes torrent name when metadata is retrieved 2015-04-13 10:49:29 +02:00
Heiko Becker
f3b82e24c8 Use DATADIR for installation of icons and appdata
This allow installing icons, appdata and desktop files into a
directory outside the prefix. This comes in handy on a multiarch
layout, where arch specific stuff goes into /usr/${host}/{bin,lib}
but arch independent files still into /usr/share.
2015-04-12 23:22:37 +02:00
sledgehammer999
6aceac152d Adjust color scheme for dark themes. Closes #1359. 2015-04-12 16:25:06 +03:00
sledgehammer999
4493fd9c31 Allow to use system QJson. Closes #1744. 2015-04-12 14:01:32 +03:00
sledgehammer999
3047681951 Don't include the GeoIP database in the repo. Inadvertently added by commit ff9a281b72. Issue #2837. 2015-04-12 01:07:41 +03:00
sledgehammer999
b117393345 Revert "Make Qt4 usage explicit." due to #2835.
This reverts commit 86f9cc1b8c.

Conflicts:
	configure
2015-04-11 23:43:55 +03:00
sledgehammer999
3c58b0cc9a Revert "WebUI: Use QVariantMap instead of QVariantHash"
This reverts commit d49c79d032.
2015-04-11 12:43:22 +03:00
sledgehammer999
daaac6fd10 Merge pull request #2852 from pmzqla/qvarianthash
WebUI: Use QVariantMap instead of QVariantHash
2015-04-10 22:11:06 +03:00
Gabriele
d49c79d032 WebUI: Use QVariantMap instead of QVariantHash
Currently QJsonDocument::fromVariant() does not support QVariantHash,
so use QVariantMap instead.

Closes #2849.
2015-04-10 13:17:23 +02:00
David Christenson
307ae459f2 Fix variable names
Change undeclared identifiers `running_` and `paramsQueue_` to their
proper names.
2015-04-07 20:49:45 -06:00
sledgehammer999
7af4928b18 Merge pull request #2826 from pmzqla/webui-queueing
WebUI: Check if torrent queueing is enabled before changing torrent priorities
2015-04-07 21:33:43 +03:00
sledgehammer999
970e7440c6 Merge pull request #2840 from pmzqla/numfiles
Use out of range value when the number of files can't be determined
2015-04-07 21:32:02 +03:00
Gabriele
52c8a570e1 Use out of range value when the number of files can't be determined
Trying to get the number of files of a torrent with no metadata causes
a crash. Prevent this by first checking if the metadata is available.
If the number of files can't be determined, -1 will be returned.

Closes #2522.
2015-04-06 23:48:49 +02:00
sledgehammer999
0cab34aa11 Merge pull request #2833 from pmzqla/osx-trayicon
Don't use HTML in tray icon pop-up on OSX
2015-04-06 02:06:23 +03:00
sledgehammer999
28eeef93f6 Merge pull request #2816 from pmzqla/sortdates
Put torrents with invalid "Last Activity" value or no "Ratio Limit" at the bottom of the list
2015-04-05 22:16:47 +03:00
Gabriele
f02db79c52 Put torrents with no ratio limit at the bottom 2015-04-05 20:44:09 +02:00
Gabriele
0a51b57a54 Put torrents with invalid "Last Activity" value at the bottom of the list
Closes #2809.
2015-04-05 20:44:07 +02:00
Gabriele
98350bae5d Follow project coding style. Issue #2192. 2015-04-05 20:44:03 +02:00
sledgehammer999
dcc73afd73 Save widget states under different paths when using Qt5. Closes #2340. 2015-04-05 20:49:26 +03:00
sledgehammer999
4612abb41e Make qmake regenerate recursively all makefiles in subdirectories when reconfiguring. Closes #2111. 2015-04-05 20:21:06 +03:00
sledgehammer999
8a2a719227 Update .travis.yml 2015-04-05 19:53:17 +03:00
sledgehammer999
72f03b4002 Make libtorrent-rasterbar 0.16.x usage explicit. 2015-04-05 19:46:48 +03:00
sledgehammer999
86f9cc1b8c Make Qt4 usage explicit. 2015-04-05 19:14:00 +03:00
sledgehammer999
de5912b3b5 Install appdata xml file along with the other files. 2015-04-05 19:01:23 +03:00
sledgehammer999
4627776165 Move appdata xml to dist. 2015-04-05 18:58:33 +03:00
sledgehammer999
39b59974ad Merge pull request #2147 from alxpl/patch-1
Create qBittorrent.appdata.xml
2015-04-05 18:53:10 +03:00
sledgehammer999
6b3555bd90 Add systemd configure option. Closes #921. 2015-04-05 16:37:28 +03:00
sledgehammer999
26404e2cc4 Add systemd service file.
Thanks to leigh123linux and pmzqla.
2015-04-05 16:37:12 +03:00
sledgehammer999
66bb7ce52c Drop pkg-config version requirement to 0.23. Closes #2645. 2015-04-05 14:17:22 +03:00
Gabriele
a582f2e5ed Don't use HTML in tray icon pop-up on OSX
Closes #2830.
2015-04-04 19:22:27 +02:00
Gabriele
027a08c92e Update matching RSS articles while editing rules
Save the rules as soon as they are edited so that the matching
articles tree is immediately updated.

Closes #2829.
2015-04-04 19:21:33 +02:00
Gabriele
6e91a108bd WebUI: Check if torrent queueing is enabled before changing torrent priorities 2015-04-03 18:02:39 +02:00
sledgehammer999
d2ffbc44f1 Merge pull request #2721 from Chocobo1/dev7
Initialize class members
2015-04-02 14:50:11 +03:00
sledgehammer999
3294d895a1 Merge pull request #2652 from pmzqla/content-table
WebUI: changes to torrent file list
2015-04-02 11:53:19 +03:00
Chocobo1
ab6ccd9f5b Initialize member m_apstate 2015-04-02 14:15:58 +08:00
sledgehammer999
954214c364 Merge pull request #2730 from LazyBui/master
Implementing support for session-based download and upload statistics
2015-04-01 20:25:23 +03:00
sledgehammer999
02df947ce7 Merge pull request #2784 from ngosang/torrentz_trackers
[search engine] Update Torrentz trackers list
2015-04-01 14:23:30 +03:00
ngosang
e0b399e2a1 [search engine] Update Torrentz trackers list 2015-03-31 16:21:26 +02:00
sledgehammer999
2e9593b797 Merge pull request #2812 from schnurlos/patch-3
Update about_imp.h
2015-03-31 08:41:49 +03:00
sledgehammer999
4c2b072ae2 Fix 'Resumed' filter counter. 2015-03-31 01:59:49 +03:00
schnurlos
2c9667e144 Update about_imp.h
Added schnurlos as 2nd german translator
2015-03-30 22:03:15 +02:00
sledgehammer999
ec61907ea1 Merge pull request #2806 from ngosang/translators
Update translators
2015-03-30 19:04:45 +03:00
ngosang
7172b48d9b Update translators 2015-03-30 15:56:10 +02:00
Chocobo1
1037d7f335 Webui: add delay in shutdown command in order to send out response msg 2015-03-30 13:50:53 +08:00
sledgehammer999
c6bfcd0d02 Bump version status. 2015-03-29 21:11:36 +03:00
sledgehammer999
8c671fa0c1 Update Changelog. 2015-03-29 21:09:33 +03:00
sledgehammer999
25afb8a338 New translation: Hindi(India). 2015-03-29 21:09:18 +03:00
sledgehammer999
4929085a5d Sync translations from Transifex and run lupdate. 2015-03-29 21:07:28 +03:00
sledgehammer999
276ca0ab84 Change the color scheme used(mostly for light backgrounds). 2015-03-29 20:45:17 +03:00
sledgehammer999
74fc92137a Merge pull request #2800 from pmzqla/icons-leftpanel
Set icon size to 16x16 in the left panel
2015-03-29 20:35:36 +03:00
Gabriele
ad271bb549 Set icon size to 16x16 in the left panel 2015-03-29 18:41:23 +02:00
sledgehammer999
75e1101321 Merge pull request #2797 from pmzqla/completed-status
WebUI: Implement a 'Completed' status
2015-03-29 19:06:18 +03:00
Gabriele
e3a5ba09c4 WebUI: Implement a 'Completed' status 2015-03-29 18:00:59 +02:00
sledgehammer999
f9e7345776 Implement a 'Completed' status. Closes #2326 #2483 #939. 2015-03-28 21:25:32 +02:00
sledgehammer999
8420559e05 Implement 'Error' and 'Warning' views in the tracker list. Closes #1077. Partially implements #33. 2015-03-28 16:54:09 +02:00
sledgehammer999
9b0ea3a055 Allow the user to disable filters from the side panel. 2015-03-28 16:54:01 +02:00
sledgehammer999
ff1aaa8733 Refactor side panel code. Encapsulate each widget's logic in their own subclass. 2015-03-28 16:53:53 +02:00
sledgehammer999
1bb968f9fd Remove unused code from the side panel filters. 2015-03-28 16:53:44 +02:00
sledgehammer999
96d7bfb4ad Update the UI when trackers or Url seeds are added either via the WebUI or via merging duplicate torrents. 2015-03-28 16:53:36 +02:00
sledgehammer999
a85b6df314 Fix side panel resizing of elements. 2015-03-28 16:53:27 +02:00
sledgehammer999
f0d5ce4b98 Implement tracker list in the side panel. Closes #170. 2015-03-28 16:53:19 +02:00
sledgehammer999
36d2bee557 Merge pull request #2789 from Chocobo1/translation
Update installer translations: Traditional Chinese
2015-03-28 03:51:10 +02:00
Chocobo1
62604af2d0 Update installer translations: Traditional Chinese 2015-03-27 20:51:00 +08:00
sledgehammer999
238a799d38 Merge pull request #2783 from ngosang/spanish_translation
Update Spanish translations (installer)
2015-03-26 19:24:34 +02:00
sledgehammer999
9570df5651 Merge pull request #2780 from MrStukov/patch-2
Update russian.nsi
2015-03-26 19:23:49 +02:00
ngosang
ff97f9eba6 Update Spanish translations (installer) 2015-03-26 13:53:55 +01:00
sledgehammer999
133d92dd2e Merge pull request #2677 from pmzqla/connection
Remove dead connection from MainWindow
2015-03-26 03:38:27 +02:00
sledgehammer999
ccf6f71646 Merge pull request #2774 from schnurlos/master
Update german.nsi
2015-03-26 03:36:23 +02:00
Alexander
7baa8da185 Update russian.nsi
replaced the word "откывать" to "открывать" -> this is the correct translation of the word "open"
2015-03-25 23:24:11 +03:00
schnurlos
dbccc6bbaa Update german.nsi
Filled with german translation.
2015-03-24 20:48:12 +01:00
sledgehammer999
2fa061a898 Don't break RTL locales. 2015-03-20 00:02:50 +02:00
sledgehammer999
a40f30dd5e Fix speed printing in the tray icon and in the title bar. Closes #2737. 2015-03-19 01:02:05 +02:00
sledgehammer999
5a20bdcef3 Fix the deletion of torrents when using the context menu of the label sidepanel.
It now uses the same logic as the code that deletes torrents when using the context menu of the transferlist.
Closes #2729.
2015-03-16 23:57:03 +02:00
LazyBui
4dadf96925 Implementing support for session-based download and upload statistics 2015-03-16 09:41:39 -05:00
Chocobo1
3e6706a371 Don't close downloadFromURL dialog when showing empty url warning 2015-03-09 15:34:53 +08:00
Gabriele
def4b92588 Remove dead connection from MainWindow
shutdownCleanUp() had been removed with 458b216b74 ("MainWindow cleanups.")
2015-03-08 16:58:09 +01:00
Gabriele
48c1bd58dd Allow to copy all the trackers with a keyboard shortcut
If multiple trackers are selected, Ctrl+C will copy only one of them
while the context menu will copy all of them. Fix this inconsistency.

Closes #2675.
2015-03-08 12:50:22 +01:00
Gabriele
1e4d11801e WebUI: Add title attribute to filename cells in content tab
This will show the entire file path in a tooltip. This is useful
especially since bb1649a797 ("WebUI: return full paths to files).
2015-03-04 22:25:43 +01:00
Gabriele
dd112c1e1b WebUI: Simplify the code for the update of the content table 2015-03-04 22:25:26 +01:00
Gabriele
4db757839c WebUI: Return full path to files
It's otherwise impossible to know the structure of a torrent.
2015-03-04 20:03:46 +01:00
Artem S. Tashkinov
4f8155e612 Let's check if the torrent file can actually be opened before passing it to libtorrent
If we don't have enough permissions, libtorrent will spew a pretty useless, irrelevant and almost wrong message: "Failed to load the torrent: torrent file is not a dictionary"
2015-03-03 00:22:45 +05:00
Mayank Asthana
cf89d892c6 Download-from-URL textbox changes focus on tab key 2015-03-03 00:27:16 +05:30
sledgehammer999
19b9a84576 Merge pull request #2623 from ADTC/optimize-png
Optimize PNG for torrentz like #2598
2015-03-01 14:54:42 +02:00
sledgehammer999
3a79c7a37e Merge pull request #2629 from pmzqla/configure-comp
Use correct operator to compare strings in configure script
2015-03-01 14:48:32 +02:00
Gabriele
6b248492ca Use correct operator to compare strings in configure script
To compare strings, = should be used instead of ==.

Closes #2627.
2015-02-28 14:39:36 +01:00
ADTC
1109464dad Optimize PNG - torrentz
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-27 05:52:46 +08:00
sledgehammer999
112d4b8c71 Merge pull request #2512 from ngosang/torrentz
New feature: Torrentz search engine
2015-02-26 18:46:35 +02:00
sledgehammer999
54975e1c41 Merge pull request #2563 from pmzqla/encoding-check
WebUI: Use regular expression to check if gzip is accepted
2015-02-26 18:45:09 +02:00
sledgehammer999
09d7c2777f Merge pull request #2613 from DoumanAsh/btdigg_fix
[search engine] Remove custom HTTPSConnection. Fix #2594
2015-02-26 18:22:27 +02:00
sledgehammer999
906ffdf4b6 Merge pull request #2598 from ADTC/optimize-png
Optimize PNG (lossless compression)
2015-02-26 18:21:25 +02:00
sledgehammer999
784c3da3b5 Merge pull request #2611 from Chocobo1/my_dev
Let the OS decide the default interface regardless of IPv4/IPv6. Closes #2156.
2015-02-25 18:01:28 +02:00
Chocobo1
45149f3277 Let the OS decide the default interface regardless of IPv4/IPv6. Closes #2156. 2015-02-25 22:52:12 +08:00
sledgehammer999
42b9e3d2c4 Merge pull request #2614 from glassez/indent_size
Fix indentation size in qtlibtorrent/* files.
2015-02-25 16:23:39 +02:00
Vladimir Golovnev (Glassez)
0e4ef42ddf Fix indentation size in qtlibtorrent/* files. 2015-02-25 12:48:40 +03:00
ngosang
fa6f4c6948 New feature: Torrentz search engine 2015-02-24 19:56:34 +01:00
DoumanAsh
2d4f183771 [search engine] Remove custom HTTPSConnection in btdigg. Fix #2594 #2425 2015-02-24 19:02:22 +03:00
sledgehammer999
92757b9f22 Follow project coding style. Issue #2192. 2015-02-23 22:38:29 +02:00
sledgehammer999
89db090cb9 Hold the Preferences lock the absolute minimum time. 2015-02-23 20:01:03 +02:00
sledgehammer999
153f3328f3 Randomize the listening port only on startup. 2015-02-23 20:00:55 +02:00
sledgehammer999
2c90ded9aa Fix qmake files. 2015-02-23 20:00:48 +02:00
ADTC
51a9d6572e Optimize PNG - search engines
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:36:47 +08:00
ADTC
286b247bf7 Optimize PNG - other icons
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:36:22 +08:00
ADTC
21bcb838b9 Optimize PNG - skin icons
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:35:50 +08:00
ADTC
508d54ac81 Optimize PNG - oxygen icons
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:35:13 +08:00
ADTC
f3e015f20e Optimize PNG - flags
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:31:36 +08:00
ADTC
2d81ffb001 Optimize PNG - line edit images
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

For clear_left.png, Beyond Compare shows important difference when
compared with original. However, the optimized file itself works fine.

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:29:37 +08:00
ADTC
2f88d4aea8 Optimize PNG - qBittorrent icon
Reduced PNG sizes using PNGGauntlet for Windows (3 passes)

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-23 18:26:50 +08:00
sledgehammer999
1bf7e3cafa Move the searchengine code back into its original place. 2015-02-23 03:44:29 +02:00
sledgehammer999
b93d784571 Revert "Change Update URL for search engines"
This reverts commit 24a1c9b16e.
2015-02-23 03:41:57 +02:00
Gabriele
8b65db69c4 WebUI: Use regular expression to check if gzip is accepted
The previous code caused a crash in case "gzip" was at the end of the
string with no quality factor (;q=*) specified.
2015-02-17 20:19:56 +01:00
sledgehammer999
cff3485988 Merge pull request #2554 from john-peterson/icon
Fix filter icons. Issue #2553
2015-02-15 21:56:52 +02:00
John Sebastian Peterson
92f490cde8 Fix filter icons. Issue #2553 2015-02-15 02:29:41 +01:00
sledgehammer999
970a72cff2 Merge pull request #2543 from ngosang/update_url
Change Update URL for search engines
2015-02-12 21:12:53 +02:00
ngosang
24a1c9b16e Change Update URL for search engines 2015-02-12 18:00:26 +01:00
sledgehammer999
d4eaaf81e4 Merge pull request #2535 from ngosang/rss_warnings
Removes several warnings related with RSS
2015-02-12 17:31:16 +02:00
sledgehammer999
f62197f868 Merge pull request #2537 from ngosang/kickass_searchengine
Updated URL in kickasstorrents search engine
2015-02-12 16:09:54 +02:00
sledgehammer999
ac1e66fc71 Merge pull request #2490 from pmzqla/webui-checkbox
WebUI: Fix checkboxes of the watched folder list in the preferences
2015-02-12 16:07:53 +02:00
sledgehammer999
3b677053c7 Merge pull request #2487 from pmzqla/webui-negativeoffset
WebUI: Fix negative offsets when requesting torrent list
2015-02-12 16:06:29 +02:00
sledgehammer999
58c9a094f4 Merge pull request #2486 from pmzqla/webui-title
WebUI: Update browser title even with no transfer going on
2015-02-12 16:06:08 +02:00
sledgehammer999
33c5eccf13 Merge pull request #2493 from ADTC/issue-2452
Add "Copy name" option in right-click menu of torrent list
2015-02-12 16:04:59 +02:00
ngosang
ba2bb9be5b Updated URL in kickasstorrents search engine 2015-02-11 17:56:05 +01:00
ngosang
90a18da499 Removes several warnings related with RSS 2015-02-11 01:39:27 +01:00
ngosang
d206b00a88 Disable Auto piece size when creating a new torrent 2015-02-11 00:53:42 +01:00
sledgehammer999
0058abeefa Merge pull request #2467 from buinsky/master
Some canges in WebUI
2015-02-10 15:43:32 +02:00
buinsky
902db2b938 Group setting torrents download limit 2015-02-10 14:25:08 +03:00
buinsky
cf55751fbe Group setting torrents upload limit 2015-02-10 14:25:06 +03:00
buinsky
facab1681a Add ability to set super seeding mode for torrents 2015-02-10 14:25:04 +03:00
buinsky
28f573e9a8 Fix processHash function
Fix processHash function to not use QVariantHash as result because of QJsonDocument doesn't support QVariantHash variables in Qt 5.
2015-02-10 14:25:01 +03:00
buinsky
8931eec5b0 Use server refresh interval
Use torrents table refresh interval from server in web-client.
2015-02-10 14:24:59 +03:00
buinsky
c4332fe9a9 Add processing double click on torrent
Starting/pausing torrent by double-clicking on it.
2015-02-10 14:24:57 +03:00
buinsky
0fee2216d0 Add shortcut key for deleting selected torrents
Added processing of pressing 'Delete' key on keyboard.
2015-02-10 14:24:54 +03:00
buinsky
28b976bdb8 Place 'Resumed' filter before 'Paused' 2015-02-10 14:24:52 +03:00
buinsky
623797a6c4 Follow project coding style. Issue #2192. 2015-02-10 14:24:50 +03:00
buinsky
f5f9e206fb Add 'Resumed' filter 2015-02-10 14:09:17 +03:00
buinsky
0f56440dec Fix alternative speed limits toggle behavior 2015-02-10 14:09:15 +03:00
buinsky
135599acc4 Center vertically text in progress bar 2015-02-10 14:09:12 +03:00
buinsky
18b036545c Fix 'Resume all' & 'Pause all' actions 2015-02-10 14:09:10 +03:00
buinsky
1d5e52fc55 Fix friendlyDuration function 2015-02-10 14:09:07 +03:00
buinsky
ba86d16e78 Use compact style of JSON data 2015-02-10 14:09:05 +03:00
buinsky
bed0784a2d Follow project coding style. Issue #2192. 2015-02-10 14:09:02 +03:00
buinsky
d17f21af45 Queueing flag relocation in sync/maindata response 2015-02-10 14:09:00 +03:00
sledgehammer999
7bea5abb8d Merge pull request #2525 from ngosang/remove_empty_labels
Change "remove empty labels" to "remove unused labels".
2015-02-10 08:56:40 +02:00
sledgehammer999
503cca5a7e Merge pull request #2501 from ngosang/sort_state
Changes sort order of the status column
2015-02-10 08:55:17 +02:00
ngosang
d046b7a532 Change "remove empty labels" to "remove unused labels". 2015-02-10 01:46:27 +01:00
sledgehammer999
99cc29c18e Merge pull request #2504 from ngosang/remove_empty_labels
New feature: Remove empty labels
2015-02-10 02:18:28 +02:00
ngosang
ea111c664f New feature: Remove empty labels 2015-02-10 01:12:16 +01:00
sledgehammer999
eff45b9e14 Merge pull request #2488 from DoumanAsh/piratebay_fix
[searchengine] Fix piratebay. Closes #2270
2015-02-09 22:45:41 +02:00
DoumanAsh
503626bde8 [searchengine] Fix piratebay. Closes #2270 2015-02-09 21:13:57 +03:00
ngosang
57ab7fcf64 Changes sort order of the status column 2015-02-09 18:13:51 +01:00
sledgehammer999
b7898cccd0 Merge pull request #2508 from ngosang/mininova_search
Fix: error in mininova search engine
2015-02-09 19:09:54 +02:00
sledgehammer999
f84a22f403 Merge pull request #2506 from ngosang/white_bar
Removes white bar in the labels list. Closes #1151.
2015-02-09 19:09:16 +02:00
sledgehammer999
8bd0470fbb Merge pull request #2523 from ngosang/percent
Small change in progress bar percentage
2015-02-09 19:02:58 +02:00
ngosang
2da3ad3234 Removes white bar in the labels list. Closes #1151. 2015-02-09 17:38:54 +01:00
ngosang
0e89ec3737 Small change in progress bar percentage 2015-02-09 17:32:00 +01:00
ADTC
d0c523ed00 Changed "caption" to "name" in code for consistency
To maintain consistency with the actual English menu item, the variable
names and method name have been changed to reflect the menu item text.

Per comments in PR qbittorrent#2493

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-09 11:19:33 +08:00
ngosang
5d3f68e422 Add icon to "Copy name" option and change item ordering
The Copy icon is added to the menu item. This is in tandem with other
uses of the same icon, such as "Copy" (in log), "Copy selected" (in peer
list), "Copy tracker url", etc.

Also changed the ordering to have the new option appear before the
existing "Copy magnet link" icon.

This is as per comments in PR qbittorrent#2493

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-09 11:19:31 +08:00
Chris Hirst
91aad83cad Add "Copy name" option in right-click menu of torrent list
Implementation of feature request #2452
https://github.com/qbittorrent/qBittorrent/issues/2452

Adds a new option in the right-click menu of the torrent list to copy
the name(s) of selected torrent(s) to the clipboard. This is similar to
the existing option to copy the magnet links to the clipboard.

This patch was originally authored by Chris Hirst (ciaobaby). I changed
the item name from "Copy caption" to "Copy name" (the torrent list
column header says "Name"), and I added the missing line in the header
file.

Note: Translations are not updated for the English menu item "Copy
name".

Signed-off-by: ADTC <send2adtc@gmail.com>
2015-02-09 11:19:29 +08:00
ngosang
1bd9b6ae1a Fix: error in mininova search engine 2015-02-09 01:46:00 +01:00
sledgehammer999
2859856034 Merge pull request #2518 from pmzqla/date-logs
Use system format to display dates in logs
2015-02-09 00:17:36 +02:00
Gabriele
8890d244e2 WebUI: Update browser title even with no transfer going on 2015-02-08 23:10:41 +01:00
Gabriele
09c8d17c94 WebUI: Fix negative offsets when requesting torrent list
If the offset is negative, it must be added to the current list size.
2015-02-08 23:09:45 +01:00
Gabriele
2a351ea9a4 WebUI: Fix checkboxes of the watched folder list in the preferences
The 'checked' attribute does not require any value, so for unckecked
checkboxes nothing should be added.

Fix f16b7614a1.
2015-02-08 23:07:07 +01:00
Gabriele
8fa3a714c2 Use system format to display dates in logs 2015-02-08 23:05:47 +01:00
sledgehammer999
8eaaa41573 Merge pull request #2484 from ngosang/create_torrent
Fix: default settings in "Create Torrent" dialog
2015-02-09 00:02:09 +02:00
ngosang
85610b3b7d Fix Create Torrent dialog 2015-02-08 22:45:27 +01:00
sledgehammer999
c6248fb162 Merge pull request #2449 from glassez/redesign
First preparations for Redesign (#2433)
2015-02-08 22:50:22 +02:00
Vladimir Golovnev (Glassez)
898d454b78 Follow project coding style (Issue #2192). 2015-02-08 20:38:04 +03:00
Vladimir Golovnev (Glassez)
2707f5205f Fix prefjson::setPreferences() doesn't actually save. 2015-02-08 19:44:56 +03:00
Vladimir Golovnev (Glassez)
8e1698d563 Implement Preferences::changed() signal. 2015-02-08 19:37:04 +03:00
Vladimir Golovnev (Glassez)
458b216b74 MainWindow cleanups.
All MainWindow child widgets use constructors with 'parent' parameter
that allows parent widget to delete them at its destruction.
Some other MainWindow cleanup code replaced to destructor.
Application manages MainWindow instance and remove it when aboutToQuit()
signal emitted.
2015-02-08 19:36:52 +03:00
Vladimir Golovnev (Glassez)
0c50a8b98b Put all application logic into Application class.
Application process message and split it into params list itself (this
prevents code duplication).
Application store params unless other components ready to process them.
Application incapsulate all QMacApplication and SessionApplication logic
(this is too small to have separate classes).
2015-02-08 19:33:18 +03:00
Vladimir Golovnev (Glassez)
8b95bb233d Fix main(). 2015-02-08 19:28:03 +03:00
Vladimir Golovnev (Glassez)
2dd473eb28 Use unmodified QtSingleApplication on Windows.
Get running application instance PID without QtSingleApplication
modification.
2015-02-08 19:27:45 +03:00
Vladimir Golovnev (Glassez)
e52a8fb0b0 Fix misc::getUserIDString() on Windows.
Return current user name now (and not constant "0").
Also use Unicode version of GetUserName().
2015-02-05 19:10:46 +03:00
Vladimir Golovnev (Glassez)
ff9a281b72 Change project directory structure.
Change project directory structure according to application structure.
Change 'nox' configuration option to something more meaningful 'nogui'.
Rename 'Icons' folder to 'icons' (similar to other folders).
Partially add 'nowebui' option support.
Remove QConf project file.
2015-02-05 19:10:26 +03:00
sledgehammer999
e4c7f52bb3 Merge pull request #2463 from Noctem/QFont
Include QFont headers for OS X
2015-02-02 23:34:15 +02:00
David Christenson
2b480f60f9 Include QFont headers for OS X
Fix compilation on OS X >10.8 by including headers for QFont.
2015-02-01 17:06:59 -07:00
sledgehammer999
d0b476a4be Merge pull request #2464 from Noctem/stdlib-flags
Fix OS X compilation and packaging
2015-02-02 00:21:02 +02:00
David Christenson
bdb722893f Fix C++11 compliance
Fix compiler error when compiling with -std=c++11
 "invalid suffix on literal; C++11 requires a space between literal and
 identifier [-Wreserved-user-defined-literal]"
2015-02-01 13:32:00 -07:00
David Christenson
3f22bf1186 Use c++11 config instead of hard coding flags
Tell qtmake to use c++11 and let it handle the configuration changes.
2015-02-01 13:31:47 -07:00
sledgehammer999
6209d8838a Show info hash in the torrent details in 'Add New Torrent' dialog.
Initial work by chrishirst.
Closes #2385.
2015-02-01 18:29:00 +02:00
sledgehammer999
cb9a5c5018 Merge pull request #2480 from ngosang/copy_peers
Copy selected peers (IP:Port)
2015-02-01 15:51:52 +02:00
ngosang
17eb2dd3cc Copy selected peers (IP:Port) 2015-02-01 12:04:24 +01:00
sledgehammer999
71b6c6ffd7 Merge pull request #2470 from Noctem/minor
Update build-aux, configure, and .gitignore
2015-02-01 01:59:42 +02:00
sledgehammer999
2b24fe09c5 Save the new save path first in the history. Closes #2382. 2015-02-01 01:38:24 +02:00
sledgehammer999
38455af791 Follow project coding style. Issue #2192. 2015-02-01 01:27:51 +02:00
sledgehammer999
d45aff9169 Merge pull request #260 from sledgehammer999/add_new_torrent_layout
Improve usability of 'Add new torrent' dialog. Implements issue #225.
2015-02-01 01:21:09 +02:00
sledgehammer999
b465b3c68a Improve usability of 'Add new torrent' dialog. Implements issue #225. 2015-02-01 01:18:49 +02:00
sledgehammer999
d66273b10a Show error status when a torrent is missing files. 2015-01-31 20:06:50 +02:00
sledgehammer999
45b2432513 Don't touch torrents whose files are missing (like when their drive isn't plugged in).
Closes #342 #2308 2469.
2015-01-31 20:06:49 +02:00
David Christenson
26bf838a0b Bootstrap and update build-aux 2015-01-29 17:49:41 -07:00
David Christenson
3eabb5946b Update .gitignore 2015-01-29 17:49:25 -07:00
David Christenson
1506999968 Fix OS X packaging
Remove erroneous Prefix entry from the Mac qt.conf, change translation
install location.
2015-01-29 15:57:08 -07:00
David Christenson
87c272207f Add libc++ flags on OS X
QT5 on OS X apparently does not add '-stdlib=libc++' to CXXFLAGS or
LFLAGS, so they must be added by us for compilation to succeed.
2015-01-28 03:22:36 -07:00
sledgehammer999
95c75bb8c8 Merge pull request #2374 from pmzqla/slider-bandwidth
Allow bandwidth values up to 65535 KiB/s
2015-01-28 00:49:16 +02:00
sledgehammer999
eeee24a0b3 Make 'TorrentPersistentData' similar to 'Preferences' class. 2015-01-27 17:34:21 +02:00
sledgehammer999
70985480d6 Follow project coding style. Issue #2192. 2015-01-27 17:34:20 +02:00
sledgehammer999
dcf5d4d0ee Merge branch 'optimize-persistent-data' of git://github.com/sorokin/qBittorrent
Conflicts:
	src/qtlibtorrent/qbtsession.cpp
2015-01-27 15:21:26 +02:00
Ivan Sorokin
e3349092ad Refactor TorrentPersistentData
Conflicts:
	src/mainwindow.cpp
	src/mainwindow.h
	src/qtlibtorrent/qbtsession.cpp
	src/qtlibtorrent/qtorrenthandle.cpp
	src/transferlistwidget.cpp
	src/webui/btjson.cpp
2015-01-25 02:58:54 +03:00
Ivan Sorokin
70a114eb13 Speedup persistent data
Conflicts:
	src/mainwindow.cpp
	src/mainwindow.h
2015-01-25 02:58:54 +03:00
sledgehammer999
061e71337b Initialize logger at the beginning of program to avoid threading issues. 2015-01-23 19:05:19 +02:00
sledgehammer999
087417c8a6 Change the code to use the Logger class instead. 2015-01-23 19:05:18 +02:00
sledgehammer999
a7527aa9a7 Remove unused signal from LogListWidget. 2015-01-23 19:05:17 +02:00
sledgehammer999
8966bcacea Follow project coding style. Issue #2192. 2015-01-23 19:05:16 +02:00
sledgehammer999
91fc9e69ee Make the GUI log listen to the logger class. 2015-01-23 19:05:15 +02:00
sledgehammer999
1504bbfe43 Logger base class. 2015-01-23 19:05:14 +02:00
sledgehammer999
39c9bb0800 Merge pull request #2445 from buinsky/WebUI3
Web API: rename 'json' scope to 'query'
2015-01-23 16:41:42 +02:00
sledgehammer999
e67c4390ed Merge pull request #2429 from pmzqla/watched-folders
WebUI: Fix watched folders on Gecko
2015-01-23 01:28:35 +02:00
buinsky
b30ec46048 Web API: rename 'json' scope to 'query' 2015-01-23 01:37:12 +03:00
sledgehammer999
f2c6981711 Merge pull request #2389 from buinsky/WebUI3
Web API: Implement sync/maindata request
2015-01-23 00:36:12 +02:00
buinsky
574c57ee18 Use sync/maindata request in WebUI 2015-01-23 01:13:42 +03:00
buinsky
383c0e1418 Implement sync/maindata request 2015-01-23 01:13:38 +03:00
buinsky
0d43ee7076 Follow project coding style. Issue #2192. 2015-01-18 16:27:17 +03:00
buinsky
bf0f9dd275 Implement functions for generating partial responses of requests. 2015-01-18 16:27:05 +03:00
sledgehammer999
71eec8e2e0 Merge pull request #2407 from glassez/coding_guide
Fix internal conflicts in CODING_GUIDELINES.md.
2015-01-18 12:03:02 +02:00
Vladimir Golovnev (Glassez)
187180f986 Fix internal conflicts in CODING_GUIDELINES.md. 2015-01-17 23:20:41 +03:00
Gabriele
f16b7614a1 WebUI: Fix watched folders on Gecko
Passing objects to push() seems to be broken on Firefox, making the
preferences impossibile to use when there are watched folders.
Fix this by passing strings instead of elements.
2015-01-17 14:06:53 +01:00
Gabriele
c5db1157f1 Allow bandwidth values up to 65535 KiB/s
The slider has a max value, but it's changed whenever a value greater
than it is specified.

Note: 65535 is the maximum value allowed by libtorrent.

Closes #2373.
2015-01-17 14:00:29 +01:00
Gabriele
737f6c5b4e Split speedlimitdlg.h into speedlimitdlg.cpp and speedlimitdlg.h 2015-01-11 01:22:28 +01:00
sledgehammer999
74fcee2d7d Merge pull request #2332 from buinsky/WebUI2
WebUI: Change torrent model
2015-01-10 16:37:26 +02:00
sledgehammer999
aca42b8ccc Merge pull request #2378 from glassez/python_reg
Improve Windows Registry searching for Python.
2015-01-10 15:23:12 +02:00
Vladimir Golovnev (Glassez)
b45eb28099 Fix heap corruption. Closes #2342.
Fix heap corruption during Registry access.
2015-01-10 14:48:42 +03:00
Vladimir Golovnev (Glassez)
f851875ad1 Improve Windows Registry searching for Python.
Simplify logic of related functions.
Make sure that all open handles are closed.
Explicitly use Unicode versions of Windows API functions.
Prevent max subkey length overwrite.
Use Windows API style of variable names.
2015-01-10 13:17:21 +03:00
sledgehammer999
6757cc0bfe Merge pull request #2377 from pmzqla/spelling
Fix few spelling mistakes
2015-01-08 23:09:09 +02:00
Gabriele
d7161dcab1 Fix few spelling mistakes
s/Pieces size/Piece size/
s/uknown/unknown/

Closes #2367.
2015-01-08 18:42:58 +01:00
buinsky
04f1c0c238 WebUI: Change torrent model
Improvements:
- added functions, which may be used to reorder and hiding columns in torrents table
- new columns can be easily added to torrents table
2015-01-06 22:49:02 +03:00
sledgehammer999
68c06c7485 Rename the 'Unpaused' filter to 'Resumed'. 2015-01-04 01:32:31 +02:00
sledgehammer999
93f557b747 Coalesce changes in the Preferences class in a much shorter timeframe. 2015-01-04 01:20:37 +02:00
sledgehammer999
ca2dc325f5 Detect uknown command line parameters. 2014-12-28 12:31:37 +02:00
sledgehammer999
8bfd333c60 Touch up previous commit. 2014-12-28 12:31:36 +02:00
Vladimir Golovnev (Glassez)
afdc1ee93e HOTFIX: Correct command line parameters defaults. 2014-12-28 12:31:35 +02:00
sledgehammer999
96585ca73e Merge pull request #2322 from john-peterson/save4
fixing save state on change
2014-12-26 20:32:29 +02:00
John Sebastian Peterson
6de317ee13 Fix Properties widget state saving
readSettings changed CurrentTab and Visible by calling saveSettings

some slot connections were wrong
2014-12-26 19:28:50 +01:00
sledgehammer999
f21b0b4f6d Merge pull request #2321 from john-peterson/filter
adding inverse for paused filter
2014-12-26 20:11:15 +02:00
John Sebastian Peterson
89f34b4ae7 Add 'unpaused' torrent filter
the inverse of paused because complete and active have an inverse
2014-12-26 19:04:36 +01:00
sledgehammer999
5f8a49313e Merge pull request #2320 from pmzqla/webui-pausederror
WebUI: Add torrents paused because of errors in Paused and Download list
2014-12-26 19:38:49 +02:00
sledgehammer999
7a86180bb3 Merge pull request #2338 from jleclanche/master
Remove direct references to Qt4 in man pages
2014-12-26 19:38:01 +02:00
Jerome Leclanche
f91ed057ea Remove direct references to Qt4 in man pages 2014-12-26 18:27:34 +01:00
sledgehammer999
e8cb840836 Fix sorting by port column in peers view. 2014-12-26 17:30:09 +02:00
Gabriele
71bef1852d WebUI: Add torrents paused because of errors in Paused and Download list
Torrents paused because of errors are considered as torrents paused and in
download in the regular UI. Do the same in the WebUI for consistency.

Closes #2319.
2014-12-21 20:44:35 +01:00
sledgehammer999
91ec84b317 Merge pull request #2301 from pmzqla/checkuri-fix
WebUI: Specify URI size
2014-12-21 16:05:07 +02:00
sledgehammer999
db45d81f4c Merge pull request #2313 from glassez/cmdline
Improve command line parsing.
2014-12-21 15:57:22 +02:00
Vladimir Golovnev (Glassez)
5200999007 Improve command line parsing. 2014-12-21 16:29:01 +03:00
sledgehammer999
d888d4e897 Merge pull request #2046 from pmzqla/toolbar-menu
Allow minor toolbar customizations
2014-12-21 14:37:29 +02:00
Gabriele
0ebfea6c68 Add a context menu to the toolbar to change the position of the text
Closes #1145.
2014-12-21 13:27:45 +01:00
sledgehammer999
33fe829eb4 Merge pull request #2314 from glassez/daemon
Fix qbittorrent-nox daemon (discussed in #2300).
2014-12-21 13:51:09 +02:00
Vladimir Golovnev (Glassez)
1f110e9fb1 Fix qbittorrent-nox daemon. 2014-12-21 14:26:12 +03:00
Gabriele
442f45d42a Add texts to the icons on the toolbar
The toolbar follows the system style to display texts associated to
icons. Since no specific text is provided, the text used for the action
associated to the button will be used. This could make some of the
buttons rather big.

Add short texts to the icons so that each button uses a reasonable
amount of space.
2014-12-21 11:47:25 +01:00
sledgehammer999
6d6e3042c2 Merge pull request #2302 from buinsky/WebUI2
Accept multiple files at once. Closes #2253
2014-12-21 01:09:07 +02:00
buinsky
cb5b0f891c Accept multiple files at once. Closes #2253 2014-12-21 01:39:53 +03:00
sledgehammer999
bbd0dfb298 Merge pull request #2098 from DoumanAsh/int_search_combo
Add combo box for fast search engine switch
2014-12-20 21:56:52 +02:00
sledgehammer999
bea3a175fd Merge pull request #1549 from Gelmir/add_paused_rss
Support overriding global "Add paused" option in RSS on per rule basis
2014-12-20 20:05:24 +02:00
sledgehammer999
7b24157ce3 Merge pull request #2303 from Gelmir/gattrs
Normalize line endings
2014-12-20 19:59:03 +02:00
sledgehammer999
b46a0ea9b2 Use the 'fastest_upload' setting as seed choking algorithm. 2014-12-20 19:55:25 +02:00
buinsky
2d0099238a Follow project coding style. Issue #2192. 2014-12-20 20:53:58 +03:00
sledgehammer999
1110617896 Don't block peers that use privileged ports. 2014-12-20 19:48:54 +02:00
sledgehammer999
17c62bdd08 Fix incomplete commit 94ae9544d. Thanks @pmzqla for noticing and helping. 2014-12-20 19:31:38 +02:00
Nick Tiskov
385bbe0df6 Normalize EOL 2014-12-20 20:29:17 +03:00
Nick Tiskov
197c201269 Add .gitattributes 2014-12-20 20:26:26 +03:00
sledgehammer999
b5c00df107 Merge pull request #2309 from john-peterson/save3
saving properties window state when changed
2014-12-20 18:43:02 +02:00
John Sebastian Peterson
cbb8cbf052 saving properties window state when changed
to not lose it on an unclean exit
2014-12-20 17:09:35 +01:00
sledgehammer999
94ae9544d8 Fix 'Open Containing Folder' on unselected file. 2014-12-20 17:40:06 +02:00
sledgehammer999
7bc7b0e6b8 Merge pull request #2307 from pmzqla/webui-altspeed
WebUI: Alternative speed limits fixes
2014-12-20 16:56:53 +02:00
sledgehammer999
506d9caf09 Merge pull request #2296 from buinsky/master
WebUI: Set global upload max limit to 10000 KB/s
2014-12-20 16:52:58 +02:00
sledgehammer999
edba48a0b6 Merge pull request #2299 from glassez/webui_tr
WebUI: Improve translation macro.
2014-12-20 16:20:22 +02:00
sledgehammer999
6daaaa6b24 Merge pull request #2297 from pmzqla/filename-extension
Filename extension fixes
2014-12-20 15:47:42 +02:00
sledgehammer999
298bab7dd7 Use the configure script to prepare the build in Mac OSX too. Closes #2295. 2014-12-20 15:35:43 +02:00
sledgehammer999
ea2b650e7f Merge pull request #2293 from john-peterson/save2
saving splitter state on change
2014-12-20 15:12:03 +02:00
sledgehammer999
6c7eeb5c5b Merge pull request #2289 from glassez/fix_main
Improve program startup code.
2014-12-20 15:06:56 +02:00
Gabriele
fd86bafb38 WebUI: Be consistent with variable names 2014-12-19 17:34:52 +01:00
Gabriele
280aa95ef6 WebUI: Fix initial state of the alternative speed limits icon 2014-12-19 17:34:20 +01:00
Gabriele
a69515850c WebUI: Specify URI size
In some cases, args_ can't be empty. Specify the number of expected args.

Fix 2023ec043c ("WebUI: Check URI of GET and POST requests")
2014-12-19 17:09:36 +01:00
Vladimir Golovnev (Glassez)
48d4cf4f36 WebUI: Drop old translation hack. 2014-12-18 21:51:33 +03:00
Vladimir Golovnev (Glassez)
d80a14a2e1 WebUI: Improve translation macro.
Now we use QBT_TR(translatable string)QBT_TR.
2014-12-18 21:51:19 +03:00
Nick Tiskov
ef14b83134 Support overriding global "Add paused" option in RSS on per rule basis 2014-12-18 17:02:22 +03:00
sledgehammer999
f43d8f1139 Merge pull request #2292 from DoumanAsh/legit_torrents_small_fix
Small fix of import in legittorrents engine
2014-12-16 22:30:06 +02:00
Gabriele
e41de25919 Open files with ".!qB" appended to the filename
Filenames do not include ".!qB" in the file list, so the generated
path could be wrong.
2014-12-16 11:10:42 +01:00
Gabriele
301294fbff Remove unneeded check on filenames
The same check is performed in fsutils::fileExtension()
2014-12-16 11:10:04 +01:00
buinsky
9d51dcb663 WebUI: Set global upload max limit to 10000 KB/s 2014-12-16 05:01:55 +03:00
John Sebastian Peterson
e76ccd5926 saving splitter state on change
to not lose it on unclean exit
2014-12-15 23:26:44 +01:00
DoumanAsh
e357cf6231 Add combo box for fast search engine switch 2014-12-16 01:19:31 +03:00
DoumanAsh
722f1aaee8 Small fix of import in legittorrents engine 2014-12-16 01:19:19 +03:00
sledgehammer999
159f5dc06d Merge pull request #2291 from DoumanAsh/vertor_remove
Remove vertor engine. Closes #2260.
2014-12-15 22:57:09 +02:00
Vladimir Golovnev (Glassez)
96727f3206 Use forward declarations in main.cpp. 2014-12-15 21:43:01 +03:00
DoumanAsh
3b4548fe73 Remove vertor engine. Closes #2260.
Reason: tracker is closed and redirect to TorrentReactor
2014-12-15 21:01:41 +03:00
sledgehammer999
cac63e85e9 Merge pull request #2290 from john-peterson/save
saving torrent list view when changed
2014-12-15 17:25:49 +02:00
John Sebastian Peterson
5cab5bd129 saving torrent list view when changed
bc its otherwise forgotten by an unclean exit
2014-12-15 16:12:13 +01:00
sledgehammer999
ba054f34c8 Merge pull request #2172 from sorokin/fix-space-key
Implement sane behavior of space key in torrent content list. Closes #140.
2014-12-15 17:09:56 +02:00
Vladimir Golovnev (Glassez)
ede6715e72 Simplify main() logic.
Add Application class.
Put application initialization code to Application class.
Place some code into separate functions.
2014-12-15 17:24:31 +03:00
sledgehammer999
3d7ca1da77 Merge pull request #2284 from pmzqla/webui-features
WebUI changes
2014-12-14 23:18:58 +02:00
Gabriele
3be4257ad9 WebUI: MochaUI: Use same cursors on Gecko and WebKit 2014-12-14 21:26:39 +01:00
Gabriele
76999b598c WebUI: Prevent default action of links
This prevents anchors from being added to the URL.
2014-12-14 21:26:39 +01:00
Gabriele
2023ec043c WebUI: Check URI of GET and POST requests 2014-12-14 21:26:39 +01:00
Gabriele
e4da128fbb WebUI: Check that all and only the needed parameters are provided
Issue #1560.
2014-12-14 21:24:37 +01:00
Gabriele
f89baa4cf5 WebUI: Use case insensitive parameters for POST requests 2014-12-14 21:24:37 +01:00
Gabriele
6211a9855a WebUI: Assign min width to speed limit labels
Try to prevent continuous changes in the width of the labels.
2014-12-14 21:24:37 +01:00
Gabriele
2c930862c5 WebUI: Align elements in footer 2014-12-14 21:24:37 +01:00
Gabriele
f45e48c32a WebUI: Show connection status in the statusbar 2014-12-14 21:24:32 +01:00
Gabriele
f1477319ef WebUI: Show DHT nodes in the statubar 2014-12-14 20:16:44 +01:00
Gabriele
2aa344bb0a WebUI: Add missing comments 2014-12-14 16:20:37 +01:00
Gabriele
accfbdd304 WebUI: Use translated strings for speed limits dialogue 2014-12-14 16:20:37 +01:00
Gabriele
c53b19d6c1 WebUI: Allow to control the alternative speed limits
setGlobalDownloadLimit and setGlobalUploadLimit will now modify the
alternative speed limits if they are currently enabled and the regular
speed limits otherwise.

Add also two new commands to toggle the state of the alternative speed
limits and get their current state.

Closes #2203.
2014-12-14 16:20:37 +01:00
Gabriele
25e8cad16c WebUI: Update transfer info when speed limits are changed 2014-12-14 16:20:37 +01:00
Gabriele
b3a537f575 WebUI: Don't cache transfer info values
In this way speed limits are instantly updated.
2014-12-14 16:20:37 +01:00
Gabriele
9bd24a1408 Follow project coding style. Issue #2192. 2014-12-14 16:20:37 +01:00
Gabriele
16dcf39823 WebUI: Use relative sizes when saving panel height
This should prevent situations in which the properties panel completely
covers the transferlist on page load.

Save also the height whenever the window is resized since that changes
the height of the panels without saving the height.
2014-12-14 16:20:37 +01:00
Gabriele
95bf2ffc51 WebUI: Define some functions on load
These function shouldn't be called when the page is not loaded yet,
so it makes sense to define them later.
2014-12-14 16:20:37 +01:00
Gabriele
f740a4f30b WebUI: Make transfer info look like in the regular UI
The string for the transfer info was not translated as it should have.
Drop it completely.
2014-12-14 16:20:37 +01:00
Gabriele
e9d5a76d9c WebUI: Never show scrollbars in rate limits dialogue
A different DPI setting might make the elements in the dialogue big
enough to make the scrollbars appear, but not big enough to make them
useful. So, never show them.
2014-12-14 16:20:36 +01:00
Gabriele
f775e68666 WebUI: Use correct max ratio value
Closes #183.
2014-12-14 16:20:22 +01:00
sledgehammer999
50492902aa Merge pull request #2283 from pmzqla/speed-limits
Alternative speed limits changes
2014-12-14 16:44:48 +02:00
Gabriele
d202a59671 Don't forget alternative speed limits changes 2014-12-14 11:47:20 +01:00
Gabriele
9b5fea1987 Don't put limits to the alternative speed limits 2014-12-14 11:47:08 +01:00
sledgehammer999
47e7b3fac2 Merge pull request #2277 from buinsky/master
Some changes in WebUI
2014-12-14 02:11:46 +02:00
buinsky
98deac97a0 Precise setting of upload/download limits 2014-12-14 00:58:37 +03:00
buinsky
c95e181378 Disable flooding debug messages 2014-12-14 00:58:35 +03:00
buinsky
364e4277ec Show upload and download limits in status bar 2014-12-14 00:58:18 +03:00
Vladimir Golovnev (Glassez)
1fcca6f434 Fix main.cpp indentation. Issue #2192. 2014-12-13 20:22:35 +03:00
Vladimir Golovnev (Glassez)
ebd71bbe4c Avoid unnecessary classes creation. 2014-12-13 19:42:11 +03:00
sledgehammer999
4665dd6ea2 Run lupdate. 2014-12-13 16:17:16 +02:00
sledgehammer999
11ef0f8729 Correct RSS tooltip text from 18e0d122fb. 2014-12-13 16:14:13 +02:00
sledgehammer999
45313040d0 Run lupdate. 2014-12-13 15:50:54 +02:00
sledgehammer999
7f7aaabec1 Add better translation notes for some strings. 2014-12-13 15:49:50 +02:00
sledgehammer999
c0ecaa6f58 Merge pull request #2274 from pmzqla/headless-password
headless: Update default password hash
2014-12-13 13:05:45 +02:00
sledgehammer999
7be2291f3f Merge pull request #2276 from pmzqla/valign
Vertical align right-aligned elements of the transfer list
2014-12-13 13:05:23 +02:00
buinsky
1b4dad214a Fix setting session id 2014-12-13 01:29:59 +03:00
Gabriele
04d2deabb5 Vertical align right-aligned elements of the transfer list
Same as d19b7a777f ("Vertical align right-aligned header text")
2014-12-12 21:23:12 +01:00
Gabriele
9a534f62d5 headless: Update default password hash
Use the md5 of 'adminadmin'.
2014-12-12 15:26:40 +01:00
sledgehammer999
861c8e9ffa Merge pull request #2262 from pmzqla/webui-changes
WebUI: Misc changes
2014-12-12 00:55:05 +02:00
Gabriele
7a58a3fe43 WebUI: Ensure that no concurrent timers exist 2014-12-11 22:05:40 +01:00
Gabriele
fdc975d900 WebUI: Add readonly attribute to comment textarea
Torrent comments should not be editable.
2014-12-11 00:02:11 +01:00
Gabriele
005e378cbd WebUI: Don't change cursor style for the file list
Changing the cursor is misleading, no operation can be done.
2014-12-11 00:02:11 +01:00
Gabriele
1332ca318b WebUI: Adjust size of columns in property panels 2014-12-11 00:02:11 +01:00
Gabriele
b46ecb4351 WebUI: Decrease frequency of updates of property panel
Now that the properties are loaded immediately when the selected torrent
or the property tab is changed, the frequency of the updates can be
reduced without affecting the user experience.

New update intervals:
 * General: 5 seconds (10 if qBT is not reachable)
 * Tracker list: 10 seconds (20 if qBT is not reachable)
 * File list: 5 seconds (10 if qBT is not reachable)
2014-12-11 00:02:11 +01:00
Gabriele
ac507261f8 WebUI: Remove extra parethesis 2014-12-11 00:02:11 +01:00
Gabriele
408cc7101e WebUI: Update torrent properties immediately
Don't wait for new data to be fetched, request them as soon as
they are required, i.e. when a property tab is loaded or when a
different torrent is selected.
2014-12-11 00:02:09 +01:00
Gabriele
c54271638b WebUI: Load properties tabs once
Don't reload HTML on tab change. Load the entire structure once and
keep the unused bits hidden.

Keep also the JS code separately, one file per tab.

NOTE: tabs content is not loaded. This will be fixed in the next commit.
2014-12-11 00:00:35 +01:00
Gabriele
cb9ed13d69 WebUI: Fix minor error
No timer is set when the functions are directly called.
2014-12-11 00:00:35 +01:00
Gabriele
d06d7b1f6d WebUI: MochaUI: Show entire error message 2014-12-11 00:00:35 +01:00
Gabriele
aded5422d8 WebUI: MochaUI: Check for undefined functions 2014-12-11 00:00:35 +01:00
sledgehammer999
6884845446 Ensure that the priority column has enough width when queueing is enabled. Closes #2263. 2014-12-11 00:04:33 +02:00
Gabriele
d055613125 WebUI: Make column width less variable in transferlist
Each column has a fixed width that allows to read its content.
The column for the name of the torrents has a variable width with an
upper and a lower constraint.

If the width of the page is not sufficient to fit the table, a scrollbar
will appear.
2014-12-10 21:56:37 +01:00
Gabriele
5fb32da49f WebUI: Center progressbars in trasferlist 2014-12-10 21:56:33 +01:00
Gabriele
0a512e41c9 WebUI: Select username on login page load
On logout, the input field is not empty. Select its content.
2014-12-10 21:56:27 +01:00
Gabriele
57e9165bb4 WebUI: Translate page title everywhere 2014-12-10 21:56:06 +01:00
sledgehammer999
1820a03f1d Merge pull request #2254 from buinsky/master
WebUI: Some changes
2014-12-10 22:50:35 +02:00
sledgehammer999
7e16094ac6 Merge pull request #2268 from pmzqla/file-ext
Ignore .!qB when extracting file extensions
2014-12-10 22:19:20 +02:00
buinsky
2c93330ce9 Add space before priority menu item 2014-12-10 06:45:24 +03:00
buinsky
76e30ecf78 Dynamically show 'Start' and 'Pause' menu items 2014-12-10 06:44:41 +03:00
buinsky
2a712a81ea Add sequential downloading menu items 2014-12-10 04:50:39 +03:00
buinsky
6644791458 Follow project coding style. Issue #2192. 2014-12-10 04:50:21 +03:00
buinsky
44992056cf Restore selected filter on page load 2014-12-09 23:49:11 +03:00
buinsky
5b604ac251 Save torrent list sort order in local storage 2014-12-09 23:49:09 +03:00
buinsky
b4f39add08 Update torrent list after operations with torrents.
Immediately update torrent list after some operations with torrents.
Such as changing priority, adding torrent, pause/resume, etc.
2014-12-09 23:49:07 +03:00
buinsky
e8ad465c5f Follow project coding style. Issue #2192. 2014-12-09 23:49:05 +03:00
buinsky
57a4f3ed19 Hide priority menu items when queueing is disabled 2014-12-09 23:48:45 +03:00
Gabriele
2389495d96 Ignore .!qB when extracting file extensions 2014-12-09 21:32:26 +01:00
alxpl
9e181e2e3d Create qBittorrent.appdata.xml
fixes #1701

An appdata file for inclusion in the upcoming software centers as per the new freedesktop.org specs.

It should be placed in /usr/share/appdata/ similar to the way .desktop files are placed in /usr/share/applications/, e.g. if you have a "$(datadir)/applications" definition in your makefiles, you need to add a "$(datadir)/appdata" as well.

Please, skim through the file in case I made a mistake and please, include it in the 3.1.x branch as well.
Of course you are free to modify it as you see fit, e.g. change the license, change copyright info, use your own screenshots, etc., just make sure it passes validation.

Thanks!

http://people.freedesktop.org/~hughsient/appdata/
http://www.freedesktop.org/software/appstream/docs/chap-Quickstart.html
2014-12-08 00:01:40 +02:00
buinsky
28fad54cc4 Add higest and lowest priority icons into toolbar 2014-12-08 00:33:38 +03:00
buinsky
69506ec505 Follow project coding style. Issue #2192. 2014-12-08 00:14:55 +03:00
buinsky
ba40408c8d Images cache control code edit 2014-12-07 23:50:06 +03:00
buinsky
dbc5ffee75 Follow project coding style. Issue #2192. 2014-12-07 23:33:36 +03:00
sledgehammer999
513f71e000 Sync translations from Transifex and run lupdate. 2014-12-07 22:01:37 +02:00
sledgehammer999
dcfe95f04b Merge pull request #2224 from pmzqla/webui-updates
WebUI changes
2014-12-07 17:23:54 +02:00
Gabriele
0b6d5c662a WebUI: Use CSS to alternate row colors in transferlist
Keep the old code for IE < 9, the majority of the browsers
shouldn't need it.

Also, keep the CSS code in one place.
2014-12-07 15:53:33 +01:00
Gabriele
8a4028fc84 WebUI: Remove unused variable 2014-12-07 15:53:33 +01:00
Gabriele
d7071a81bd WebUI: Keep current preference for the title style in a variable
Read persistent value only when required.
2014-12-07 15:53:33 +01:00
Gabriele
6ee1c8851f WebUI: Update title immediately when showing/hiding rates 2014-12-07 15:53:33 +01:00
Gabriele
2226f166ac WebUI: Fix increasing frequency of XHR requests
ajaxfn() is called every time the torrent list is filtered. This function
calls itself after a predefined amount of time by setting a timer. If
the function is called manually without destroying the timer, the
frequency of the XHR requests will increase.

Fix this by saving a reference to each timer that is created so that
they can be later destroyed.

Add also two helper functions to request updated data safely.
2014-12-07 15:53:33 +01:00
Gabriele
aab2c34257 Follow project coding style. Issue #2192. 2014-12-07 15:53:28 +01:00
sledgehammer999
3672363207 Merge pull request #2191 from glassez/webui
WebUI: Implement server-side filtering, sorting and limit/offset.
2014-12-07 15:42:01 +02:00
sledgehammer999
14d27d982d Fix compilation with libtorrent 0.16.x. 2014-12-07 15:28:55 +02:00
Vladimir Golovnev (Glassez)
0e87b96beb WebUI: Drop client-side sorting. 2014-12-07 16:28:03 +03:00
Vladimir Golovnev (Glassez)
e279dcf904 WebUI: Implement limit/offset. 2014-12-07 16:28:01 +03:00
Vladimir Golovnev (Glassez)
59ff08c107 WebUI: Implement server-side sorting. 2014-12-07 16:27:59 +03:00
Vladimir Golovnev (Glassez)
8ff03d162d WebUI: Fix transferlist.html indentation. 2014-12-07 16:27:56 +03:00
Vladimir Golovnev (Glassez)
d938643c38 WebUI: Drop client-side filtering. 2014-12-07 16:27:54 +03:00
Vladimir Golovnev (Glassez)
0488ddafa5 WebUI: Fix indentation.
Fix indentation in client.js and dynamicTable.js.
2014-12-07 16:25:52 +03:00
Vladimir Golovnev (Glassez)
1a1db877bf Use QTorrentHandle::torrentState() in btjson. 2014-12-07 16:13:39 +03:00
Vladimir Golovnev (Glassez)
5edf0e251f WebUI: Implement server-side torrent filtering. 2014-12-07 16:13:37 +03:00
Vladimir Golovnev (Glassez)
e887f574d7 Implement QTorrentHandle torrentState() and eta(). 2014-12-07 16:13:33 +03:00
Vladimir Golovnev (Glassez)
c24610ec80 WebUI: Improve btjson.* indentation. 2014-12-07 16:13:32 +03:00
sledgehammer999
78d4258dac Remove unused variable. 2014-12-07 15:09:56 +02:00
sledgehammer999
cd52d1820d Show reason why a peer was blocked. Needs libtorrent 1.0.x. 2014-12-07 15:09:16 +02:00
sledgehammer999
96ec6777e6 Follow project coding style. Issue #2192. 2014-12-07 12:11:18 +02:00
sledgehammer999
08f96ae7d7 Save RSS cache in folder called rss. 2014-12-07 11:54:09 +02:00
sledgehammer999
e331850b70 Merge pull request #1147 from maxrd2/rss_text
RSS Feed plain text description is not formatted.
2014-12-07 11:47:26 +02:00
sledgehammer999
7736415945 Merge pull request #1122 from maxrd2/rss_html
RSS Feed was not displaying remote images in html description.
2014-12-07 11:46:41 +02:00
Mladen Milinkovic
2c6df559e8 RSS Feed was not displaying remote images in html description. Closes #1119 2014-12-07 01:36:44 +01:00
Mladen Milinkovic
195b46673a RSS Feed will format plain text descriptions 2014-12-07 01:31:18 +01:00
sledgehammer999
f8e25984ae Fix for commit 35e964f66. 2014-12-07 01:39:49 +02:00
sledgehammer999
8449203b27 Add info about the proxy password being saved unencrypted. Closes #1490. 2014-12-06 21:05:34 +02:00
sledgehammer999
734301326b Rearreange header includes in Peerlist widget. 2014-12-06 19:24:07 +02:00
sledgehammer999
35e964f66d Implement peer relevance column. Closes #1630. 2014-12-06 19:07:26 +02:00
sledgehammer999
dc04ff511f Merge pull request #1546 from Gelmir/add_paused
Partially revert 14310f9b05
2014-12-06 17:04:13 +02:00
sledgehammer999
541cc4db24 Merge pull request #2242 from pmzqla/webui-password
Don't overwrite WebUI password when changing preferences
2014-12-05 12:12:41 +02:00
Gabriele
ef0b4c6ee2 Don't overwrite WebUI password when changing preferences
The input field to change password does not contain the actual
password, but its hash. When the preferences are saved, the hashed
password is considered as a new password.
Prevent this by comparing the new password with the hash of the
previous password.

Closes #2241.
2014-12-04 19:09:28 +01:00
sledgehammer999
60bc22119d Update Changelog. 2014-12-03 02:07:52 +02:00
sledgehammer999
da9396ca94 Fix compilation on ARM. Closes #2204. 2014-12-02 14:32:47 +02:00
sledgehammer999
8882895f5e Merge pull request #2230 from pmzqla/searchengine-kat
searchengine: Update KickassTorrents url
2014-12-02 11:28:39 +02:00
sledgehammer999
d24b67f77b Merge pull request #2229 from pmzqla/vertical-align
Vertical align right-aligned header text
2014-12-02 11:27:51 +02:00
Gabriele
ad949c69b5 searchengine: Update KickassTorrents url
Closes #2228.
2014-12-02 00:17:07 +01:00
Gabriele
d19b7a777f Vertical align right-aligned header text
Since e907306b41 ("Right align header text that also has right-aligned
row text"), right-aligned elements are no longer centered vertically.
This can be noticed with some Qt styles (e.g. Breeze).
2014-12-01 23:04:24 +01:00
Nick Tiskov
9a87afb562 Use TorrentTempData for overriding "add torrents paused" functionality 2014-11-30 20:20:38 +03:00
sledgehammer999
f5048a4586 Merge pull request #2201 from buinsky/master
WebUI: Some changes
2014-11-30 15:11:29 +02:00
sledgehammer999
e5e22eb925 Fix the language selection in the combobox when the system locale only has a lang equivalent and not a lang_COUNTRY one. Closes #1786. 2014-11-30 15:07:43 +02:00
buinsky
740617e5ce Use localStorage instead of cookies 2014-11-30 12:44:33 +03:00
buinsky
5e8c62e539 Add "Speed in title bar" item to menu
* file: src/Icons/oxygen/checked.png
  copyright: Victor Buinsky <allok.victor@gmail.com>
2014-11-30 10:39:27 +03:00
buinsky
b0e138d669 Set images cache expiry time to 300000 seconds 2014-11-30 10:30:20 +03:00
buinsky
632fd84e54 Fix context menu width 2014-11-30 10:30:02 +03:00
buinsky
39e135e40a Fix menu width 2014-11-30 10:27:33 +03:00
sledgehammer999
5d79fcdafd WINDOWS: Fix automatic python download. Commit 0799dc2 broke this. Closes #2076. 2014-11-30 00:34:25 +02:00
sledgehammer999
575125485e Enable backtrace support for mingw builds too. 2014-11-29 23:15:04 +02:00
sledgehammer999
f88ceed2b6 Let Qt decide the size of the statusbar. 2014-11-29 23:13:33 +02:00
sledgehammer999
9d548814a3 Resize and crop the icons used in the status bar. 2014-11-29 23:13:21 +02:00
sledgehammer999
12cd143f75 Merge pull request #2061 from pmzqla/speed-indicators
Show current speed limits in the status bar
2014-11-29 23:11:49 +02:00
sledgehammer999
6c0b74b94b Merge pull request #2214 from Gelmir/trace
Fix backtrace functionality under MinGW
2014-11-29 16:50:06 +02:00
Nick Tiskov
2df2b6f4eb Always disable ASLR for debug builds - otherwise debugging will fail 2014-11-29 16:40:23 +03:00
Nick Tiskov
6bab65e5b4 Produce demangled backtraces under MinGW 2014-11-29 16:40:18 +03:00
sledgehammer999
9e6a4da542 Merge pull request #2210 from alfrix/gui_fix
GUI: Streamline Properties Widget. Closes #2159
2014-11-29 15:35:21 +02:00
Nick Tiskov
2dd3d1fb22 Fix indentation for long addresses and filenames 2014-11-29 16:17:37 +03:00
Nick Tiskov
cb60519c44 Fix backtrace generation on Mingw: to resolve local functions we need to export them 2014-11-29 16:17:36 +03:00
Nick Tiskov
ba9f6a3531 Follow project coding style. Issue #2192. 2014-11-29 16:17:32 +03:00
sledgehammer999
0689a1735d Merge pull request #2206 from alfrix/prio_buttons
Add top and bottom priority hotkeys and buttons to menu and toolbar
2014-11-29 15:16:26 +02:00
sledgehammer999
b9ce4d48a0 Merge pull request #802 from Gelmir/rss_match_time_limit
Add setting to ignore RSS rule matches for X days
2014-11-29 12:56:25 +02:00
Alfredo Monclus
d28ca2eddc Add hotkeys and buttons for Top and Bottom priorities 2014-11-26 19:41:29 -03:00
Alfredo Monclus
7314c57852 GUI: Streamline Properties Widget. Closes #2159
Merge select buttons and filtering into one line
2014-11-26 18:48:12 -03:00
sledgehammer999
9d79e7679a Fix configure message printing order. 2014-11-26 15:28:07 +02:00
sledgehammer999
f46a7c1d3f Fix detection of Qt5. 2014-11-26 15:26:12 +02:00
sledgehammer999
17f56a7744 Update coding style. Closes #2091. 2014-11-26 15:10:43 +02:00
sledgehammer999
ecf3dd123e Don't display weird text in the 'Last Activity' column when the time is invalid. 2014-11-26 14:51:52 +02:00
sledgehammer999
e907306b41 Right align header text that also has right-aligned row text. Closes #2188. 2014-11-26 14:40:15 +02:00
sledgehammer999
f61675d98a Merge pull request #2207 from pmzqla/rss-rules
Fix RSS "OR" condition in "must not contain" rules.
2014-11-26 13:37:16 +02:00
sledgehammer999
ed829bc93a Revert "Temporarily disable Travis CI tests against libtorrent 1.0.x until #1878 is resolved."
This reverts commit 7029f4dcd2.
2014-11-26 02:19:49 +02:00
sledgehammer999
89726d4566 Remove useless includes. 2014-11-26 02:19:48 +02:00
sledgehammer999
a8766058f3 Use parse_magnet_uri() where possible. 2014-11-26 02:19:47 +02:00
sledgehammer999
f413e8b121 Stop using internal libtorrent API. Closes #2202. 2014-11-26 02:19:46 +02:00
sledgehammer999
cbbf14b0f8 Follow project coding style. Issue #2192. 2014-11-26 02:19:44 +02:00
Nick Tiskov
806a4a2e6a Add setting to ignore RSS rule matches for X days 2014-11-26 01:55:25 +03:00
Gabriele
c6dbe8ea60 Don't use white spaces as separator in RSS "must not contain" rules
This RegExp uses both white spaces and | as separator.
Use only the latter and drop the RegExp as it is no longer required.
2014-11-25 19:38:18 +01:00
Gabriele
5dede9e433 Use correct separator for "OR" condition in RSS rules
Although RSS rules were correctly parsed, the wrong separator for the
"OR" condition was used to re-generate the string of the rule displayed
in the preferences.

Closes #2205.
2014-11-25 19:19:20 +01:00
sledgehammer999
060d3fc5b9 Merge pull request #2153 from pmzqla/webui-versioninfo
WebUI: Allow to retrieve web API version and qBT version
2014-11-23 22:07:59 +02:00
sledgehammer999
8ce91e153d Merge pull request #2125 from buinsky/master
WEBUI: Some fixes
2014-11-23 21:54:42 +02:00
sledgehammer999
202e816d08 Use VERSION_BUILD where possible. Revert a change from previous commit. 2014-11-23 20:59:30 +02:00
sledgehammer999
6a2c82fe72 Merge pull request #2189 from glassez/version
Improve version.pri to set a version number only in one place.
2014-11-23 20:58:39 +02:00
sledgehammer999
950574c4c5 Make configure detect qmake with different names. Closes #1924. 2014-11-23 20:24:57 +02:00
sledgehammer999
3008d12c3c Try to fix FreeBSD detection with configure. 2014-11-23 20:04:54 +02:00
sledgehammer999
09c9968210 Fix QtBus detection with configure. 2014-11-23 19:59:47 +02:00
sledgehammer999
112dd20395 Make configure search for sed. 2014-11-23 19:59:27 +02:00
sledgehammer999
441f63d9af LINUX: Fix build with libtorrent 1.0.x. Closes #1878. 2014-11-23 19:43:14 +02:00
buinsky
2275735b81 Change of number of decimal places to 1
Change of number of decimal places to 1 in speed and size values.
2014-11-23 16:53:41 +03:00
buinsky
b2876b7f66 Show speed in title 2014-11-23 16:38:52 +03:00
Gabriele
d6169b14dd WebUI: Allow to retrieve qBittorrent version
New GET method:
 * version/qbittorrent: qBittorrent version

Closes #1872.
2014-11-22 20:47:32 +01:00
Gabriele
8b5512c244 WebUI: Assign a version to the Web API and allow to get it
New GET methods:
 * version/api: current API version
 * version/api_min: min API version supported

The API version is an integer and it's returned as plain text.

Whenever the API is changed, the api version is increased.

Whenever the API is changed in a way that is not backward compatible,
api_min is increased.
2014-11-22 20:47:32 +01:00
Gabriele
1154ea3873 Change indentation to 4 spaces. Issue #2192. 2014-11-22 20:47:32 +01:00
Vladimir Golovnev (Glassez)
103ee6d7d9 Improve version.pri.
Now you can set a version number only in one place.
2014-11-22 22:27:00 +03:00
buinsky
f44f676729 Update priority icons
Update priority icons
2014-11-20 17:26:38 +03:00
buinsky
5cc90844a5 Fixing setting speed limit of torrent in WEBUI
Fixing setting speed limit of torrent in WEBUI when global speed limit
is not set.
2014-11-20 17:26:36 +03:00
sledgehammer999
d6f309b7a6 Merge pull request #2177 from pmzqla/open-select
Implement open and select file in file manager [Linux]
2014-11-16 23:19:12 +02:00
Gabriele
0b14860e40 Implement open and select file in file manager [Linux]
Only few file managers are able to select files when started from the
command line.

xdg-mime is required to retrieve the default file manager. If it's not
available or the file manager is not able to automatically select files,
the containing directory will be opened as usual.
2014-11-16 21:28:30 +01:00
sledgehammer999
8f9c7b79ed Fix nox compilation. 2014-11-16 22:28:28 +02:00
sledgehammer999
f35e06540e Load torrents that have big metadata file. Closes #1889. 2014-11-16 21:25:53 +02:00
sledgehammer999
0adb9fcbce Escape backslashes. Issue #800. 2014-11-16 20:58:43 +02:00
sledgehammer999
bba8e18812 Merge pull request #744 from Gelmir/open_select
[Windows] Implement open & select file in file manager
2014-11-16 20:44:22 +02:00
Nick Tiskov
be99c45944 Fix opening of samba shares 2014-11-16 21:03:56 +03:00
Nick Tiskov
997b16a24a Implement open & select file in file manager [Windows only] 2014-11-16 21:03:51 +03:00
sledgehammer999
7dd4e4aca8 Merge pull request #2174 from sorokin/fix-empty-combobox
Fix emptying of 'piece size' combobox when user enable 'auto' checkbox and no files are selected
2014-11-16 18:15:06 +02:00
sledgehammer999
f12dc7ca36 Merge pull request #2173 from sorokin/placeholder-text-torrent-list
Set placeholder text to torrent content filter.
2014-11-16 18:02:55 +02:00
Ivan Sorokin
98a900e67d Fix emptying of piece size combobox when user checks "auto" checkbox.
The function computePathSize returns -1 if file isn't found, not 0.
2014-11-16 18:33:31 +03:00
Ivan Sorokin
376df3218d Set piece size to (max) 4Mb instead of empty string when created torrent
is very large.
2014-11-16 18:33:31 +03:00
sledgehammer999
e0d6e609e3 Documenting the project's coding guidelines. Closes #2091. 2014-11-16 17:25:58 +02:00
Ivan Sorokin
6780791d60 Set placeholder text to torrent content filter.
In commit afb03725ad it was implemented
for torrent list filter. Now it is here for files filter.
2014-11-16 18:09:38 +03:00
Ivan Sorokin
97d08a5b2f Implement sane behavior of space key in torrent content list. Closes #140.
Definitions:

Selection in QTreeView consist of two things:

   currentIndex -- is a (dotted) cell where user clicked last time. Note
                   that it is a cell
   selectedIndexes -- is a set of cells (blue) of current selection.

Checkboxes in torrent content lists are belong to COL_NAME column.

Problem:

The problem is that spacebar toggled checkbox only in currentIndex
index. This has two consequences:

  1. It is impossible to toggle checkboxes on multiple rows
     simultaneously.
  2. If currentIndex is not in COL_NAME column a space key doesn't work
     at all. This problem is amplifyed by the fact that SelectionBehavior
     is set to SelectRows. So visually it is impossible to tell which
     column does it belong to. For end user it looks like "space doesn't
     work sometimes".

This patch addresses the problem by implementing TorrentContentTreeView
derived from QTreeView and overridding keyPressEvent(QKeyEvent*).

The code of TorrentContentTreeView::keyPressEvent is written under
inspiration from QAbstractItemView::keyPressEvent and
QItemDelegate::editorEvent.
2014-11-16 17:19:04 +03:00
sledgehammer999
9088b1af84 Merge pull request #800 from Gelmir/smart_ep
Implement episode filter for rss downloader
2014-11-16 14:48:56 +02:00
sledgehammer999
ae1cecca2f Merge pull request #2163 from sorokin/optimize-prioritize-files
Reduce the number of torrent_handle::torrent_file() calls in QTorrentHandle::prioritize_files()
2014-11-16 13:39:36 +02:00
Ivan Sorokin
404c8972af Reduce the number of torrent_handle::torrent_file() calls in QTorrentHandle::prioritize_files(). Closes #2161.
It was reported (#2161) that enabling/disabling a downloading of a file
is considerably slow on libtorrent 1.0.3, but not on 0.16.x. The problem
is that a function torrent_file() in libttorrent 1.0.3 does a deep copy
of torrent_info, while get_torrent_info() in libtorrent 0.16.x only
returns a reference.
2014-11-16 03:37:51 +03:00
sledgehammer999
150a401632 Merge pull request #2156 from jleclanche/master
Fix configure script when running with dash
2014-11-12 18:04:46 +02:00
Jerome Leclanche
5a3927a22d Fix configure script when running with dash
`test 1 == 1` will fail using dash as the default shell. The `test 1 = 1`
syntax works in both Bash and Dash.
2014-11-12 14:54:07 +01:00
Nick Tiskov
60c4306502 Fix missing icon for open action in file list 2014-11-12 11:51:09 +03:00
Nick Tiskov
18e0d122fb Add tooltip to episode filter text edit 2014-11-12 11:50:43 +03:00
Nick Tiskov
0564ceea9f Implement episode filter for rss downloader 2014-11-12 11:50:42 +03:00
sledgehammer999
e8bec885cb Merge pull request #2145 from pmzqla/webui
Make Web API locale independent
2014-11-12 00:32:00 +02:00
Gabriele
b4acb2ef52 Use localeCompare to sort torrent list by name 2014-11-10 13:57:01 +01:00
Gabriele
ed83070517 Use raw data to sort columns
Store the raw data retrieved in a new data-raw attribute and use
these to sort the columns.

In addition, make the ETA column sortable.
2014-11-10 13:57:01 +01:00
Gabriele
ec592f8175 Remove unneeded parameters from helper functions for WebUI 2014-11-10 13:57:01 +01:00
Gabriele
aedf579d77 WebUI: make API locale independet
Sizes are now given in bytes.
Dates are Unix timestamps and converted to ISO 8601 in the web UI.
Numbers are not converted to strings.
-1 is returned for undefined values.

Some keys have been splitted:

Torrent list (json/torrents)
 * num_seeds: Torrent seeds connected to
 * num_complete: Torrent seeds in the swarm
 * num_leechs: Torrent leechers connected to
 * num_incomplete: Torrent leechers in the swarm

Torrent generic properties (propertiesGeneral/hash)
 * total_uploaded: Total data uploaded
 * total_uploaded_session: Total data uploaded this session
 * total_downloaded: Total data dowloaded
 * total_downloaded_session: Total data downloaded this session
 * time_elapsed: Torrent elapsed time
 * seeding_time: Torrent elapsed time while complete
 * nb_connections: Torrent connection count
 * nb_connections_limit: Torrent connection count limit

Global transfer info (json/transferInfo)
 * dl_info_speed: Global downalod rate
 * dl_info_data: Data downloaded this session
 * up_info_speed: Global upload rate
 * up_info_data: Data uploaded this session

Closes #1524.
2014-11-10 13:57:01 +01:00
Gabriele
8cc7a3573e Show current speed limits in the status bar
Closes #1316.
2014-11-09 23:00:45 +01:00
Gabriele
f46e660679 Adjust the size of the elements in the statusbar
Use the same height for all the elements and try to prevent
variations of the speed labels.
2014-11-09 23:00:45 +01:00
sledgehammer999
d642ddc795 Merge pull request #2150 from pmzqla/webui-fix
WebUI: Don't empty transfer list before updating it
2014-11-09 23:02:32 +02:00
Gabriele
09fde676ae WebUI: Don't empty transfer list before updating it
This causes the list from disappearing in IE 10.
No longer needed table rows are deleted anyway.
2014-11-09 21:19:38 +01:00
sledgehammer999
4dbc235c70 Use rgb values to match colors before commit ad116e. Taken from qcolor_p.cpp. 2014-11-09 13:59:36 +02:00
sledgehammer999
6d64f2430c Merge pull request #2140 from sorokin/fix-torrent-removal
Fix torrent removal. Closes #2132
2014-11-09 13:09:38 +02:00
sledgehammer999
9d770ea48b Merge pull request #2144 from sorokin/up-down-scrolling
Speed up scrolling with up/down keys
2014-11-09 13:07:00 +02:00
sledgehammer999
21139f9d29 Merge pull request #2142 from sorokin/repaint
Misc changes in TorrentModel and TransferListWidget
2014-11-09 13:06:39 +02:00
Ivan Sorokin
5986c1dbc9 Cache QRegExp in misc::parseHtmlLinks()
This commit should improve performance when user navigating through
torrent list using up/down keys. A scrolling through all the list
(276 torrents) took:

    Total wall time:                            18.813s
    Total CPU time:                              3.210s
    misc::parseHtmlLinks():                      0.096s

misc::parseHtmlLinks() is 8th most hottest function on
this use case.
2014-11-09 12:57:14 +03:00
Ivan Sorokin
9023232653 Cache icons in TorrentContentModel
This commit caches icons in TorrentContentModel in the same way they are
cached in TorrentModel.

This commit should improve performance when user navigating through
torrent list using up/down keys. A scrolling through all the list
(276 torrents) took:

    Total wall time:                            18.813s
    Total CPU time:                              3.210s
    IconProvider::generateDifferentSizes():      0.170s

IconProvider::generateDifferentSizes is 5th most hottest function on
this use case.
2014-11-09 12:57:14 +03:00
Ivan Sorokin
976982ba09 Now user-created labels "all" and "none" works as regular labels 2014-11-09 03:59:49 +03:00
Ivan Sorokin
f235c0ae6c Merge label filter into TransferListSortModel
This also fixes a bug that when label filter contains special symbols
from regex, the label filter may match torrents with multiple different
labels.
2014-11-09 03:58:50 +03:00
Ivan Sorokin
8bafc5e216 Merge StatusSortFilterProxyModel into TransferListSortModel
I thought merging all 3 sort-filter proxy models into one should
speedup dataChanged() signal. As turned out this is not the case. The
time difference is within inaccuracy range, so this doesn't affect
performance.

But I still think it is good to merge them into one proxy model as it
simplifies code.
2014-11-09 03:58:50 +03:00
Ivan Sorokin
cf2cb29826 Split transferlistsortmodel into .h and .cpp 2014-11-09 03:58:50 +03:00
Ivan Sorokin
0976918ca2 Call updateTorrentNumbers() once per every model refresh, not once for every row changed
Torrent numbers were recalculated on every dataChanged() signal. The previous commit
greatly increases the number of dataChanged() signals.

HEAD^^:
    Total wall clock:                 97.069s
    updateTorrentNumbers() time:       0.033s

HEAD^:
    Total wall clock:                 96.132s
    updateTorrentNumbers() time:       0.179s

HEAD:
    Total wall clock:                 95.535s
    updateTorrentNumbers() time:       0.047s

After this commit the time of updateTorrentNumbers() is (almost) back to
the level that it was in HEAD^^.
2014-11-09 03:58:50 +03:00
Ivan Sorokin
e5c024967d Emit TorrentModel::dataChanged() signal only for specific rows, not for the entire table
In commit b50d733 TorrentModel moved from a periodic refresh, to using
postStatusUpdate(). In this transition I forgot to remove emition of
dataChanged() signal for the entire table.

According to my measurements this commit reduce CPU usage of qbittorrent
by a factor of 3:

Before:
   Total wall clock:                                      97.07s
   CPU time:                                              21.77s
   - Time spent in TransferListDelegate::paint():         14.60s
   - Time spent in TorrentModel::forceModelRefresh():      1.44s
   - Time spent in TorrentModel::stateUpdated():           0.02s

After:
   Total wall clock:                                      96.13s
   CPU time:                                               6.68s
   - Time spent in TransferListDelegate::paint():          2.63s
   - Time spent in TorrentModel::forceModelRefresh():     <0.01s
   - Time spent in TorrentModel::stateUpdated():           1.73s

As it is seen the time spent in painting is reduced by a factor of 6 (14.60->2.63) at
the cost of slightly increased time of notifications that model is
changed (1.44->1.73). The next commits attempt to address this issue.
2014-11-09 03:58:50 +03:00
Ivan Sorokin
2e55c1f307 Optimize torrentRow a bit
The problem is that torrentRow() does linear search over the list of all
available torrents. So it doesn't scale well for large number of
torrents. Removing the copying of QString from linear search
inner loop, speed up it considerably.

The proper solution should be using hash table instead of linear search.
This require more radical changes in TorrentModel and may be done in a
separate commit.
2014-11-09 03:48:58 +03:00
sledgehammer999
a07f25aa67 Merge pull request #2124 from pmzqla/webui
Misc changes to the WebUI
2014-11-09 01:51:38 +02:00
Gabriele
97c1b17cf0 Show a spinner while torrents are being uploaded 2014-11-09 00:30:37 +01:00
Gabriele
3d1617b2de Upload torrents on user command
Don't upload the torrents as soon as they are selected.

Also, adjust the HTML code to better place the upload button.
2014-11-09 00:28:41 +01:00
Gabriele
ee3a736787 WebUI: Return error in case uploaded files are not torrents 2014-11-09 00:28:41 +01:00
Gabriele
8b8c9d3573 Rotate expand image to better suit its use in the UI 2014-11-09 00:28:36 +01:00
Gabriele
c255ba675a Center images in top menu 2014-11-09 00:28:18 +01:00
Gabriele
7b49ab2a48 Add missing images and fix few paths
These images are used in CSS rules, but are missing.

Images taken from MochaUI git repo.
2014-11-09 00:28:18 +01:00
Gabriele
465ff473f1 Drop Firefox specific code
This change improves the responsiveness while resizing panels.
The code was intended to fix bugs in really old versions of Firefox.
2014-11-09 00:28:18 +01:00
Gabriele
e83e46b08a Fix panel height calculation in Opera 2014-11-09 00:28:18 +01:00
Gabriele
7b73e96863 Fix errors in width and height calculations
border-left/right/top/bottom are not numbers.
2014-11-09 00:28:18 +01:00
Gabriele
dc0591997a Bump Internet Explorer compatibility 2014-11-09 00:28:18 +01:00
Gabriele
30a25e1de4 Workaround to make invisible buttons clickable on IE 2014-11-09 00:28:18 +01:00
Gabriele
d106c12aa2 Restricts hacks and workarounds to IE < 9 2014-11-09 00:28:18 +01:00
Gabriele
66a91a6e3a Remove XML encoding declaration from HTML files 2014-11-09 00:27:53 +01:00
Gabriele
0d2e9a9473 Reduce font size of priority combo boxes
They were too big in some cases (e.g. Firefox on Linux).
2014-11-09 00:25:40 +01:00
Gabriele
fa706b24be Use fake tristate checkbox on IE < 9 only 2014-11-09 00:25:40 +01:00
Gabriele
92cc8f7211 Fix disappearing transferlist list when zooming in the browser
When the page is zoomed in the browser, the transferlist doesn't fit
in the page and is moved below the left column, disappearing completely.

Allow elements to overlap the handle to prevent this from happening.

The error message is moved in the status bar since it's wrongly placed
because of the overlap.

Closes #603.
2014-11-09 00:25:40 +01:00
Gabriele
4f28fb5680 Minimize width of first column in transfer list 2014-11-09 00:25:40 +01:00
Gabriele
afde16c252 Change color of table header in bottom panel and add some padding 2014-11-09 00:25:40 +01:00
Gabriele
c516c0ac12 Center vertically "+" image in tracker list 2014-11-09 00:25:40 +01:00
Gabriele
af9e40d83d Alternate background color for torrent content
CSS3 support required.
2014-11-09 00:25:40 +01:00
Gabriele
b01c1f3b9a Don't show white parts when hovering over the elements of the menu 2014-11-09 00:25:40 +01:00
Gabriele
4ff999d1c5 Change background color of rows of torrent content 2014-11-09 00:25:40 +01:00
Gabriele
c9db08f0f4 Change background color of filterlist on hover 2014-11-09 00:25:40 +01:00
Gabriele
59abcc554d Remove "Downloaded" from transferlist header and reduce column width 2014-11-09 00:25:40 +01:00
Gabriele
863dc71100 Focus username input on load 2014-11-09 00:25:40 +01:00
Gabriele
0bfad7dce6 Add type attribute to style tag 2014-11-09 00:25:40 +01:00
Gabriele
5e77d99a5e Add alt attribute to images 2014-11-09 00:25:40 +01:00
Gabriele
b2e86bae7e Remove extra double quotes 2014-11-09 00:25:34 +01:00
sledgehammer999
f5c93e0b4d Merge pull request #2129 from glassez/webui
WebUI Fixes
2014-11-09 01:21:00 +02:00
Ivan Sorokin
c37e5abeff Fix torrent removal. Closes #2132
It was reported that qbittorrent crashes on Mac OS X when user deletes
torrents from label view when label filter is active.

The callstack of the crash is the following:

1   abort + 129
2   __assert_rtn + 321
3   QTorrentHandle::total_size() const + 124
4   TorrentModelItem::data(int, int) const + 307
5   TorrentModel::data(QModelIndex const&, int) const + 255
6   QSortFilterProxyModel::data(QModelIndex const&, int) const + 109
7   QSortFilterProxyModel::data(QModelIndex const&, int) const + 109
8   QSortFilterProxyModel::data(QModelIndex const&, int) const + 109
9   QItemDelegate::rect(QStyleOptionViewItem const&, QModelIndex const&, int) const + 75
10  QItemDelegate::sizeHint(QStyleOptionViewItem const&, QModelIndex const&) const + 172
11  TransferListDelegate::sizeHint(QStyleOptionViewItem const&, QModelIndex const&) const + 14
12  QTreeView::indexRowSizeHint(QModelIndex const&) const + 887
13  QTreeViewPrivate::layout(int, bool, bool) + 462
14  QTreeView::doItemsLayout() + 356
15  QTreeViewPrivate::updateScrollBars() + 109
16  QTreeView::scrollTo(QModelIndex const&, QAbstractItemView::ScrollHint) + 124
17  TransferListWidget::currentChanged(QModelIndex const&, QModelIndex const&) + 548
18  TransferListWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 641
19  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
20  QItemSelectionModelPrivate::_q_rowsAboutToBeRemoved(QModelIndex const&, int, int) + 3729
21  QItemSelectionModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 398
22  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
23  QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int) + 78
24  QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) + 106
25  QSortFilterProxyModelPrivate::remove_proxy_interval(QVector<int>&, QVector<int>&, int, int, QModelIndex const&, Qt::Orientation, bool) + 58
26  QSortFilterProxyModelPrivate::remove_source_items(QVector<int>&, QVector<int>&, QVector<int> const&, QModelIndex const&, Qt::Orientation, bool) + 265
27  QSortFilterProxyModelPrivate::source_items_about_to_be_removed(QModelIndex const&, int, int, Qt::Orientation) + 232
28  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
29  QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int) + 78
30  QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) + 106
31  QSortFilterProxyModelPrivate::remove_proxy_interval(QVector<int>&, QVector<int>&, int, int, QModelIndex const&, Qt::Orientation, bool) + 58
32  QSortFilterProxyModelPrivate::remove_source_items(QVector<int>&, QVector<int>&, QVector<int> const&, QModelIndex const&, Qt::Orientation, bool) + 265
33  QSortFilterProxyModelPrivate::source_items_about_to_be_removed(QModelIndex const&, int, int, Qt::Orientation) + 232
34  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
35  QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int) + 78
36  QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) + 106
37  QSortFilterProxyModelPrivate::remove_proxy_interval(QVector<int>&, QVector<int>&, int, int, QModelIndex const&, Qt::Orientation, bool) + 58
38  QSortFilterProxyModelPrivate::remove_source_items(QVector<int>&, QVector<int>&, QVector<int> const&, QModelIndex const&, Qt::Orientation, bool) + 265
39  QSortFilterProxyModelPrivate::source_items_about_to_be_removed(QModelIndex const&, int, int, Qt::Orientation) + 232
40  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
41  QAbstractItemModel::rowsAboutToBeRemoved(QModelIndex const&, int, int) + 78
42  QAbstractItemModel::beginRemoveRows(QModelIndex const&, int, int) + 106
43  TorrentModel::removeTorrent(QString const&) + 81
44  TorrentModel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 345
45  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
46  QBtSession::deletedTorrent(QString const&) + 56
47  QBtSession::deleteTorrent(QString const&, bool) + 2855
48  TransferListWidget::deleteSelectedTorrents() + 292
49  TransferListWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 230
50  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
51  QAction::activate(QAction::ActionEvent) + 227
52  QMenuPrivate::activateCausedStack(QList<QPointer<QWidget> > const&, QAction*, QAction::ActionEvent, bool) + 77
53  QMenuPrivate::activateAction(QAction*, QAction::ActionEvent, bool) + 470
54  QWidget::event(QEvent*) + 687
55  QMenu::event(QEvent*) + 617
56  QApplicationPrivate::notify_helper(QObject*, QEvent*) + 194
57  QApplication::notify(QObject*, QEvent*) + 2716
58  SessionApplication::notify(QObject*, QEvent*) + 21
59  QCoreApplication::notifyInternal(QObject*, QEvent*) + 118
60  QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) + 448
61  qt_mac_handleMouseEvent(NSEvent*, QEvent::Type, Qt::MouseButton, QWidget*, bool) + 1300
62  -[NSWindow _reallySendEvent:] + 759
63  -[NSWindow sendEvent:] + 368
64  -[QCocoaPanel sendEvent:] + 113
65  -[NSApplication sendEvent:] + 2238
66  -[QNSApplication sendEvent:] + 97
67  -[NSApplication run] + 711
68  QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 1522
69  QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 77
70  QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 370
71  QMenu::exec(QPoint const&, QAction*) + 103
72  TransferListWidget::displayListMenu(QPoint const&) + 8741
73  TransferListWidget::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + 622
74  QMetaObject::activate(QObject*, QMetaObject const*, int, void**) + 2196
75  QWidget::event(QEvent*) + 3082
76  QFrame::event(QEvent*) + 45
77  QAbstractScrollArea::viewportEvent(QEvent*) + 108
78  QAbstractItemView::viewportEvent(QEvent*) + 1390
79  QTreeView::viewportEvent(QEvent*) + 218
80  QAbstractScrollAreaFilter::eventFilter(QObject*, QEvent*) + 37
81  QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) + 115
82  QApplicationPrivate::notify_helper(QObject*, QEvent*) + 178
83  QApplication::notify(QObject*, QEvent*) + 5742
84  SessionApplication::notify(QObject*, QEvent*) + 21
85  QCoreApplication::notifyInternal(QObject*, QEvent*) + 118
86  qt_sendSpontaneousEvent(QObject*, QEvent*) + 45
87  qt_mac_handleMouseEvent(NSEvent*, QEvent::Type, Qt::MouseButton, QWidget*, bool) + 1378
88  -[NSWindow _reallySendEvent:] + 5682
89  -[NSWindow sendEvent:] + 368
90  -[QCocoaWindow sendEvent:] + 113
91  -[NSApplication sendEvent:] + 2238
92  -[QNSApplication sendEvent:] + 97
93  -[NSApplication run] + 711
94  QEventDispatcherMac::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 1522
95  QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) + 77
96  QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) + 370
97  QCoreApplication::exec() + 199
98  main + 3415
99  start + 52

As we can see the user deleted some torrent (48). QBtSession deleted the torrent
from libtorrent::session (47) and emitted a signal (46), about torrent deletion.
In responce to the signal (43) the TorrentModel notifies (42) its views about a change.
After a long chain of notifications (42-6) the view requested (5) a value of
total_size from TorrentModel. QTorrentHandle is already invalid as the torrent
was removed in (47). So we've got a crash in (3).

The fix is relatively straightforward: do notify TorrentModel about removal not after,
but before torrent is removed from libtorrent::session. This commit does the same
thing to TorrentSpeedMonitor.

This bug reveals a major flaw in a design: currently we have a several components all
subscribed to the torrent removal signal. Signal is delivered to them in arbitrary
order, but they access each other in the handlers of this signal. E.g. TorrentModel
can access TorrentSpeedMonitor. This doesn't lead to a crash because
TorrentSpeedMonitor returns MAX_ETA when ETA is queried for unknown torrent.
2014-11-09 00:25:59 +03:00
sledgehammer999
3202ad368f Merge pull request #2141 from sorokin/fix-a-warning
Fix a warning
2014-11-08 21:21:43 +02:00
Ivan Sorokin
6bbfd0aeb7 Fix a warning 2014-11-08 19:00:04 +03:00
sledgehammer999
c9e13dfe8b Merge pull request #2120 from sorokin/ip-filter-moc
split filterparserthread into .h and .cpp and (probably) fixes #2119
2014-11-08 14:35:23 +02:00
Vladimir Golovnev (Glassez)
cd0bcacd9f WebUI: Fix upload window closing on old browsers. 2014-11-07 15:53:11 +03:00
Vladimir Golovnev (Glassez)
d85c3170b2 WebUI: Add charset attribute to text content types. 2014-11-05 20:24:17 +03:00
Vladimir Golovnev (Glassez)
7b7f88ae4f WebUI: Fix WebAPI returned data. 2014-11-05 20:24:02 +03:00
Ivan Sorokin
da867fd022 Split trackerlogin into .h and .cpp 2014-11-05 03:10:39 +03:00
Ivan Sorokin
ed197a193d Split statusbar into .h and .cpp 2014-11-05 03:10:39 +03:00
Ivan Sorokin
6347700ee3 Move libtorrent includes to .cpp
This commit probably fixes #2119.

The only important change in this commit is moving
session::get_ip_filter() from FilterParserThread::processFilterFile() to
FilterParserThread::run(). Previously we called it in main thread, but
now we calls it in worker thread. I don't now what libtorrent contract
about threads, but I assume that if it is ok to set_ip_filter from
other thread, it is ok to get it.
2014-11-05 03:10:39 +03:00
Ivan Sorokin
17f5ffcaec Split filterparserthread into .h and .cpp 2014-11-05 03:10:39 +03:00
sledgehammer999
a63d4e3400 Merge pull request #2117 from glassez/webui
WebUI Fixes
2014-11-03 17:00:34 +02:00
Vladimir Golovnev (Glassez)
0660398c28 Replace Mascot with qBittorrent logo on WebUI login page. 2014-11-03 16:31:41 +03:00
Vladimir Golovnev (Glassez)
651bf4f9aa Fix status returned to banned user. 2014-11-03 16:31:40 +03:00
sledgehammer999
6f14b34470 WEBUI: Protect against timing attacks. Closes #2108. 2014-11-02 21:41:29 +02:00
sledgehammer999
09ab5c37ce Merge pull request #2077 from pmzqla/columns
Add new columns to transfer list
2014-11-02 21:00:35 +02:00
Gabriele
b63f647c2c Add "Total Size" column to transfer list
This column shows the total size of the related torrent taking into
account also the unwanted data.

Closes #1233.
2014-11-02 19:56:03 +01:00
Gabriele
b1af99ffba Add "Last Activity" column to transfer list
This column shows the time elapsed since the related torrent has
received or sent a chunk.

Closes #517.
2014-11-02 19:56:03 +01:00
Gabriele
a501f9d223 Add "Last Seen Complete" column to transfer list
This column shows when we or one of our peers last saw a complete
copy of the related torrent.

Closes #483.
2014-11-02 19:15:10 +01:00
sledgehammer999
ea486d45c9 Merge pull request #2110 from sorokin/o1-torrent-speed-monitor
O(1) torrent speed monitor
2014-11-02 19:55:03 +02:00
Ivan Sorokin
51c9d358b4 Implement O(1) SpeedSample::average() instead of O(N) 2014-11-02 20:03:49 +03:00
Ivan Sorokin
4ff08ff691 New improved Sample in TorrentSpeedMonitor 2014-11-02 20:03:49 +03:00
Ivan Sorokin
0d311062f3 Unused function 2014-11-02 20:03:49 +03:00
sledgehammer999
d62498b48c Merge pull request #2106 from sorokin/fix-memleak-in-torrentmodel
Fix a memleak in torrentmodel.
2014-11-02 16:43:04 +02:00
sledgehammer999
37d83cf6a8 Merge pull request #2092 from pmzqla/cleanup
Remove unused code
2014-11-02 16:41:40 +02:00
sledgehammer999
4f2b7c2e10 Merge pull request #2081 from sorokin/split
Split a few files into .h and .cpp
2014-11-02 16:40:41 +02:00
sledgehammer999
cfa28ec68c Merge pull request #2080 from sorokin/cleanup-torrent-model
Cleanup torrent model item
2014-11-02 16:36:52 +02:00
sledgehammer999
73a05a67a4 Merge pull request #2057 from pmzqla/sort-content
Put directories first when sorting torrent content by name
2014-11-02 16:28:25 +02:00
sledgehammer999
6d5c9ff7d4 Merge pull request #2095 from DoumanAsh/piratebay_https
Return https connection for piratebay
2014-11-02 15:48:40 +02:00
sledgehammer999
08de7f7439 Merge pull request #2059 from sorokin/fix-eta
Fix ETA calculation
2014-11-02 15:41:40 +02:00
sledgehammer999
46f3009e4b Merge pull request #2051 from pmzqla/filter-input
Improve input box to filter torrent list
2014-11-02 15:25:49 +02:00
sledgehammer999
238703cb0e Remove unused variables. 2014-11-02 15:03:53 +02:00
sledgehammer999
9e6d57057f Add back contact info in the copyright notices. 2014-11-02 15:03:40 +02:00
sledgehammer999
c8e72ff409 Merge pull request #1890 from glassez/webui
WebUI Core Redesign
2014-11-02 15:02:22 +02:00
Ivan Sorokin
9771cb796c Unused include 2014-11-02 15:37:07 +03:00
Ivan Sorokin
807960b768 Fix a memleak in torrentmodel.
Perhaps we should finally move to C++11 and std::unique_ptr?
2014-11-02 14:56:19 +03:00
Vladimir Golovnev (Glassez)
8a65dbaa4f WebUI core redesign. 2014-11-02 13:54:48 +03:00
DoumanAsh
b4e31c9a1b Use https for Piratebay search plugin. Closes #2093 2014-10-30 21:30:45 +03:00
Gabriele
fe030f1540 Remove unused code
Leftovers of 4ec176b683 ("Make possible to move file to .unwanted
directory after downloading")
2014-10-28 23:12:22 +01:00
Vladimir Golovnev (Glassez)
9853a9fec9 Modify Http parser/generator classes. 2014-10-26 19:52:15 +03:00
Vladimir Golovnev (Glassez)
3d20f2f670 Prepare WebUI resources.
Html/Css/JavaScript files displacement.
Also add new icon.
2014-10-26 19:52:01 +03:00
Gabriele
bdf27451ad Put directories first when sorting torrent content by name
Closes #1594.
2014-10-25 21:14:56 +02:00
Ivan Sorokin
8f0d49bb1b Remove default argument from TorrentPersistentData::setAddedDate() 2014-10-25 16:12:17 +04:00
Ivan Sorokin
16eb407453 Split src/torrentpersistentdata into .h and .cpp 2014-10-25 16:12:17 +04:00
Ivan Sorokin
e1b4c5534e Split src/transferlistfilterswidget into .h and .cpp 2014-10-25 16:12:17 +04:00
Ivan Sorokin
03b06fbf81 Split src/transferlistdelegate into .h and .cpp 2014-10-25 16:12:17 +04:00
Ivan Sorokin
2d98b8f192 Call TorrentModelItem::state() directly in getTorrentStatusReport
There is no point in wraping/unwraping QVariant.
2014-10-25 14:25:26 +04:00
Ivan Sorokin
80297697dd Remove mutable fields from TorrentModelItem
The querying of TR_STATUS doesn't affect color and icon now.
2014-10-25 14:25:25 +04:00
Ivan Sorokin
ad116edac7 Use Qt::GlobalColor to refer to color instead of string
Qt uses binary search to convert string to QColor, we don't need that
binary search at all. This patch could be considered as optimization, but
in reality creating QColor takes only 0.2% of time. So it should be visible
at all.

This could be considered as cleanup for not calling expensive functions
from non-expensive ones.
2014-10-25 14:25:21 +04:00
sledgehammer999
b0f767e699 Merge pull request #2060 from glassez/fwd_decl_fixes
Fix libtorrent types forward declaration errors/warnings.
2014-10-21 17:25:57 +03:00
sledgehammer999
e750ae3a79 Use boost:bind() as the docs show. Allows compilation with older gcc versions. 2014-10-21 16:28:06 +03:00
Vladimir Golovnev (Glassez)
ab2d506e09 Fix libtorrent types forward declaration errors/warnings. 2014-10-21 16:33:04 +04:00
Ivan Sorokin
637246c1c7 Cleaup includes 2014-10-21 12:13:56 +04:00
Ivan Sorokin
5f0d6f3c6d Fix incorrect ETA calculation 2014-10-21 12:13:52 +04:00
Gabriele
ea1d7afdef Focus transfer list on startup
The torrent list filter will be focused otherwise and its placeholder
text will be hidden on startup.
2014-10-20 19:58:31 +02:00
Gabriele
afb03725ad Add placeholder text to the input to filter the torrent list
Users can mistakenly think the input box is to search for torrents
and not to filter the torrent list. A placeholder text will make things
clear.
2014-10-20 19:58:31 +02:00
Gabriele
1a63f6af1b Show input box to filter torrent list only when the list is shown
It's misleading to show the filter on every tab when it works only
for the torrent list.
2014-10-20 19:57:39 +02:00
sledgehammer999
ce4ef37820 Remove superfluous semicolon(;). 2014-10-20 20:39:13 +03:00
sledgehammer999
c2f2d0a363 Don't show multiple unlock UI dialogs. Closes #2040. 2014-10-20 20:34:46 +03:00
sledgehammer999
2203d0a043 Merge pull request #2041 from sorokin/optimize-natural-sort
Optimize misc::naturalSort()
2014-10-19 18:57:14 +03:00
Ivan Sorokin
a278261806 Optimize misc::naturalSort()
Previous implementation used QRegExp to find a first digit. That is
utterly ineffective.

When torrent list is sorted by name (a column that uses the naturalSort() for
comparison), naturalSort could take 18.6% of the time of the UI thread. Optimize it
so now it takes 1% of the time of the UI thread.
2014-10-19 14:20:16 +04:00
sledgehammer999
9b71e4ffc9 Use the correct character encoding for exceptions coming from libtorrent. 2014-10-18 17:22:50 +03:00
sledgehammer999
89ae72d5c4 Merge pull request #2042 from sorokin/optimize-includes
Optimize includes
2014-10-18 16:42:30 +03:00
sledgehammer999
d02984cbed Merge pull request #2027 from pmzqla/system_icons
Increase maximum size of system icons
2014-10-18 15:10:29 +03:00
sledgehammer999
7c03167cde Merge pull request #2026 from pmzqla/master
Make Windows icons suitable for high dpi screens
2014-10-18 14:27:51 +03:00
sledgehammer999
dd711bf377 Merge pull request #2035 from pmzqla/torrentpath
Allow relative torrent paths when qBittorrent is already running
2014-10-18 14:27:14 +03:00
Gabriele
05929b78c6 Allow relative torrent paths when qBittorrent is already running
Adding new torrents from the command line while qBittorrent was
already running was possible only providing the absolute path to
the file.
2014-10-18 13:04:18 +02:00
sledgehammer999
aca4731145 Merge pull request #2031 from pmzqla/panel
Set minimum width of the left panel in the preferences
2014-10-18 13:43:40 +03:00
sledgehammer999
c2e0baa6a6 Merge pull request #2034 from pmzqla/sections
Don't stretch the last section in the transfer list
2014-10-18 13:31:39 +03:00
Ivan Sorokin
de5f38a160 Speedup compilation speed
libtorrent has a relatively heavy headers, that take lots of time to
process. This commit removes unnecessary includes of libtorrent headers
and replaces them with forward declarations.

I had to move some functions in QBtSession from slots to regular
functions because moc'ed file want to see complete types of all
parameters of slots.

"time make" of full rebuild before this series of commits:

real    13m35.937s
user    12m1.295s
sys     1m25.908s

after:

real    10m54.390s
user    9m31.167s
sys     1m12.580s
2014-10-18 12:19:05 +04:00
Ivan Sorokin
f6732e87f2 Remove inclusion of "qtracker.h" in "qbtsession.h" 2014-10-18 12:19:05 +04:00
Ivan Sorokin
b2e3739da2 Replace include of <libtorrent/session.hpp> with forward declaration 2014-10-18 12:19:05 +04:00
Ivan Sorokin
c9b27e032b Remove inclusion of alertdispatch.h from qbtsession.h 2014-10-18 12:19:04 +04:00
Ivan Sorokin
83dd35dbc9 Make alertdispatcher.h self contained and replace include libtorrent/session with forward declaration 2014-10-18 12:19:04 +04:00
Ivan Sorokin
5ea1a4c3cc Remove inclusion of <QThread> from misc.h 2014-10-18 12:19:04 +04:00
Ivan Sorokin
be338b969c Remove unneccessary includes of libtorrent in misc.h 2014-10-18 12:19:04 +04:00
Gabriele
fc02b11f65 Don't stretch the last section in the transfer list
Since the content of some sections is right aligned, automatically
resizing the width of the last one to fill the header could be
sometimes undesired.

Let the user choose the width of each section and never change his
preference.
2014-10-15 16:22:33 +02:00
Gabriele
93abeb3643 Set minimum width of the left panel in the preferences
Change also the default width and set it to the minimum.
This minimum width prevents the horizontal scrollbar from appearing.

The size of the items in the list depends on the Qt style, so the
left panel could be few pixels larger than required with some of them.
2014-10-14 22:52:30 +02:00
Gabriele
5b7ee14416 Make Windows icons suitable for high dpi screens
The maximum size of the icons is now 256x256 pixels so that
Windows can correctly scale them.

The 256x256 layer for the main icon was created upscaling the
192x192 png available in the source tree. Hence, the icon might
not be perfect at the maximum size.

The icon for the file association was made from scratch and it's
visually similar to the previous icon.
2014-10-14 17:52:22 +02:00
sledgehammer999
f9dc945730 Merge pull request #2025 from BrunoReX/search_term
Fix search inconsistency between Python versions
2014-10-14 17:11:40 +03:00
sledgehammer999
cae032039b Merge pull request #2030 from pmzqla/tooltips
Remove unneeded tooltip
2014-10-14 17:10:35 +03:00
Gabriele
becab3a013 Remove unneeded tooltip 2014-10-14 00:15:31 +02:00
Gabriele
616895b2c9 Increase maximum size of system icons
System icons were limited to a size 24x24 pixels, while the embedded
icons are 32x32 pixels big.
2014-10-13 18:54:05 +02:00
Bruno Barbieri
f288162e99 Fix search inconsistency between Python versions
Closes #2012
2014-10-13 07:42:06 -03:00
sledgehammer999
eab13982a2 Merge pull request #1543 from john-peterson/ssd
adding a save resume data interval option
2014-10-13 02:18:52 +03:00
John S. Peterson
d27bff4df4 adding a save resume data interval option
because some SSD users oppose frequent disk writes
2014-10-12 20:14:09 +02:00
sledgehammer999
d38bff0ca5 Merge pull request #1967 from DoumanAsh/pirateBay_uptade
Pirate bay engine update
2014-10-12 19:23:33 +03:00
DoumanAsh
a62e30ea88 Pirate bay search engine update 2014-10-12 20:15:18 +04:00
sledgehammer999
0e0e8f7c27 Merge pull request #2005 from BrunoReX/python3_utf8
Fix search engine encoding issues with python3 on Windows
2014-10-12 19:06:34 +03:00
sledgehammer999
91e53971b2 Merge pull request #1997 from BrunoReX/torrentreactor_fix
Fix TorrentReactor search plugin
2014-10-12 17:12:22 +03:00
sledgehammer999
f50eac4c15 Merge pull request #2022 from sorokin/for-sledgehammer
a small optimization, a micro optimization and a fix
2014-10-12 17:06:34 +03:00
sledgehammer999
e10e2e1719 Change the program updater's URL for Windows and Mac OS X. Closes #1954. 2014-10-12 16:42:33 +03:00
Ivan Sorokin
b995a9d75e Fix race condition in QAlertDispatcher
It was possible that QAlertDispatcher::dispatch() could access (lock)
mutex that was destroyed by main thread. Fix this by moving mutex into a
tag.
2014-10-12 12:25:56 +04:00
Ivan Sorokin
333978f1ff Use std::vector instead of std::deque in QAlertDispatcher
As we never use {push,pop}_front std::vector works here perfectly.
Also reserve memory for std::vector out of lock.

This could be considered as an optimization, but in reality this is just
using right container in right place. According to my measurements total
speedup is under 0.2%.
2014-10-12 12:25:47 +04:00
Ivan Sorokin
d89d9c2f75 Fewer calls to torrent_handle::info_hash() 2014-10-12 12:09:52 +04:00
Bruno Barbieri
698e5ef0f1 Replace deprecated sgmllib with HTMLParser/html.parser 2014-10-05 18:04:10 -03:00
Bruno Barbieri
2bdfd140cb Fix search engine encoding issues with python3 on Windows
Closes #1996
2014-10-05 17:03:43 -03:00
Bruno Barbieri
dc8853cd87 Fix TorrentReactor search plugin 2014-10-04 07:20:42 -03:00
sledgehammer999
e3d079ccb3 Merge pull request #1983 from sorokin/buffer-overrun-prop-widget
Fix heap-buffer-overrun in PropertiesWidget::displayFilesListMenu
2014-10-01 22:53:30 +03:00
Ivan Sorokin
ddd2025968 Fix heap-buffer-overrun in PropertiesWidget::displayFilesListMenu 2014-10-01 23:20:01 +04:00
sledgehammer999
2bc9e2c1a5 Merge pull request #1955 from paolo-sz/master
Correctly detect python in PATH
2014-09-25 14:27:18 +03:00
paolo-sz
b47fba49cc Correctly detect python in PATH 2014-09-25 09:28:58 +02:00
sledgehammer999
8408f56d6f Fix large cache support on amd64 arch pt2. 2014-09-21 14:01:58 +03:00
sledgehammer999
97419f840a Consider queued items before deciding to 'auto-shutdown on downloads completion'. Closes #1942. 2014-09-21 13:50:32 +03:00
sledgehammer999
0650d28da7 Merge pull request #1941 from Gelmir/magnet_redirect
Work around magnet redirection in feeds
2014-09-21 13:36:47 +03:00
sledgehammer999
88baa710fd Merge pull request #1947 from Gelmir/x64_cache_fix
Fix large cache support on amd64 arch
2014-09-21 13:11:32 +03:00
sledgehammer999
66f46d56f6 Merge pull request #1951 from masux/master
This fix qbittorrent/qBittorrent#1949
2014-09-21 12:12:10 +03:00
masux
f1e0ef87a4 This fix qbittorrent/qBittorrent#1949 2014-09-21 09:16:59 +02:00
Nick Tiskov
65f570b816 Fix large cache support on amd64 arch 2014-09-19 17:42:40 +04:00
Nick Tiskov
a7e445c575 Work around magnet redirection in feeds 2014-09-16 00:35:46 +04:00
sledgehammer999
94043e60c7 Merge pull request #1919 from masux/master
Fixed extratorrent.cc search engine.
2014-09-15 17:38:06 +03:00
Martin Janco
1290d7cac4 Fixed extratorrent.cc search engine. 2014-09-15 16:29:20 +02:00
sledgehammer999
79191b3f34 Sync translations from Transifex and run lupdate. 2014-09-15 00:33:21 +03:00
lojack5
ac3efb664a fix import torrent with "Keep incomplete torrents in:" ticked
* also had to account for "Append the label of the torrent to the save path",
  but again, this was only an issue when "Keep incomplete torrents in:" is
  selected

* A multi-file torrent with only one file (ie: a single file within a folder),
  was being treated as a single-file torrent, making it impossible to import.
  Multi-file torrent detection code was copied from libtorrent.  The
  information is available in libtorrent (under torrent_info::m_multifile),
  however it's a private member and I chose to go with copying the code that
  determines it, rather than modifying a library qBittorrent depends on.

Conflicts:
	src/torrentimportdlg.cpp
2014-09-15 00:05:13 +03:00
sledgehammer999
59379942ac Don't display the Search Engine tab by default. 2014-09-14 22:20:58 +03:00
sledgehammer999
b6d4030cd8 WINDOWS: Search first in PATH for python. Closes #956. 2014-09-14 22:20:57 +03:00
sledgehammer999
1144555eca WINDOWS: Can now correctly detect 64bit and 32bit python installations on 64bit Windows. Closes #1148 #445 #795 #1708. 2014-09-14 22:20:56 +03:00
sledgehammer999
574abc7cdb WINDOWS: Don't create keys in the registry if python isn't found. Closes #1370. 2014-09-14 22:20:55 +03:00
sledgehammer999
0799dc293c WINDOWS: Check for python before creating the search engine tab. Prevents the creation of python specific files in the user's PC if no python is found. Closes #1370. 2014-09-14 22:20:36 +03:00
sledgehammer999
5528f60a15 SMTP: send the local hostname as FQDN. See discussion in #1845 for more info. 2014-09-13 18:00:51 +03:00
sledgehammer999
f9aee5e3ab Forward declare classes where possible in 'TransferListWidget'. 2014-09-13 16:49:16 +03:00
sledgehammer999
baf9d21072 Show stalled downloads that are uploading under the 'Active' filter. Closes #1654." 2014-09-13 16:49:11 +03:00
sledgehammer999
6a6e562f60 Merge pull request #1925 from diger/haiku
Fix Qt5 support
2014-09-11 23:45:05 +03:00
diger
e7f1dacd6c Fix Qt5 support 2014-09-11 08:44:25 +06:00
sledgehammer999
cc4d17fbf0 Merge pull request #1819 from diger/haiku
Add patches for support Haiku (https://www.haiku-os.org)
2014-09-04 14:43:52 +03:00
diger
c22190fbf7 Add patches for support Haiku (https://www.haiku-os.org) 2014-09-04 13:23:16 +06:00
sledgehammer999
2a5393cf53 SMTP: Fix edge case where nothing was sent when no authentication was needed. Relates to #1845. 2014-09-02 17:31:44 +03:00
sledgehammer999
bf0ed595c7 Don't use IPv4 addresses when the user has enabled IPv6 address in the settings. 2014-09-02 14:45:42 +03:00
sledgehammer999
a708c642ef SMTP: Fix finding the local address. 2014-09-02 14:25:54 +03:00
sledgehammer999
487ca568b8 SMTP: Send the IP of the configured Network Interface. Relates to #1845. 2014-09-01 15:07:05 +03:00
sledgehammer999
54bf386794 SMTP: Support multiline greeting from server in INIT state. Thanks to Ivanov Juriy for helping identify the problem. Relates to #1845. 2014-08-31 14:32:09 +03:00
sledgehammer999
f22f7cf17a Fix available disk space label on single file torrents. 2014-08-31 00:05:38 +03:00
sledgehammer999
45e95e6cc2 Don't translate file extensions. Closes #1907. 2014-08-30 21:54:57 +03:00
sledgehammer999
94fc2f9c3d Don't display the context menu in 'Content' and 'HTTP Sources' buttons when no torrent is selected. It prevents crashes. Closes #1906, #1900. 2014-08-30 19:52:57 +03:00
sledgehammer999
de5ad05d0a Merge pull request #1902 from YuriIvanov/issue#1650
Add peer port column to PeerListWidget. Closes #1650.
2014-08-30 19:27:19 +03:00
sledgehammer999
11d39ba6ef Right align numerical values in the transfer list. Partially revert 51a9a9aab. Closes #1903. 2014-08-30 18:36:20 +03:00
Ivanov Juriy
d5f372fae8 Add peer port column to PeerListWidget. Closes #1650. 2014-08-30 15:28:59 +04:00
sledgehammer999
7753bc38e9 Merge pull request #1895 from YuriIvanov/issue#1845
add host address parameter to helo smtp request
2014-08-28 23:18:37 +03:00
sledgehammer999
495800d6e9 Possible fix for crash in RSS code. Closes #1901. 2014-08-28 19:00:57 +03:00
sledgehammer999
611bddf485 Merge pull request #1881 from benhutchins/feature-webui-safe
Fix Help menu links in WebUI
2014-08-28 18:29:42 +03:00
sledgehammer999
7029f4dcd2 Temporarily disable Travis CI tests against libtorrent 1.0.x until #1878 is resolved. 2014-08-26 01:16:21 +03:00
sledgehammer999
dd89d3507e Make Travis CI test against libtorrent 1.0.x too. 2014-08-26 00:57:24 +03:00
sledgehammer999
0b8fad69fa Option to disable connections not supported by proxies. Closes #1894. 2014-08-26 00:32:10 +03:00
sledgehammer999
cd99f0ea43 Don't disable DHT/LSD/UPnP in the GUI when anonymous mode is enabled. 2014-08-25 19:22:44 +03:00
Ivanov Juriy
a7ad34418f add host address parameter to helo smtp request 2014-08-25 14:26:30 +04:00
sledgehammer999
58ad90fa9c Set 'Cancel' as the default button in the shutdown confirmation dialog. 2014-08-23 23:22:47 +03:00
sledgehammer999
7c80277c04 Sync translations from Transifex and run lupdate. 2014-08-23 22:31:49 +03:00
sledgehammer999
f6156217d0 Added 'Shutdown now' button in shutdown confirmation dialog. Closes #969. 2014-08-23 22:22:03 +03:00
sledgehammer999
634000e7a9 Split ShutdownConfirmDlg into .h/.cpp files. 2014-08-23 21:55:38 +03:00
sledgehammer999
66b375de07 Don't listen on IPv6 address by default. Prevents network connectivity problems. Closes #1880. 2014-08-23 21:55:36 +03:00
Benjamin Hutchins
89fda12597 Removed essentially useless "Visit website" iframe and changed it to a regular link. Improves fix qbittorrent/qBittorrent#1343 2014-08-15 22:29:50 -04:00
Benjamin Hutchins
9143c440a5 Removed broken "Documentation" iframe from the webui. Improves fix qbittorrent/qBittorrent#1343 2014-08-15 22:29:50 -04:00
Benjamin Hutchins
afc5601697 Removed broken Report a bug iframe from the webui. fixes qbittorrent/qBittorrent#1343 2014-08-15 22:29:50 -04:00
sledgehammer999
2b061dab0a Sync translations from Transifex and run lupdate. 2014-08-15 13:52:14 +03:00
sledgehammer999
3e734ab4f6 Add 'Open' and 'Open Containing Folder' entries in the content's right-click menu. Closes #1143. 2014-08-15 12:53:18 +03:00
sledgehammer999
efb3936ef1 Fix the adding of .torrent files via http links which was broken by 30bc5a1da6. 2014-08-15 11:33:09 +03:00
sledgehammer999
12302ee86f Sort finished torrents by completed date when sorting by queue number. 2014-08-15 02:19:25 +03:00
sledgehammer999
bef61b695f Don't mix finished/unifinished torrents when sorting by ETA. Closes #1688. 2014-08-15 02:19:21 +03:00
sledgehammer999
e294b2f456 Added 'Ratio Limit' column. Closes #936. 2014-08-14 21:05:53 +03:00
sledgehammer999
e0190d5576 Add 'Completed' column. Closes #1241. 2014-08-14 20:22:02 +03:00
sledgehammer999
fe0df04ea8 Sync translations from Transifex and run lupdate. 2014-08-10 01:28:31 +03:00
sledgehammer999
35736b8bb4 Show disk space while retrieving metadata. Closes #1693. 2014-08-09 23:10:20 +03:00
sledgehammer999
36cba3b354 When qBT is launched with a magnet don't show it in the transferlist while the metadata are being loaded in the background. 2014-08-09 22:07:49 +03:00
sledgehammer999
30bc5a1da6 Show the loaded torrents in the transferlist when qBT is launched with a torrent/magnet and the AddNewTorrentDialog is showing. Closes #1564. 2014-08-09 21:15:17 +03:00
sledgehammer999
6cb7de33f6 Don't shrink transferlist rows when scrolling horizontally. Closes #1613. 2014-08-08 23:32:54 +03:00
sledgehammer999
061d4fc721 Revert "Fix WebUI sort by size/speed for some locales (with comma as decimal point)."
This reverts commit 87d118e87c.
2014-08-08 03:03:57 +03:00
sledgehammer999
2729abfd32 Revert "Fix WebUI sort by ratio for some locales (with comma as decimal point)."
This reverts commit c3942fb0b3.
2014-08-08 03:03:40 +03:00
sledgehammer999
d44df4f985 Don't localize double numbers in the webui. Closes #1525. 2014-08-08 02:59:48 +03:00
sledgehammer999
4908ed4e78 Run lupdate. 2014-08-08 00:12:42 +03:00
sledgehammer999
9819353c9d Sync translations from Transifex. 2014-08-08 00:11:26 +03:00
sledgehammer999
80d6a5a73e Allow disabling of OS cache. This will prevent RAM increases on Windows when seeding many files. Closes #1699. 2014-08-07 23:09:58 +03:00
sledgehammer999
7763a6d2d5 Limit max cache to 1800MiB for 32bits compiled binaries and to 4GiB for other. Closes #1698. 2014-08-07 23:09:57 +03:00
sledgehammer999
97cf824c4d Fix checkbox for 'Copy .torrent files to' setting, which was broken by b70621. Closes #1748. 2014-08-06 01:08:13 +03:00
sledgehammer999
6e6d285a02 Fix compilation on MACOS. 2014-08-05 14:54:28 +03:00
sledgehammer999
15d3df380c Migrate everything to use the new Preferences class and not access directly the qbittorrent.ini file.(webui) 2014-08-05 02:34:22 +03:00
sledgehammer999
d8d95d2195 Migrate everything to use the new Preferences class and not access directly the qbittorrent.ini file. 2014-08-05 02:34:21 +03:00
sledgehammer999
da6ce859c0 Cache preferences in memory. Closes #1272, #1523, #1694. 2014-08-05 02:33:50 +03:00
sledgehammer999
d0e0b25c9e Installer correctly associates torrents and magnet links with qBittorrent under non-admin accounts. Closes #291 #527 #579 #614 #964. 2014-07-30 00:09:57 +03:00
sledgehammer999
25c923c69e Merge pull request #1470 from glassez/assoc
Fix Windows file associations creation
2014-07-20 20:23:01 +03:00
sledgehammer999
8f32f86453 Merge pull request #1782 from sorokin/alert-disp-qt5
Fix alertdispatcher.cpp compilability on Qt5.
2014-07-20 20:21:29 +03:00
sledgehammer999
6e76d5cf41 Run lupdate. 2014-07-16 00:48:12 +03:00
sledgehammer999
eb3ca94172 Sync translations from Transifex. 2014-07-16 00:44:48 +03:00
sledgehammer999
e2748ec3ac Remove deprecated feature of separate DHT port. 2014-07-16 00:17:21 +03:00
sledgehammer999
08e14cdc26 Fix possible crashes. Closes #1814. 2014-07-14 22:00:40 +03:00
sledgehammer999
397268d4cc Merge pull request #1824 from bryanroscoe/rememberLocation
Scan Folder dialog now remembers last location
2014-07-14 09:03:47 +03:00
Bryan Roscoe
f6a324a1bd Scan Folder dialog now remembers last location
Also fix fs_utils spacing
2014-07-13 19:50:57 -05:00
Bryan Roscoe
27afbaf7e7 Fix column resizing issues 2014-07-13 17:03:58 -05:00
sledgehammer999
7419e930ab Indentation fixes. 2014-07-06 23:18:37 +03:00
sledgehammer999
d6d20074be Merge pull request #1447 from BrunoReX/hibernation
Add option to hibernate computer in Auto-Shutdown menu
2014-07-06 23:11:29 +03:00
sledgehammer999
9a18b50751 Some fixes for commit 6dabf50781. 2014-07-06 21:39:27 +03:00
sledgehammer999
3ad1cc8289 Merge pull request #1779 from sorokin/move-storage
Speedup and fix a bug in torrent moving.
2014-07-06 19:19:59 +03:00
sledgehammer999
63aa41ee42 Merge pull request #1778 from sorokin/fix-warn
Suppress warning about signed/unsigned mismatch.
2014-07-06 19:08:19 +03:00
Bruno Barbieri
00e09435b2 Add option to hibernate computer in Auto-Shutdown menu 2014-07-06 06:13:36 -03:00
Ivan Sorokin
6dabf50781 Speedup and fix a bug in torrent moving.
This commit implements a map where qbittorrent store a state of
current torrent movings. This commit speed up
torrents moving a bit and also fix a bug when qbittorrent doesn't do
cleanup action when a single torrent is moved several times without
waiting for a previous move to complete.

How it worked before.

Libtorrent has a function torrent_handle::move_storage() that allows to move a
torrent to a specific directory. This function is asynchorous. It means that
this function quits instantaneously and when the actual operation
completes the alert 'storage_moved_alert' or
'storage_moved_failed_alert' will be sent. The storage_moved_alert contains a
torrent_handle and a new path to where the torrent is moved.

During handling of storage_moved_alert, qbittorrent needs not only new path,
but also an old path to perform some of cleanup actions (like removing an old
folder if it is empty). This was achieved by storing a value named
'previous save path' in TorrentPersistentData. A previous save path is
written when move_storage() is issued and is read when
storage_moved_alert is received.

Problems.

This mechanism has two negative aspects:

1. TorrentPersistentData is very slow. As torrent_handle::move_storage() is asynchoronous,
TorrentPersistentData is responsible for more that 99.8% of time
QTorrentHandle::move_storage(). This percent could be higher when there
are lots of torrents and lower when there are few of them.

2. TorrentPersistentData stores only one previous path. But many
move_storage()'s could be issued without waiting for previous to
complete. Subsequent move_storage()'s overwrites previous save path of a
previous move.

A fix.

The fix is simple. Before issueing move_storage() the oldPath is stored in
a special map called 'torrentMoveStates'. When a storage_moved_alert
is received the map is consulted and an alert is handled.

When user moves torrent when previous moving have not yet finished, the
new location is saved in a field 'queuedPath' the same map. When
torrent moving is completed (or failed) qbittorrent attemps to perform
move again to the queued location.

Future direction.

This fix removes one slow read and one slow write to
TorrentPersistentData on torrent moving, but there is still exists
TorrentPersistentData::saveSavePath in handleStorageMovedAlert(), so
overall time for UI hang should be reduced only threefold. A speeding up
TorrentPersistentData should be addressed in a separate commit.

I don't know if I should clean up torrentMoveStates when torrent is
deleted. In any case, torrent could be deleted when corresponding alert
is in alert queue. So if we decide to clean up torrentMoveStates, then
we should not treat receiving alert from unknown torrent as a error.
2014-06-23 11:21:24 +04:00
Ivan Sorokin
ce9da1ba1e Fix alertdispatcher.cpp compilability on Qt5. 2014-06-23 00:14:58 +04:00
Ivan Sorokin
fddd337e34 Suppress warning about signed/unsigned mismatch. 2014-06-22 19:48:21 +04:00
sledgehammer999
273725d9dc Fix file renaming. 2014-06-18 23:41:52 +03:00
sledgehammer999
c673b1a7d7 Bring mainwindow in front when notification is clicked and other windows are in front. 2014-06-18 23:22:25 +03:00
sledgehammer999
7e9b47948b Run lupdate. 2014-06-10 23:22:39 +03:00
sledgehammer999
66c08bcc5d Sync translations from Transifex. 2014-06-10 23:19:43 +03:00
sledgehammer999
03072050fb Update search engines versions.txt file. Closes #1745. 2014-06-08 23:58:30 +03:00
sledgehammer999
d58d87a691 Use completed time from libtorrent directly. Closes #1726. 2014-06-07 14:44:08 +03:00
sledgehammer999
07f76f4939 Merge pull request #1733 from glassez/fix_build
Fix building with Qt5 (missing QObject decl).
2014-06-04 21:55:52 +03:00
sledgehammer999
a361c0ea03 Use the torrent_status for the queue_position too. 2014-06-04 20:26:23 +03:00
sledgehammer999
83ba59de51 Merge pull request #1720 from glassez/webui
WebUI Fixes
2014-06-04 19:51:45 +03:00
Vladimir Golovnev (Glassez)
446a9efe9e Fix building with Qt5 (missing QObject decl). 2014-06-04 17:38:35 +04:00
Vladimir Golovnev (Glassez)
ec092414b5 Fix Windows file associations creation.
Now qBittorrent create global ProgId during installation (using HKLM hive)
and allow to associate .torrent files with it (using HKCU).
2014-06-04 17:37:28 +04:00
Vladimir Golovnev (Glassez)
9f310318c2 Use new JSON parser/generator.
Qt4: Use QJson (http://qjson.sourceforge.net).
Qt5: Use native Qt JSON API.
2014-06-04 17:01:41 +04:00
Vladimir Golovnev (Glassez)
f9c3719d12 Add QJson files. 2014-06-04 17:01:40 +04:00
Vladimir Golovnev (Glassez)
6e59877cee Remove old JSON classes. 2014-06-04 17:01:39 +04:00
Vladimir Golovnev (Glassez)
268562bff3 Fix HTTP request parsing on Qt5. 2014-06-04 17:01:39 +04:00
sledgehammer999
b198c074d6 Merge pull request #1730 from sorokin/no-dyn-cast
split handling of alerts into several functions and use switch instead of dynamic_casts
2014-06-04 14:57:56 +03:00
Ivan Sorokin
510818d631 Replaced dynamic_cast with switch on alert type.
Conflicts:
	src/qtlibtorrent/qbtsession.cpp
2014-06-04 11:08:31 +04:00
Ivan Sorokin
1244a46cbb Extract alert handling to separate functions. 2014-06-04 11:08:31 +04:00
sledgehammer999
27c641ffaa Rework the GUI code for private torrents. 2014-06-04 00:49:03 +03:00
sledgehammer999
b9bdd1c985 Merge pull request #1731 from sorokin/cr
copyright notices for alert dispatcher
2014-06-04 00:47:40 +03:00
Ivan Sorokin
32c203d2e6 Copyright notices for alert dispatcher. 2014-06-04 01:40:00 +04:00
sledgehammer999
a6fa27467f Fix previous commits. 2014-06-03 21:19:25 +03:00
sledgehammer999
c8035dff1e Merge pull request #1703 from sorokin/alerts
Use torrent_status to be more efficient.
2014-06-03 21:18:39 +03:00
Ivan Sorokin
c2a23f2265 use stats_alert in TorrentSpeedMonitor
Conflicts:
	src/qtlibtorrent/qbtsession.cpp
2014-06-02 00:35:27 +04:00
Ivan Sorokin
6f38616193 extract torrent statistics from torrent speed monitor to separate file 2014-06-02 00:31:45 +04:00
Ivan Sorokin
b50d7331c7 use post_status_update()
Conflicts:
	src/qtlibtorrent/qbtsession.cpp
2014-06-02 00:31:45 +04:00
Ivan Sorokin
eb46326d23 use set_alert_dispatch instead of timer to get an alerts from libtorrent
libtorrent allows setting a custom dispatch handler that is invoked in
libtorrent thread when new alerts are incoming. QAlertDispatcher is a
class that allows to translate these alerts to UI thread.

The concept is very simple:

1. On initialization QAlertDispatcher constructor calls set_alert_dispatch() passing
 QAlertDispatcher::dispatch as argument.

2. On deinitialization destructor calls set_alert_dispatch() passing a empty
 function. (line 25) libtorrent handles thos and switches back to queuing
 alerts in queue.

3. QAlertDispatcher::dispatch() adds alert to queue and notifies UI thread that new
 alerts are incoming. Enqueuing is done in function enqueueToMainThread().
 The invariant of class is the following:

    if alert queue is not empty, in message loop of UI thread contains a queued
    invocation of deliverSignal().

4. When message loop is pumped UI thread execute deliverSignal() function.
 It emit appropriate signal and if queue is still not empty (for example
 if slot doesn't grab alerts) rewind enqueuing to main thread.

This is a idea. But here is some details.

1. When QAlertDispatcher is destoyed, libtorrent still can call
QAlertDispatcher::dispatch a few times after destruction. This is
handled by passing a "tag". A tag is a object that references QAlertDispatch.
Tag could be invalidated. So on destruction QAlertDispatcher invalidates a tag
and then unsubscribes from alerts. When QAlertDispatcher::dispatch is called
with invalid tag it simply discard an alert.

    Therefore we could drop a few alerts during unsubscription. So we unsubscribe
    only at exit when missing some alerts is not a problem.

2. Another problem is in QBtSession::saveFastResumeData(). It pumps alert
queue synchronously. My first attempt was to destroy QAlertDispatcher
and then pump libtorrent queue. But as I was afraid of losing alerts I
supported synchronous querying of alerts in QAlertDispatcher.
(QAlertDispatcher::getPendingAlerts)

Conflicts:
	src/qtlibtorrent/qbtsession.cpp
2014-06-02 00:31:45 +04:00
Ivan Sorokin
329b754197 cache torrent_status 2014-06-02 00:31:42 +04:00
Ivan Sorokin
5af778bc93 don't make the same request to TorrentModelItem twice 2014-05-25 12:32:09 +04:00
Ivan Sorokin
1c98c11dd0 speed up icon loading 2014-05-25 12:32:09 +04:00
Ivan Sorokin
bbc4080a5d fewer calls to hash() 2014-05-25 12:32:09 +04:00
sledgehammer999
5d2663660d Count magnet links in the 'downloading' filter and make them prevent system inhibition. Closes #1558 2014-05-15 22:01:27 +03:00
sledgehammer999
659e0b7fef Fix tracker announcing problem(hit-and-run) when many torrents are being active. Closes #1571 2014-05-15 21:37:31 +03:00
sledgehammer999
c0b3ad7ee3 Fix crash when the selected torrent disappears from the transfer list. Closes #1661 2014-05-15 20:59:34 +03:00
sledgehammer999
81fa246687 Merge pull request #1685 from sorokin/fix-exception-in-prop-widget
Don't show availability bar for magnet links
2014-05-15 00:26:41 +03:00
Ivan Sorokin
765253234c Don't show availability bar for magnet links
This commit fixes an exception in PropertiesWidget:

"Caught exception in PropertiesWidget::loadDynamicData():  invalid
torrent handle used"

This exception occurs when an user clicks on a torrent that doesn't have
a metadata (when a magnet link is not resolved yet). One should not call
torrent_handle::get_torrent_info when torrent doesn't have a metadata.
2014-05-15 01:21:56 +04:00
sledgehammer999
e0ae505bb9 Fix nox build on MAC OSX. 2014-05-13 19:23:58 +03:00
sledgehammer999
5dea64ca16 Merge pull request #1676 from sorokin/fix-open-file
fix issue #1674: AddNewTorrentDialog is shown again and again even if checkbox "dont ask me again" is set
2014-05-12 14:52:47 +03:00
Ivan Sorokin
93bacc62f1 fix issue #1674: AddNewTorrentDialog is shown again and again even if checkbox "dont ask me again" is set 2014-05-11 19:37:33 +04:00
sledgehammer999
baaf575eee Fix libtorrent 1.0.0 compilation. Closes #1659 2014-05-10 00:13:20 +03:00
sledgehammer999
e6b2919eb2 Support out of srcdir builds. 2014-05-08 00:57:11 +03:00
sledgehammer999
9714b2ede9 Fix weird ratio values when torrent was imported or downloaded history was lost due to crash. 2014-05-05 21:30:15 +03:00
sledgehammer999
f99f5f5c7e Enable system tray in MACOSX (Nick Korotysh). 2014-05-05 21:23:32 +03:00
sledgehammer999
c5804aac3c Update README file. 2014-05-04 16:28:29 +03:00
sledgehammer999
3c61e2a881 Merge pull request #1437 from Fisiu/master
Use markdown for readme file.
2014-05-04 06:24:04 -07:00
Mariusz Fik
756584043b Use markdown in README and display travis-ci build status for master branch.
Signed-off-by: Mariusz Fik <fisiu@opensuse.org>
2014-05-04 15:17:36 +02:00
sledgehammer999
b93d093af1 Updated Changelog. 2014-05-04 15:41:47 +03:00
sledgehammer999
32becf1fca Fix RSS feed icon. The tmp file gets deleted in the feed destructor. Closes #1639 2014-05-04 15:38:28 +03:00
sledgehammer999
4376e81f78 Fix autoupdater. Send our user-agent to sourceforge.net
Conflicts:
	src/programupdater.cpp
2014-05-04 15:38:12 +03:00
sledgehammer999
71e5c9e17b Fix code style.
(thanks to glassez)
2014-05-04 15:31:27 +03:00
sledgehammer999
08af87abb8 Fix Travis. 2014-05-04 15:31:26 +03:00
sledgehammer999
380438f99b Migrate the build system to autotools. 2014-05-04 15:28:58 +03:00
sledgehammer999
e8c14f3507 Use the new Http classes. 2014-05-04 15:28:56 +03:00
sledgehammer999
6096506bd6 Implement alternatives to QHttpRequestHeader and QHttpResponseHeader. 2014-05-04 15:28:55 +03:00
sledgehammer999
ef3f7d18c9 Fix compilation with Qt5. 2014-05-04 15:28:54 +03:00
Vladimir Golovnev (Glassez)
ba1f4a9b7f Update QtSingleApplication. 2014-05-02 00:00:05 +03:00
Nick Tiskov
138c3dc3cb Fix translations bundled with Qt. 2014-05-02 00:00:04 +03:00
Vladimir Golovnev (Glassez)
ce3aac5f9d Fix functions and macros using to support both Qt4 and Qt5. 2014-05-02 00:00:03 +03:00
sledgehammer999
763d8a392f Revert "Point travis to the new svn repo of libtorrent."
This reverts commit f1d807da4f.
2014-05-01 23:56:21 +03:00
sledgehammer999
f1d807da4f Point travis to the new svn repo of libtorrent. 2014-03-01 13:00:44 +02:00
sledgehammer999
0303d2bf55 Merge pull request #1421 from alfrix/queue_sort
Fix queue sorting order fixes #1120
2014-02-11 00:02:45 +02:00
alfrix
85cfe464f9 Fix queue sorting order fixes #1120 2014-02-09 21:27:42 -03:00
sledgehammer999
33b0a2b55f Fix missing percentage signs. Closes #1392. 2014-02-06 00:49:17 +02:00
sledgehammer999
72ae2cb503 Pretty up last commit. 2014-02-05 21:22:14 +02:00
sledgehammer999
b2544f867c Merge pull request #1365 from alfrix/master
Add button for links in toolbar (fixes #450)
2014-02-05 21:19:57 +02:00
sledgehammer999
acb32d41fa Merge pull request #1375 from glassez/win-startup
Fix qBittorrent run on Windows startup.
2014-02-05 21:12:23 +02:00
sledgehammer999
3cd72e5e63 Merge pull request #1382 from bob23450/master
Fix nox build. Closes #1368
2014-02-05 21:05:48 +02:00
bob23450
6b26adfed2 Fix nox build. Closes #1368 2014-02-05 09:17:27 +01:00
Vladimir Golovnev (Glassez)
64b06c4612 Fix qBittorrent run on Windows startup. 2014-02-03 21:12:47 +04:00
alfrix
494fc54e6f Add button for links in toolbar (fixes #450 2014-02-02 16:48:51 -03:00
sledgehammer999
f5cd39cfba Merge pull request #1328 from glassez/webui-sort
Fix WebUI sort by size/speed (part 2)
2014-02-02 10:12:01 -08:00
sledgehammer999
c59793b33f Correctly restore 'name' column width when loading magnet links in the 'Add new torrent dialog'. Closes #1334. 2014-02-02 20:05:51 +02:00
sledgehammer999
202006bdd1 Reuse code in AddNewTorrentDialog. #894. 2014-02-02 20:05:50 +02:00
sledgehammer999
7348b8903c Correctly resize 'name' column of the content tab. Closes #1360. 2014-02-02 20:05:14 +02:00
sledgehammer999
a27867ae2b Bring dialog boxes in the front when qbt doesn't have focus.
Code inspired by glassez patch.
2014-02-01 14:02:37 +02:00
Vladimir Golovnev (Glassez)
c3942fb0b3 Fix WebUI sort by ratio for some locales (with comma as decimal point). 2014-01-27 08:44:36 +04:00
Vladimir Golovnev (Glassez)
87d118e87c Fix WebUI sort by size/speed for some locales (with comma as decimal point). 2014-01-27 08:39:47 +04:00
sledgehammer999
a5a0ca7159 Don't re-announce to trackers when torrent is paused. Closes #1310. 2014-01-26 16:29:53 +02:00
sledgehammer999
77329a2609 Launch external programs async and don't block. Closes #1252. 2014-01-26 14:28:58 +02:00
sledgehammer999
bf291dbfb1 Don't show a popup menu when no torrent is selected. 2014-01-26 14:28:57 +02:00
sledgehammer999
0a3dadf3fb Merge pull request #1325 from Gelmir/stats_percent
Fix missing percent sign in stats dialog
2014-01-26 04:05:18 -08:00
sledgehammer999
9ccb4e2781 Add our WM_CLASS in the .desktop file so window managers know how to group our windows. 2014-01-26 13:46:50 +02:00
sledgehammer999
3404d1e05f Explicitle tell that we don't support freedesktop's startup notify standard. Fixes GNOME issues. Closes #1217. 2014-01-26 13:45:33 +02:00
sledgehammer999
2f0b869639 Fix overstretched options dialog. Closes #1293. 2014-01-26 13:29:29 +02:00
sledgehammer999
5afb0a1ab0 Fix windows file association. 2014-01-26 13:09:37 +02:00
Nick Tiskov
ab8ff9f362 Fix missing percent sign in stats dialog 2014-01-26 15:05:09 +04:00
sledgehammer999
aaa723d3ec Run lupdate. 2014-01-26 02:18:36 +02:00
sledgehammer999
79b3e5ab60 Merge pull request #1324 from Gelmir/rename_amount_columns
Use shorter names for amount columns in main UI
2014-01-25 15:48:40 -08:00
Nick Tiskov
1dd8fa3c58 Use shorter names for amount columns in main UI 2014-01-25 23:28:34 +04:00
sledgehammer999
b7f84dabf5 Improvements on the behavior of the program updater(closes #1282):
1. Check for updates every hour
2. Don't check again for this session if the user chose to ignore the new version
3. Display a message if the user checked for updates via the menu item and there isn't one
4. Remove dead code
2014-01-25 21:03:24 +02:00
sledgehammer999
7428c2c0b1 Fix extratorrents search plugin. 2014-01-25 21:03:23 +02:00
sledgehammer999
8bbdcc78ce Statistics: handle case where user has gone back to older version. 2014-01-25 21:03:23 +02:00
sledgehammer999
e4e3a56c9d Merge pull request #1323 from glassez/webui_sort
Fix sorting by size in WebUI with Cyrillic languages
2014-01-25 10:47:30 -08:00
Vladimir Golovnev (Glassez)
7fce5ab268 Fix sorting by size in WebUI when non-default locale used. 2014-01-25 22:30:22 +04:00
Vladimir Golovnev (Glassez)
1aa70bedb7 Improve HttpConnection::translateDocument(). 2014-01-25 22:29:15 +04:00
sledgehammer999
36ff9be42e Merge pull request #1319 from Gelmir/fix_missing_sep
Fix missing separator in QDesktopServices methods
2014-01-23 09:47:07 -08:00
Nick Tiskov
d0ebcae069 Fix missing separator in QDesktopServices methods 2014-01-23 19:57:47 +04:00
sledgehammer999
b8040e4b4d Allow 2 decimals when setting the share ratio. Closes #1303. 2014-01-23 00:25:09 +02:00
sledgehammer999
532be11b2a Update Changelog. 2014-01-23 00:03:27 +02:00
sledgehammer999
be097048fd Fix share ratio text. 2014-01-22 23:43:57 +02:00
sledgehammer999
c167b47a2e Merge pull request #1095 from Gelmir/separators
Use native separators where appropriate
2014-01-22 10:28:58 -08:00
Nick Tiskov
5854a2883b Convert fsutils class to namespace 2014-01-22 20:12:46 +04:00
Nick Tiskov
bd9dcf1247 Hack around QDesktopServices::openUrl to support network shares 2014-01-22 20:12:42 +04:00
Nick Tiskov
6e77d12ac6 Update dialogs 2014-01-22 19:37:32 +04:00
Nick Tiskov
4390530cbe Update Main UI 2014-01-22 19:37:31 +04:00
Nick Tiskov
ae8356aae5 Update RSS Classes 2014-01-22 19:37:30 +04:00
Nick Tiskov
a8e57d3a7e Update misc classes 2014-01-22 19:37:30 +04:00
Nick Tiskov
6346716df6 Update SearchEngine classes
Guaranteed to work with qt-style separators internally; guaranteed to call native OS environment using native separators
2014-01-22 19:37:29 +04:00
Nick Tiskov
cb7f35d994 Update WebUI classes
Guaranteed to show paths with native separators to user
2014-01-22 19:37:28 +04:00
Nick Tiskov
237420546b Update QBtSession
Guaranteed to accept strings with native and qt-style separators; guaranteed to use qt-style separators internally, guaranteed to call libtorrent API with native separators
2014-01-22 19:37:27 +04:00
Nick Tiskov
32b90a7b6d Update QTorrentHandle
Guaranteed to accept strings with both native and qt-style separators; guaranteed to use native separators with libtorrent API
2014-01-22 19:37:26 +04:00
Nick Tiskov
b706210349 Update options UI
Guaranteed to work with strings with qt-style separators internally, shows string with native separators to the user
2014-01-22 19:37:26 +04:00
Nick Tiskov
48250c7b76 Update Preferences class
Preferences class setters are guaranteed to accept string with both native and qt-style separators, getters are guaranteed to return string with qt-style separators
2014-01-22 19:37:25 +04:00
Nick Tiskov
1334386a1b Rework fsutils class to only use Qt-style separators
fsutils methods are guaranteed to accept strings with both native and qt-style separators and return strings with qt-style separators where appropriate
2014-01-22 19:37:24 +04:00
sledgehammer999
3749a30af2 Improvements on accurateDoubleToString(). 2014-01-21 17:40:52 +02:00
sledgehammer999
bb7c2dd9c6 Improvements on statistics saving. 2014-01-21 17:40:30 +02:00
sledgehammer999
0d139234fe Fix condition checking in statistics saving. 2014-01-21 16:57:20 +02:00
sledgehammer999
441d1d08ba Convert more accurately decimal numbers to text. 2014-01-21 02:12:27 +02:00
sledgehammer999
4d3672f894 Save statistics every 15min and only if there was new traffic. Fixes #1288 and partially #1272. 2014-01-21 02:12:27 +02:00
sledgehammer999
3ee5c89856 Reposition statistics menu item. 2014-01-21 02:12:26 +02:00
sledgehammer999
b4f4b4412a Merge pull request #1299 from btdigg/master
Fix issue with SSL under Win32 (btdigg python2)
2014-01-19 12:26:10 -08:00
BTDigg research team
99a5695fb7 Fix issue with SSL under Win32 2014-01-19 21:03:53 +01:00
sledgehammer999
3159012dbb Merge pull request #1286 from alderz/fix_peer_sorting
Fix peers and seeds sorting in transfer list.
2014-01-18 09:57:56 -08:00
sledgehammer999
e30dee6319 Fix 'preview file' regression. Closes #1285. 2014-01-18 15:03:50 +02:00
Angel Alonso
aa9001522c Fix peers and seeds sorting in transfer list.
When active peers (or seeds) of two torrents are the same we sort by total peers
(or seeds).
2014-01-18 11:53:44 +01:00
sledgehammer999
ceba1dc734 Don't count paused torrents for the autoshutdown. Closes #1280. 2014-01-16 16:17:10 +02:00
sledgehammer999
a92148424f Merge pull request #1269 from lavoiesl/retina
Added basic retina support
2014-01-12 05:13:27 -08:00
Sébastien Lavoie
e7a95f310e Issue #1251 - Added basic retina support 2014-01-12 08:06:41 -05:00
sledgehammer999
1be62d0db5 Merge pull request #1266 from Gelmir/rss_doublesave_fix
Fix rss settings corruption when checking regexp box. Closes #1191.
2014-01-12 02:39:39 -08:00
Nick Tiskov
150e9bb452 Fix rss settings corruption when checking regexp and going to other rule. 2014-01-11 23:25:41 +04:00
sledgehammer999
1b8083bbc6 Correctly remove isohunt engine. 2014-01-11 18:31:56 +02:00
sledgehammer999
5bf7106e5c Merge pull request #1258 from Gelmir/selective_reannounce
Support selective reannounce with libtorrent 1.0
2014-01-11 08:20:15 -08:00
sledgehammer999
eef45adb44 Merge pull request #1259 from Gelmir/proto
Show actual protocol for listen_*_alert
2014-01-11 08:19:57 -08:00
sledgehammer999
7db279998a Remove isohunt search engine. 2014-01-11 18:13:32 +02:00
sledgehammer999
a479aaa28e Fix piratebay search engine. 2014-01-11 18:11:08 +02:00
Nick Tiskov
f319678457 Support selective reannounce with libtorrent 1.0 2014-01-08 15:25:53 +04:00
Nick Tiskov
d9ee9c7b0f Show actual protocol for listen_succeeded_alert and listen_failed_alert log messages.
Delete protocol mentioning from setListeningPort
2014-01-08 14:06:26 +04:00
sledgehammer999
0ce28eb28f Merge pull request #1250 from botanegg/cppcheck
Corrections from running cppcheck v2.
2014-01-05 16:22:18 -08:00
Konstantin Goncharik
f29c04d935 In preferences.h now argument is const references 2014-01-05 20:06:29 +08:00
Konstantin Goncharik
a77a6b5a8b In statsdialog.cpp fix initialization iEnd 2014-01-05 19:41:58 +08:00
sledgehammer999
ab89edb589 Merge pull request #1238 from botanegg/cppcheck
Corrections from running cppcheck.
2014-01-04 15:07:48 -08:00
sledgehammer999
959cbb9308 Fix notifications with xfce4-notifyd. 2014-01-04 19:40:05 +02:00
sledgehammer999
f898443e78 Force write settings to disk before exiting. 2014-01-04 19:24:48 +02:00
Konstantin Goncharik
8a882e7323 In smtp.cpp fix 'ct' reassign. 2014-01-04 01:46:11 +08:00
Konstantin Goncharik
edd7f8e5f5 In rssdownloadrule.{cpp,h} 'RssDownloadRule::operator==' made const. 2014-01-04 01:29:31 +08:00
Konstantin Goncharik
a2b3ad7958 In qbtsession.cpp exception made caught by reference 2014-01-04 01:24:32 +08:00
Konstantin Goncharik
bc22447a6a In qtorrenthandle.cpp exception made caught by reference 2014-01-04 01:19:30 +08:00
sledgehammer999
423d60cced Delete temporary after they aren't needed. Closes #1188. 2014-01-02 22:43:17 +02:00
sledgehammer999
ecfd06cfe9 Ensure that the options window will always be placed onscreen. Closes #1226. 2014-01-02 21:09:45 +02:00
sledgehammer999
ed54f0f7c3 Ensure that at least one column in the tranferlist is always visible. Closes #1165. 2014-01-02 20:49:35 +02:00
sledgehammer999
fce950b788 Allow to resize the columns in Add New Torrent dialog. Closes #1207 #676 2014-01-02 19:44:23 +02:00
sledgehammer999
5512576022 Preview now correctly uses the selected file. Closes #1222 #1182. 2014-01-02 18:29:05 +02:00
sledgehammer999
3daae802eb Merge pull request #1221 from arvidn/master
compatibility fixes for libtorrent 1.0 (trunk)
2014-01-01 10:58:19 -08:00
arvidn
c1c824bcf7 don't use deprecated libtorrent functions 2014-01-01 10:04:22 -08:00
arvidn
3b4f9d2eeb fix libtorrent 1.0 compatibility 2013-12-31 17:00:14 -08:00
sledgehammer999
e380a17c82 Do cleanup work in an earlier stage to ensure correct conf saving. 2013-12-31 00:44:04 +02:00
sledgehammer999
1648cdc4bc Sort labels in 'Add new torrent' dialog. Closes #1150 #411. 2013-12-29 18:47:24 +02:00
sledgehammer999
86b8f3190a Merge pull request #1201 from qwerty12/master
Make sleep and shutdown functions work on systemd's logind
2013-12-26 08:09:51 -08:00
sledgehammer999
e6b20d461e Merge pull request #1199 from Gelmir/stats_new
Minor improvements to stats gathering/dialog
2013-12-26 08:08:30 -08:00
Faheem Pervez
22c8f600df Make sleep and shutdown functions work on systemd's logind 2013-12-23 11:41:07 +00:00
sledgehammer999
e6de7d2d3a Fix previous commit. 2013-12-22 23:46:03 +02:00
sledgehammer999
88b5550540 Second attempt at fixing saving settings on shutdown. 2013-12-22 23:11:53 +02:00
Nick Tiskov
b4e9a9bbc0 1. Use a better icon for stats dialog.
2. Use more reliable session_status.total_download/upload for statistics
2013-12-23 00:01:21 +04:00
sledgehammer999
c87856d846 Lock toolbar in place. Closes #1144. 2013-11-30 14:15:57 +02:00
sledgehammer999
2b7c3a1547 Fix resizing grip location. Closes #1146. 2013-11-30 14:05:18 +02:00
sledgehammer999
3f434570ea Run lupdate. 2013-11-30 13:19:25 +02:00
sledgehammer999
046420e7bd Fix build system under Ubuntu 13.10. Closes #1061 #1130 #1124. 2013-11-26 23:49:30 +02:00
sledgehammer999
08e369e52d Merge pull request #1125 from Gelmir/typo
Fix 'peer from PEX' message
2013-11-24 15:04:02 -08:00
Nick Tiskov
5d6e71c9ca Fix 'peer from PEX' message 2013-11-24 18:21:31 +04:00
sledgehammer999
4a84b6a911 Fix linux compilation. 2013-11-23 15:33:01 +02:00
sledgehammer999
b0e8c1139f Merge pull request #1109 from doadin/patch-1
Fix Typo
2013-11-23 05:07:29 -08:00
sledgehammer999
d7da120063 Run lupdate. 2013-11-23 15:05:37 +02:00
sledgehammer999
cc92f172e3 Check for program updates every 15min and allow the user to manually check for updates through the help menu. 2013-11-23 14:58:03 +02:00
sledgehammer999
e637ff188c Output a more generic message when blocking IPs and don't use italics in the log. 2013-11-23 13:30:50 +02:00
sledgehammer999
35e9253e9c Run lupdate. 2013-11-21 18:37:53 +02:00
sledgehammer999
7345a64696 Add tooltip for the peers' flags. Closes #1068. 2013-11-21 18:13:21 +02:00
sledgehammer999
b1e682ef41 Improve the message of the deletion dialog. Closes #1073. 2013-11-21 18:13:19 +02:00
sledgehammer999
475aa6aad8 Merge pull request #1105 from Gelmir/stats
Add statistics dialog
2013-11-21 06:38:07 -08:00
sledgehammer999
2dc7708c36 Improve detection of conf.pri. 2013-11-20 00:30:12 +02:00
sledgehammer999
8d04b04aae Revert "Don't prefer TCP connections over uTP."
This reverts commit a052963775.
2013-11-20 00:30:00 +02:00
doadin
f7dc57ee97 Fix Typo 2013-11-18 16:38:43 -05:00
sledgehammer999
3d9f3eb1b3 Correctly update tracker tier number in the trackers tab. Closes #1075. 2013-11-18 01:32:08 +02:00
sledgehammer999
683aca7fdf Fix WebUI link to 'Anonymous mode' explanation. Closes #1093. 2013-11-17 21:17:48 +02:00
Nick Tiskov
f12b64d36a Add dialog to show statistics 2013-11-17 02:16:25 +04:00
Nick Tiskov
687e7a1343 Collect and save alltime UL/DL samples 2013-11-17 02:05:44 +04:00
sledgehammer999
144dd5c2a8 Correctly detect if the browser supports gzip compression. 2013-11-16 21:48:20 +02:00
sledgehammer999
35da156ad2 WebUI: Don't gzip too small payloads. 2013-11-16 20:24:56 +02:00
sledgehammer999
f09328c13c Fix inhibit system functionality. Closes #766. 2013-11-16 19:29:50 +02:00
sledgehammer999
ad69cbb318 Merge pull request #1099 from birdie-github/master
Fix Help -> About and always show a peer IP address as a tooltip
2013-11-16 08:55:03 -08:00
Artem S. Tashkinov
ea4ab62531 Always show a peer IP address as a tool tip
Helps to see a peer IP address when reverse name resolution is enabled.
2013-11-14 18:04:36 +05:00
Artem S. Tashkinov
8b874f5538 Remove hardcoded Lucida Grande and decrease a font size 2013-11-14 17:24:30 +05:00
sledgehammer999
d1921933f4 Merge pull request #1091 from ZachThibeau/master
added fontfix for osx. Closes #1017
2013-11-11 13:38:45 -08:00
Zach Thibeau
2a7aa98afd added fontfix for osx 2013-11-11 03:38:20 -05:00
sledgehammer999
1c2b54a935 Merge pull request #1060 from alderz/master
Add a keyboard shortcut to "Add link to torrent" and fix some png sRGB profiles.
2013-11-10 02:58:20 -08:00
sledgehammer999
44edd75c1e Merge pull request #1083 from ZachThibeau/master
Updated search plugin's URL
2013-11-10 02:57:03 -08:00
Zach Thibeau
dac46e02c3 Updated search plugin's URL 2013-11-09 23:39:29 -05:00
sledgehammer999
3bc1d4afd0 Fix indentation in lineedit code. 2013-11-10 04:11:01 +02:00
sledgehammer999
60a1937bf9 Expand folders when filtering files. Closes #1076. 2013-11-10 04:10:38 +02:00
sledgehammer999
68cc35e3fd Hide empty folders after filtering. Closes #74. 2013-11-10 03:30:04 +02:00
sledgehammer999
b909dd41c5 Small optimization of WebUI responses when there isn't a data payload. 2013-11-09 20:03:54 +02:00
sledgehammer999
c284fd5412 Case insensitive sort in Peers list. Closes #1066. 2013-11-09 20:03:33 +02:00
sledgehammer999
0b41e3958e Revert "fix missing conf.pri error". The WARNING message during configure is harmless. The file is found during make. Closes #1042.
This reverts commit 807f1cfb94.
2013-11-09 19:45:36 +02:00
sledgehammer999
51a9a9aabb Make all columns and headers use the same text alignment in the transferlist. 2013-11-09 19:39:13 +02:00
sledgehammer999
6bfdf80a4d Sync translations from Transifex. 2013-11-05 23:51:18 +02:00
sledgehammer999
4003d7f951 Fix compilation with qt < 4.8.0. Closes #1043. 2013-11-05 23:06:20 +02:00
sledgehammer999
ade66629b1 Fix WebUI gzip compression. Closes #1037. 2013-11-05 22:57:33 +02:00
Angel Alonso
7c897f70e2 Strip some png to fix incorrect sRGB profiles.
libpng complained about incorrent sRGB profiles in some png's.
"libpng: iCCP: known incorrect sRGB profile".
2013-11-01 20:23:02 +01:00
Angel Alonso
139434b40c Add a key shortcut to "Add link to torrent..."
"Ctrl-Shift-O" will open the "Add link to torrent..." window.
2013-11-01 19:47:05 +01:00
sledgehammer999
ae63830b7d Update Translator's info. 2013-10-27 16:07:02 +02:00
sledgehammer999
4dc800cf0c Increase the .torrent size limit when a link to torrent is provided. Closes #879. 2013-10-27 15:33:55 +02:00
sledgehammer999
ecb6dbabda Run lupdate. 2013-10-24 23:27:27 +03:00
sledgehammer999
660e0650ce Allow to clear the UI lock password. Closes #973. 2013-10-24 23:23:56 +03:00
sledgehammer999
12082a14b7 Run lupdate [skip ci] 2013-10-24 01:58:39 +03:00
sledgehammer999
0da5c8be3a Fix typo again. 2013-10-24 01:57:57 +03:00
sledgehammer999
0070c66339 Run lupdate. 2013-10-24 00:27:13 +03:00
sledgehammer999
53e0526a1e Windows: Don't remove file associations if they aren't our own. 2013-10-24 00:15:22 +03:00
sledgehammer999
27d72bd9bf Fix 'append label to save path' with magnet links. 2013-10-23 23:58:42 +03:00
sledgehammer999
fc3da963d2 Revert "Remove "Force reannounce" action". Closes #958. 2013-10-23 23:58:41 +03:00
sledgehammer999
45e9ca4b11 Update Changelog. [skip ci] 2013-10-23 22:40:27 +03:00
sledgehammer999
cff6db201f Run lupdate. 2013-10-23 22:25:15 +03:00
sledgehammer999
b4dca951b2 Drop libtorrent 0.15.x support. 2013-10-23 22:19:58 +03:00
sledgehammer999
243abaf524 Improve comment in gCompress(). 2013-10-23 22:19:57 +03:00
sledgehammer999
870aba8439 Document better some translatable strings. 2013-10-23 22:19:56 +03:00
sledgehammer999
585954c988 Fix typo. 2013-10-23 22:19:55 +03:00
sledgehammer999
1ca1c4be7e Run lupdate. 2013-10-22 22:52:24 +03:00
sledgehammer999
1c128c65f0 Don't use deprecated function when adding magnets. 2013-10-22 22:29:25 +03:00
sledgehammer999
8f955fe110 Distinguish more torrent states. 2013-10-22 21:34:27 +03:00
sledgehammer999
bd9c231a0b Enable gzip compression in the webui. 2013-10-21 00:04:32 +03:00
sledgehammer999
ccc46a0a77 Added instructions for managing translations with Transifex. 2013-10-20 20:29:37 +03:00
sledgehammer999
ba464ab0f5 Run lupdate. 2013-10-20 20:29:36 +03:00
sledgehammer999
32ef3035b7 Update transifex config file. 2013-10-20 20:29:33 +03:00
sledgehammer999
2b9f79fafe Expose new translations and improve language code. 2013-10-20 20:29:32 +03:00
sledgehammer999
88c64ccf0a New translation: English(United Kingdom). 2013-10-20 20:29:31 +03:00
sledgehammer999
3527fc338b New translation: English(Australia). 2013-10-20 20:29:31 +03:00
sledgehammer999
751980e87c Synced .desktop file translation from Transifex. 2013-10-20 20:29:30 +03:00
sledgehammer999
71fa34da13 Sync translations from Transifex. 2013-10-20 20:29:29 +03:00
sledgehammer999
e50d5611f8 Merge pull request #1007 from Gelmir/fix_showrss
Fix RSS items not being marked read when the item is a magnet link.
2013-10-20 08:22:00 -07:00
sledgehammer999
82cd484fad Merge pull request #1008 from Gelmir/null-ref
Fix possible null-pointer dereference.
2013-10-20 08:21:14 -07:00
sledgehammer999
8a8c2fbabf Merge pull request #977 from leigh123linux/patch-1
Revert 984acc581. fix missing conf.pri error
2013-10-20 04:29:06 -07:00
sledgehammer999
18b9de831f Turn off the scheduler when the user manually changes the rate limits mode. 2013-10-20 14:18:47 +03:00
sledgehammer999
d0893bc1c7 Allow the scheduler to have a start time that's after the end time. Closes #980. 2013-10-20 13:46:55 +03:00
sledgehammer999
c9a8430463 Make the scheduler timeout every 1.5s. 2013-10-20 13:28:35 +03:00
sledgehammer999
9e7b5913b7 Correct version.pri 2013-10-20 13:25:21 +03:00
Nick Tiskov
abde611391 Fix possible null-pointer dereference. 2013-10-20 01:33:22 +04:00
Nick Tiskov
1341b7ea78 Fix RSS items not being marked read when the item is a magnet link. 2013-10-20 00:59:36 +04:00
sledgehammer999
ac622077db Merge pull request #983 from Gelmir/sched_fixup
Remember Alt bandwidth on shutdown.
2013-10-19 10:58:27 -07:00
Nick Tiskov
382155bc26 Prepare bandwidth scheduler code 2013-10-19 21:35:26 +04:00
sledgehammer999
af11343945 Partial revert of e7c27c9b8b. Single file preview works again. 2013-10-15 00:39:36 +03:00
sledgehammer999
5bf9d7d69a Revert "Remove obsolete IP_HIDDEN column from peer list." Closes #970.
This reverts commit c8d51e91f4.
2013-10-14 14:57:51 +03:00
sledgehammer999
ff789fc493 Show external IP in the log. Closes #968. 2013-10-13 23:19:15 +03:00
sledgehammer999
97fe948f6c Expose all available translation in the WebUI. Closes #976. 2013-10-13 22:17:11 +03:00
leigh123linux
807f1cfb94 fix missing conf.pri error 2013-10-13 11:05:30 +01:00
sledgehammer999
4ad68ac800 Bump to 3.2.0alpha 2013-10-12 17:57:32 +03:00
sledgehammer999
276377138e Update changelog. 2013-10-12 17:46:32 +03:00
sledgehammer999
a23198324f Updated Translators' info. 2013-10-12 16:52:42 +03:00
sledgehammer999
7712ca3efd Add the new translation to the build. 2013-10-12 16:52:42 +03:00
sledgehammer999
389c5fb114 New translation: Vietnamese. 2013-10-12 15:20:22 +03:00
sledgehammer999
a360e222e8 Updated translations from Transifex. 2013-10-12 15:20:20 +03:00
sledgehammer999
87e9adb666 Update translations for .desktop file. 2013-10-12 15:20:18 +03:00
sledgehammer999
d15107c1b4 Add Transifex client config. 2013-10-12 15:10:02 +03:00
sledgehammer999
e08ae6b668 Fix magnet metadata loading. Update the queue and save_path correctly in all use cases. 2013-10-09 23:34:00 +03:00
sledgehammer999
c6bc4d2cd2 Run lupdate. 2013-10-06 18:45:20 +03:00
sledgehammer999
08cd1c9b0c Option to disallow bringing the torrent dialog to the front. 2013-10-06 18:42:56 +03:00
sledgehammer999
909716849e Update Changelog. 2013-10-06 17:40:56 +03:00
sledgehammer999
3e0ea7b490 Run lupdate. 2013-10-06 15:17:46 +03:00
sledgehammer999
4402c7a8ef Merge pull request #942 from Gelmir/fix_fg_win_link
Fix linkers errors with AllowSetForegroundWindow function
2013-10-06 04:37:20 -07:00
sledgehammer999
672cd5a999 Merge pull request #955 from Gelmir/remove_obsolete_tr
Remove obsolete translation string (not used anywhere)
2013-10-06 04:36:45 -07:00
sledgehammer999
14310f9b05 Improve loading of magnet metadata in the background.
Conflicts:
	src/qtlibtorrent/qbtsession.cpp
2013-10-06 13:49:23 +03:00
Nick Tiskov
d0a4b2da79 Remove obsolete translation string (not used anywhere) 2013-10-04 17:55:39 +04:00
sledgehammer999
1e802f2090 Really fix compilation with 0.15.x. 2013-10-01 22:57:51 +03:00
sledgehammer999
c311080d8d Fix compilation with libtorrent 0.15.x. 2013-10-01 18:52:25 +03:00
sledgehammer999
6a45e9dbd7 Don't save resume data when torrent has an error. Prevents removing possibly useful .fastresume file and writing garbage. 2013-10-01 01:57:35 +03:00
sledgehammer999
bbf47b0907 Optimize torrentperistentdata parameters and add utility funtions for previous commit. 2013-10-01 01:57:35 +03:00
sledgehammer999
a1a5fb065e Backup/recover torrent persistent data into each individual .fastresume file. This should mitigate the problem of users losing their torrents' settings/savepath/label after qbt wasn't shutdown cleanly. 2013-10-01 01:57:34 +03:00
Nick Tiskov
36ae095c69 Fix linkers errors with AllowSetForegroundWindow function 2013-09-27 14:07:47 +04:00
sledgehammer999
4ac19e2b27 Fix encoding and don't let the OS automatically choose a port. 2013-09-20 21:23:26 +03:00
sledgehammer999
08138307da Refactor code for reporting listen failure/success. 2013-09-19 23:43:21 +03:00
sledgehammer999
eeb43d6bfd Increase the log size to accomodate for users with many torrents (>100). 2013-09-19 23:41:04 +03:00
sledgehammer999
4cd134a35e Remove unnecessary check. 2013-09-19 00:15:30 +03:00
sledgehammer999
2b03f2382a Merge pull request #900 from glassez/btf
Bringing the AddNewTorrentDialog to the front.
2013-09-18 13:59:15 -07:00
Vladimir Golovnev (Glassez)
dbf8675de3 Some improvements of requesting pid of running instance code. 2013-09-18 19:55:55 +04:00
Vladimir Golovnev (Glassez)
b78ea79d30 Bringing the AddNewTorrentDialog to the front. 2013-09-17 16:27:38 +04:00
sledgehammer999
89b82778e6 Add interface to request the pid of the running instance. 2013-09-17 16:27:37 +04:00
sledgehammer999
da561ccd38 Fix gcc warning [-Wreorder]. 2013-09-14 16:11:04 +03:00
sledgehammer999
11ebb9f0f7 Run lupdate. 2013-09-14 15:26:16 +03:00
sledgehammer999
e7c27c9b8b Polish Preview window. Closes #908. 2013-09-14 15:26:15 +03:00
sledgehammer999
0f298397b3 Simplify various if-else and QString::number. 2013-09-14 15:16:50 +03:00
sledgehammer999
70215bd3ff Fixed rounding bugs with floating numbers v2. 2013-09-14 15:15:30 +03:00
sledgehammer999
fcebe1e485 Improve the scheduler ui settings. 2013-09-14 12:59:29 +03:00
sledgehammer999
ae8c6ecf1c Run lupdate. 2013-09-12 15:35:01 +03:00
sledgehammer999
62cc91efc4 Better description in download from url dialog. 2013-09-12 15:31:30 +03:00
sledgehammer999
774d749eef Redesigned scheduler code logic. Closes #903. 2013-09-11 18:54:47 +03:00
sledgehammer999
2fc53613cd Fix compilation error. 2013-09-11 01:11:04 +03:00
sledgehammer999
135165d856 Run lupdate. 2013-09-11 00:38:33 +03:00
sledgehammer999
0ea8fd6996 Allow to enter only info-hashes in the download dialog. 2013-09-11 00:28:19 +03:00
sledgehammer999
f8fdd58e20 Visually close downloadrurl dialog before opening addnewtorrent dialog. 2013-09-10 23:23:45 +03:00
sledgehammer999
6e9ed4ead7 Update naturalSorting in the Peers tab. 2013-09-10 18:34:15 +03:00
sledgehammer999
d09b0d5f72 Fixed rounding bugs with floating numbers. 2013-09-10 18:16:01 +03:00
sledgehammer999
251d5b1921 Fix string typo and rerun lupdate. 2013-09-02 14:19:00 +03:00
sledgehammer999
4f8ccd0dfc Visually show that the private flag are respected and that PEX/DHT/LSD is disabled. Closes #880. 2013-09-01 22:29:53 +03:00
sledgehammer999
04430a4cdd Run lupdate. 2013-09-01 20:46:35 +03:00
sledgehammer999
c7aa2cb684 Display a message when a link to a search plugin is invalid. Closes #892. 2013-09-01 20:42:44 +03:00
sledgehammer999
65012bc517 Run lupdate. 2013-09-01 17:48:29 +03:00
sledgehammer999
0b0e137175 Mark strings as translatable. Closes #893. 2013-09-01 17:47:06 +03:00
sledgehammer999
6bea659d50 Fix ETA calculation when some files are downloaded and marked afterwards as 'do not download'. 2013-09-01 17:01:11 +03:00
sledgehammer999
37f821556e Merge trackers when torrent already exists instead of showing an AddNewTorrent dialog. 2013-09-01 17:01:02 +03:00
sledgehammer999
532bec5d87 Fix typo in comment. 2013-09-01 17:00:52 +03:00
sledgehammer999
74a1cce46c Simplify busy wait. 2013-09-01 17:00:22 +03:00
sledgehammer999
6cdbf6f869 Simplify checks. 2013-09-01 17:00:12 +03:00
sledgehammer999
51cde405f9 Always override AddTorrentsInPause setting when downloading in the background. 2013-09-01 16:59:55 +03:00
sledgehammer999
17c122e5ad Don't show the progress bar in AddNewTorrent dialog when not necessary. 2013-09-01 16:59:23 +03:00
sledgehammer999
4f99b04a42 Merge pull request #818 from Gelmir/metadata2
Load magnet metadata inside AddNewTorrentDialog
2013-09-01 06:57:14 -07:00
Nick Tiskov
c8cc727aea Add progress indicator for metadata retrieval 2013-08-28 19:14:52 +04:00
Nick Tiskov
8ca7603f38 Load magnet metadata inside AddNewTorrentDialog 2013-08-28 19:08:22 +04:00
sledgehammer999
af40488e5c Merge pull request #824 from Gelmir/creation_limits
Add option to ignore global share ratio limits for created torrents
2013-08-07 12:04:55 -07:00
Nick Tiskov
a1298fbf58 Add option to ignore global share ratio limits for torrents created in qBt. 2013-08-07 22:34:57 +04:00
sledgehammer999
f276ad568e Fixed naturalSort. When a single digit number was followed by text+numbers, the string wouldn't sort correctly. 2013-08-03 19:06:18 +03:00
sledgehammer999
a1f82db5d5 Re-updated .ts files. 2013-08-03 19:06:15 +03:00
sledgehammer999
9bd8b90dbe Merge pull request #833 from Gelmir/tr
Fix translation monstrosity in about dialog
2013-08-03 08:49:12 -07:00
sledgehammer999
ed49c3ad31 Update .ts files and remove obsolete strings. 2013-08-03 16:23:39 +03:00
sledgehammer999
3c813d456c Updated Danish translation from Transifex. 2013-08-03 16:15:31 +03:00
sledgehammer999
881c2babe5 Updated Romanian translation from Transifex. 2013-08-03 16:14:57 +03:00
sledgehammer999
2a8b530b46 Updated Korean translation from Transifex. 2013-08-03 16:14:21 +03:00
sledgehammer999
1b2de035b4 Updated Finnish translation from Transifex. 2013-08-03 16:13:45 +03:00
sledgehammer999
2ea427bd24 Updated German translation from Transifex. 2013-08-03 16:13:08 +03:00
sledgehammer999
02fab15e7b Updated Greek translation from Transifex. 2013-08-03 16:12:23 +03:00
sledgehammer999
3b43d48836 Updated Catalan translation from Transifex. 2013-08-03 16:11:45 +03:00
sledgehammer999
94cfba6f23 Updated Swedish translation from Transifex. 2013-08-03 16:10:50 +03:00
sledgehammer999
06cd53ab92 Updated Serbian translation from Transifex. 2013-08-03 16:10:19 +03:00
sledgehammer999
68602cb375 Updated Georgian translation from Transifex. 2013-08-03 16:09:42 +03:00
sledgehammer999
ecaa81da0f Updated Polish translation from Transifex. 2013-08-03 16:08:25 +03:00
sledgehammer999
d3e744d0fb Updated Chinese translation from Transifex. 2013-08-03 16:07:50 +03:00
sledgehammer999
d57381a524 Updated Turkish translation from Transifex. 2013-08-03 16:07:11 +03:00
sledgehammer999
b033beec60 Updated Lithuanian translation from Transifex. 2013-08-03 16:06:36 +03:00
sledgehammer999
d05761f1f0 Updated Hebrew translation from Transifex. 2013-08-03 16:06:03 +03:00
sledgehammer999
6ed0d4bc1c Updated French translation from Transifex. 2013-08-03 16:05:20 +03:00
sledgehammer999
75ff773068 Updated Ukrainian translation from Transifex. 2013-08-03 16:04:28 +03:00
sledgehammer999
caf1a050c8 Updated Dutch translation from Transifex. 2013-08-03 16:03:43 +03:00
sledgehammer999
4cd3c144dc Updated Chinese(Taiwan) translation from Transifex. 2013-08-03 16:02:24 +03:00
sledgehammer999
4d51cc6c0f Updated Bulgarian translation from Transifex. 2013-08-03 16:01:38 +03:00
sledgehammer999
f3e90265fd Updated Armenian translation from Transifex. 2013-08-03 16:00:50 +03:00
sledgehammer999
d97c1d2b6b Updated Hungarian translation from Transifex. 2013-08-03 15:59:52 +03:00
sledgehammer999
ec4490a7cb Updated Spanish translation from Transifex. 2013-08-03 15:59:10 +03:00
sledgehammer999
d03261480d Updated Portuguese translation from Transifex. 2013-08-03 15:58:08 +03:00
sledgehammer999
b610ab4825 Updated Croatian translation from Transifex. 2013-08-03 15:57:19 +03:00
sledgehammer999
4662bcf112 Updated Belarusian translation from Transifex. 2013-08-03 15:56:05 +03:00
sledgehammer999
890f9a7e19 Updated Slovak translation from Transifex. 2013-08-03 15:55:14 +03:00
sledgehammer999
7f713cbd8c Updated Russian translation from Transifex. 2013-08-03 15:54:34 +03:00
sledgehammer999
0841e91ac7 Updated Portuguese(Brazil) translation from Transifex. 2013-08-03 15:53:20 +03:00
sledgehammer999
73d1abd6f0 Updated Norwegian translation from Transifex. 2013-08-03 15:52:23 +03:00
sledgehammer999
f6f69ddf63 Updated Japanese translation from Transifex. 2013-08-03 15:50:55 +03:00
sledgehammer999
abe3cf9323 Updated Italian translation from Transifex. 2013-08-03 15:50:20 +03:00
sledgehammer999
213fd9ffb7 Updated Galician translation from Transifex. 2013-08-03 15:48:57 +03:00
sledgehammer999
e67156b403 Updated Czech translation from Transifex. 2013-08-03 15:46:35 +03:00
sledgehammer999
5ccf3adb4d Updated Basque translation from Transifex. 2013-08-03 15:45:18 +03:00
sledgehammer999
115855a177 Updated Arabic translation from Transifex. 2013-08-03 15:42:19 +03:00
sledgehammer999
a052963775 Don't prefer TCP connections over uTP. 2013-08-03 15:22:20 +03:00
Nick Tiskov
84b4e7b65e Fix translation monstrosity 2013-08-01 13:24:35 +04:00
sledgehammer999
c96eff2c15 Updated NSIS script. 2013-07-29 20:31:15 +03:00
sledgehammer999
7d99b21c20 Updated norwegian translation by tomaso. 2013-07-28 20:19:51 +03:00
sledgehammer999
224772f4c2 Merge pull request #821 from Gelmir/nostrace_mingw
Don't force stacktrace with mingw
2013-07-28 10:15:50 -07:00
Nick Tiskov
02c161be60 Don't force stacktrace with mingw 2013-07-28 20:31:01 +04:00
sledgehammer999
53c1846757 Complete utorrent-compatible flags support. 2013-07-28 18:19:06 +03:00
sledgehammer999
17d3a51285 Merge pull request #819 from Gelmir/unicode_exceptions
Use Unicode for libtorrent alert messages.
2013-07-28 06:26:01 -07:00
Nick Tiskov
ed0acede20 Use Unicode for libtorrent alert messages. 2013-07-28 17:09:07 +04:00
sledgehammer999
14808d2bef Merge pull request #794 from Gelmir/rss_feed_del_multi
Show delete action when multiple feeds are selected
2013-07-27 12:12:08 -07:00
sledgehammer999
4cd4ad457b Merge pull request #786 from Gelmir/inputDlg_autoexpand
Resize input dialogs to fit contents
2013-07-27 12:10:43 -07:00
Nick Tiskov
bb6d7ba2ff Show delete action when multiple feeds are selected 2013-07-27 23:01:14 +04:00
Nick Tiskov
cc04ebd45f Try to center AutoExpandableDialog on the same screen as main window
If main window is unavailable use the screen, where the mouse cursor is.
2013-07-27 22:57:33 +04:00
sledgehammer999
0e72583c1f Merge pull request #793 from Gelmir/f2_edit
Enable edit/rename via F2 or double click in various places
2013-07-27 11:48:31 -07:00
sledgehammer999
7d4a3e007e Merge pull request #711 from constantined/unwanted-fix
Make possible to move file to .unwanted directory after downloading
2013-07-27 09:24:26 -07:00
sledgehammer999
6c89df7206 Remove unnecessary code from qbtsession. 2013-07-27 18:07:57 +03:00
sledgehammer999
dd78744695 Updated spanish translation by alfrix. 2013-07-27 18:07:56 +03:00
sledgehammer999
d1020b0dc7 Merge pull request #815 from meequz/master
Update Belarusian translation on master
2013-07-27 07:57:49 -07:00
meequz
8664a4d7ba Update Belarusian translation on master 2013-07-27 15:21:22 +03:00
Nick Tiskov
de3108e1e5 Move textBox geometry updates into showEvent:
1. Makes QFontMetrics more accurate (~50%) for custom DPI systems
2. Makes it possible to have fixed dialog size yet again (like in old dialog box) and still allow to autoexpand the textBox
2013-07-27 14:14:01 +04:00
Nick Tiskov
fd8a2e05a4 Use AutoExpandableDialog instead of QInputDialog wherever possible 2013-07-27 14:14:00 +04:00
Nick Tiskov
e028fa9be0 Add auto resizable input dialog class 2013-07-27 14:14:00 +04:00
Nick Tiskov
42e81b9d19 Support edit/delete/double click hotkeys in rss feed list and rule list. 2013-07-27 14:13:38 +04:00
Nick Tiskov
107906928a Enable delete hotkey in web seed and tracker list.
Make delete hotkey in transfer list non-global.
2013-07-27 14:13:37 +04:00
Nick Tiskov
7adf012f9c Enable edit/rename via F2 or double click in various places 2013-07-27 14:13:37 +04:00
sledgehammer999
13cd42f053 Merge pull request #812 from Gelmir/travis_next
Rework travis script
2013-07-27 03:03:10 -07:00
Nick Tiskov
e1750c8994 Rework travis script 2013-07-27 13:02:18 +04:00
sledgehammer999
82171f5a08 Update translations. 2013-07-27 01:34:54 +03:00
sledgehammer999
7a16146f6f Convert misc class to a namespace instead. 2013-07-27 01:34:52 +03:00
sledgehammer999
4f063a478c Fix Travis CI again. 2013-07-27 01:34:51 +03:00
sledgehammer999
864202c757 Use system geoip for Travis CI. 2013-07-27 01:00:10 +03:00
sledgehammer999
4b42480f74 Fix Travis CI to build against libtorrent 0.16.x instead. 2013-07-26 23:23:39 +03:00
sledgehammer999
9924bb94b2 Make Travis CI shut up a bit. 2013-07-26 23:03:48 +03:00
sledgehammer999
19a5fc03aa Merge pull request #807 from kraleksandr/master
Some corrections for RU translation
2013-07-26 12:22:06 -07:00
sledgehammer999
836a7c8517 Merge pull request #808 from meequz/master
Updated Belarusian translation
2013-07-26 12:20:38 -07:00
sledgehammer999
3104c6aba0 Merge pull request #731 from john-peterson/build
Adding Travis CI script
2013-07-26 12:17:21 -07:00
Mikhail Varantsou
e192fd35c4 Updated Belarusian translation 2013-07-26 15:33:20 +03:00
sledgehammer999
235bb7c3a4 Use system language as default language. Closes #780. 2013-07-26 02:10:10 +03:00
kraleksandr
fbd97aea3f Some corrections for RU translation 2013-07-25 23:39:55 +04:00
sledgehammer999
6d9c3bc644 Merge pull request #798 from Gelmir/kickass
Fix kickass torrents search plugin
2013-07-23 12:14:41 -07:00
Nick Tiskov
aa327fb2df Fix kickass torrents search plugin 2013-07-23 22:23:45 +04:00
sledgehammer999
080377b662 Respect UI lock when clicking on tray notification. Closes #784. 2013-07-22 01:46:10 +03:00
sledgehammer999
798bd2388b Allow more fine tuning of uploads. Closes #684. 2013-07-22 01:41:01 +03:00
sledgehammer999
102b2dc738 Fix text size problem on Windows with custom DPI. (closes #758)
On Windows FontMetrics seem to be broken when custom DPI is set by the user.
2013-07-21 23:03:14 +03:00
sledgehammer999
fca0c8ace4 Update changelog. 2013-07-21 22:20:40 +03:00
sledgehammer999
522d68ab0b Sort invalid dates regardless of sorting order. 2013-07-21 22:13:53 +03:00
sledgehammer999
a730c27aef Optimize binary size under MSVC linker. 2013-07-21 21:52:43 +03:00
sledgehammer999
743134856e Merge pull request #788 from dartraiden/rustranslate
russian translation: typos
2013-07-21 06:20:34 -07:00
dartraiden
47291ea7e7 russian translation: typos 2013-07-19 18:52:13 +04:00
sledgehammer999
85d4946486 Merge pull request #756 from Gelmir/no_read_on_failed_dl
Do not mark articles read if download has failed
2013-07-17 13:48:09 -07:00
Nick Tiskov
b6c59fd70b Do not mark articles read if download has failed
This change includes: always try to download unread articles matching ruleset already present in list (aka redownload failed items)
2013-07-18 00:21:20 +04:00
sledgehammer999
050aadd3fa Update NSIS croatian translation by delakroa. 2013-07-15 02:45:53 +03:00
sledgehammer999
05fc956e61 Updated NSIS spanish translation by alfrix. 2013-07-14 14:57:22 +03:00
sledgehammer999
323de569df Sort invalid dates always at the bottom. Closes #106 and #735. 2013-07-14 14:54:29 +03:00
sledgehammer999
216778be64 Updated NSIS portuguesBR translation by marinho. 2013-07-14 13:51:30 +03:00
sledgehammer999
25f8740751 Updated portuguese-BR translation by marinho. 2013-07-13 00:19:53 +03:00
sledgehammer999
0cfa3ba06d Merge pull request #765 from Gelmir/no_newline_for_rename
Forbid newlines in rename torrent dialog.
2013-07-11 14:44:51 -07:00
sledgehammer999
8711722257 Updated Czech translation by vilim. 2013-07-12 00:02:53 +03:00
sledgehammer999
bf59997bac Updated NSIS Czech translation by vilim. 2013-07-12 00:02:09 +03:00
sledgehammer999
a36c52ea44 Fix NSIS for included qt translations. Closes #762. 2013-07-11 23:59:26 +03:00
Nick Tiskov
c6329f6327 Forbid newlines in rename torrent dialog. 2013-07-11 14:16:13 +04:00
sledgehammer999
f261c18d73 Merge pull request #755 from Gelmir/stacktrace_gh_md
Wrap stacktrace output in GitHub MarkDown code tags.
2013-07-10 12:07:59 -07:00
sledgehammer999
e604d78c3c Update copyright info for MAC bundle. 2013-07-09 22:55:51 +03:00
sledgehammer999
64a26e596e Update NSIS scripts. 2013-07-09 21:00:11 +03:00
sledgehammer999
af997c5802 Updated Qt translations. 2013-07-09 20:56:41 +03:00
sledgehammer999
f6e4ff1ab9 Use naturalSort in search. 2013-07-09 20:37:14 +03:00
sledgehammer999
09abc9d8b7 Use naturalSort in TorrentContentFilterModel. 2013-07-09 20:13:58 +03:00
sledgehammer999
18edf7a20c Minor change in lessThan signature. 2013-07-09 20:13:57 +03:00
sledgehammer999
7f858dfef5 Updated NSIS japanese translation by hasimoto. 2013-07-09 14:08:03 +03:00
Nick Tiskov
625cebcaad Wrap stacktrace output in GitHub MarkDown code tags. 2013-07-09 14:50:15 +04:00
sledgehammer999
b00950aa7a Merge pull request #749 from Gelmir/transferlistsort
Use number-aware sort in transfer list
2013-07-08 08:08:41 -07:00
sledgehammer999
267f30414d Fix compilation under gcc. 2013-07-08 18:04:53 +03:00
Nick Tiskov
89e3500a8e Move number-aware comparison logic into misc class. 2013-07-08 18:50:53 +04:00
Nick Tiskov
2fa0f86df4 Use number-aware sort in transfer list 2013-07-08 18:03:19 +04:00
sledgehammer999
ea0d10ebc0 Merge pull request #753 from devastatorius/patch-1
Update lithuanian.nsi
2013-07-08 04:29:54 -07:00
sledgehammer999
5c95048b74 Merge pull request #752 from Gelmir/nsis_ru
Add Russian NSIS translation
2013-07-08 04:26:05 -07:00
Nick Tiskov
32a8105590 Add Russian NSIS translation 2013-07-08 13:11:43 +04:00
devastatorius
6584de3a19 Update lithuanian.nsi 2013-07-08 12:02:05 +03:00
sledgehammer999
1047f14680 Updated croatian translation by delakroa. 2013-07-08 01:08:08 +03:00
sledgehammer999
da169fd26e Updated NSIS basque translation by aramendi. 2013-07-08 00:33:51 +03:00
sledgehammer999
2ee57ddb20 Updated NSIS portuguese translation by marques. 2013-07-08 00:30:34 +03:00
sledgehammer999
b1b29b06fe Updated NSIS galician translation by marcos. 2013-07-07 15:26:23 +03:00
sledgehammer999
f8ce9fa98d Updated NSIS norwegian translation by tomaso. 2013-07-07 15:14:52 +03:00
sledgehammer999
f3e0bf3584 Updated NSIS norwegian translation by tomaso. 2013-07-07 14:54:16 +03:00
sledgehammer999
b7758fd6ba Updated NSIS arabic translation by SDERAWI. 2013-07-07 13:53:52 +03:00
sledgehammer999
a284f47c42 Add ommitted string in the NSIS translations. 2013-07-07 12:37:28 +03:00
sledgehammer999
686fd33f3e Updated NSIS japanese translation by hashimoto. 2013-07-07 12:24:59 +03:00
sledgehammer999
3fc1f4e162 Merge pull request #687 from Gelmir/asserts_fix
Fix failing asserts (rss settings are not saved).
2013-07-06 14:32:44 -07:00
sledgehammer999
803dc1a571 Updated NSIS galician translation by marcos. 2013-07-06 20:21:48 +03:00
sledgehammer999
33890c297f Updated NSIS basque translation by aramendi. 2013-07-06 20:17:52 +03:00
sledgehammer999
98403e3816 Updated arabic translation by SDERAWI. 2013-07-06 20:10:59 +03:00
Christophe Dumez
7f7802680b Update configure script to stop requiring libboost-thread 2013-07-06 20:01:32 +03:00
sledgehammer999
47ffe15793 Updated NSIS norwegian translation by tomaso. 2013-07-06 19:56:40 +03:00
sledgehammer999
52b2cba8e2 Updated NSIS arabic translation by SDERAWI. 2013-07-06 19:53:14 +03:00
sledgehammer999
82a0c4585c Merge pull request #622 from john-peterson/column
Adding "Save path" column
2013-07-06 07:29:33 -07:00
sledgehammer999
ea3c6b6b09 Write BOM to NSIS scripts. 2013-07-06 15:03:26 +03:00
sledgehammer999
8bd5576b1f Update changelog. 2013-07-06 12:31:01 +03:00
sledgehammer999
c085648063 Update galician translation by marcos. 2013-07-06 12:28:03 +03:00
sledgehammer999
f1845813a0 Merge pull request #748 from Gelmir/peersort
Allow to sort peer list either by country or by IP
2013-07-06 02:06:30 -07:00
Nick Tiskov
c8d51e91f4 Remove obsolete IP_HIDDEN column from peer list. 2013-07-06 04:07:09 +04:00
Nick Tiskov
ba014d0033 Allow to sort peer list either by country or by IP 2013-07-06 04:04:03 +04:00
sledgehammer999
b486d419dc Update basque translation by aramendi 2013-07-05 00:14:49 +03:00
sledgehammer999
b5d447e6d0 Update japanese translation by hashimoto. 2013-07-04 23:20:18 +03:00
sledgehammer999
33d9ae1e4a Update norwegian translation by Tomaso. 2013-07-04 23:18:20 +03:00
sledgehammer999
d8afccf948 Update italian translation by bovirus. 2013-07-04 23:17:45 +03:00
sledgehammer999
2a4e8c1b63 Merge pull request #743 from Gelmir/ru_ts_new
Russian translation update
2013-07-04 12:25:18 -07:00
Nick Tiskov
30bf0a4c5f Russian translation remaster.
1. A couple of translation fixes.
2. File updated with line numbers (now you can finally see dialog mockups and code snippets in Linguist)
2013-07-04 13:15:37 +04:00
sledgehammer999
e1d85627a8 Updated translations. 2013-07-04 02:47:17 +03:00
sledgehammer999
44a4889074 Preserve original style on about dialog. 2013-07-04 02:40:06 +03:00
sledgehammer999
64fabfed5b Norwegian translation by Tomaso. 2013-07-04 02:24:13 +03:00
sledgehammer999
7b04e8204f Merge pull request #736 from Gelmir/tr_drop_unneeded
Translations fixes
2013-07-03 15:02:39 -07:00
sledgehammer999
65621e2886 Merge pull request #739 from Gelmir/rc_proper_encoding
Use UCS-2 LE encoding for windows resource file
2013-07-03 08:42:49 -07:00
sledgehammer999
23b52f3d11 Update translations. 2013-07-03 18:25:18 +03:00
sledgehammer999
fbaaf10ee5 Update Portuguese translation by Sérgio Marques. 2013-07-03 18:18:33 +03:00
Nick Tiskov
f1a3a1424f Use UCS-2 LE encoding for windows resource file 2013-07-03 19:01:39 +04:00
sledgehammer999
073b09ab41 Update changelog. 2013-07-03 17:02:02 +03:00
sledgehammer999
d4dd04cbdc Call updateDiskSpaceLabel() manually in onSavePathChanged(). Closes #715. 2013-07-03 16:57:47 +03:00
Nick Tiskov
8e7ef66011 Translations fixes
Do not translate strings, which should not be translated
Remove unnecessary/unused strings.
2013-07-03 15:44:30 +04:00
John Peterson
6fde7050ec Adding Travis CI script
because a build test reduce commits with build errors
2013-07-03 10:02:01 +02:00
sledgehammer999
164f3b761d Merge pull request #732 from alfrix/translations
Translations: update spanish
2013-07-02 14:07:50 -07:00
sledgehammer999
04ad78404c Update NSIS script. 2013-07-02 21:32:01 +03:00
sledgehammer999
1e6aa54f0e Use default choking algorithm. fastest_upload is too biased towards fast peers. 2013-07-02 20:45:59 +03:00
sledgehammer999
a29f858f77 Merge pull request #376 from Gelmir/feedreader_atom
Support Atom feeds
2013-07-02 10:14:02 -07:00
Nick Tiskov
7c1e91f256 Support Atom feeds 2013-07-02 21:02:45 +04:00
Alfre
2dece90144 Translations: update spanish 2013-07-02 11:56:58 -03:00
sledgehammer999
bc605fe09e Merge pull request #619 from sledgehammer999/notification_on_finish
Actually show the tray notification when a torrent finishes downloading.
2013-07-01 14:28:02 -07:00
sledgehammer999
d52d64cbaf Merge pull request #677 from Gelmir/rss_old_redl
Respect article limit during feed updates
2013-07-01 14:17:12 -07:00
Nick Tiskov
050893d8df Prevent auto(re)downloading of RSS articles, which exceed article limit. 2013-07-02 00:58:17 +04:00
sledgehammer999
0c514a0f07 Update windows binary metadata. 2013-07-01 23:17:37 +03:00
sledgehammer999
147068afbf Update changelog 2013-07-01 23:12:00 +03:00
sledgehammer999
cdc893a6cf Merge pull request #229 from Hyperz/master
Default/native look for the search filter
2013-07-01 13:08:44 -07:00
sledgehammer999
84c2ba2f4e Merge pull request #653 from Gelmir/evict_cache
Allow controling cache expiry timer
2013-07-01 13:00:04 -07:00
constantined
4ec176b683 Make possible to move file to .unwanted directory after downloading 2013-07-01 12:47:24 +03:00
Nick Tiskov
6b660d505c Allow control of cache expiry interval (libtorrent 0.16.10 allocator can now return cache to kernel) 2013-07-01 12:58:20 +04:00
Nick Tiskov
2647d9e994 Revert "Merge pull request #259 from sledgehammer999/revert_disk_cache"
This reverts commit a796df9019.
2013-07-01 12:58:19 +04:00
Nick Tiskov
70a0de8de5 Fix failing asserts (rss settings are not saved).
See Pull #675
2013-07-01 12:52:23 +04:00
Nick Tiskov
454dbd5cd8 Do not autoDL items based on rules still being edited. 2013-07-01 12:43:40 +04:00
sledgehammer999
a4085ef68c Merge pull request #727 from Gelmir/rename_on_index_changes
Properly rename torrent which changes position in filter model
2013-06-30 14:11:40 -07:00
Nick Tiskov
0e09717a02 Properly rename torrents, when index is moved out of current filter model or changes position inside filter model while rename window stays open 2013-07-01 00:56:12 +04:00
sledgehammer999
647f81ff84 Merge pull request #683 from Gelmir/rss_proper_drag_move
Fix Drag/Move event in RSS widget
2013-06-30 12:50:15 -07:00
sledgehammer999
2c7441b31d Merge pull request #682 from Gelmir/rss_dnd_sameplace
Repopulate the feed tree after drag&drop to same location
2013-06-30 12:48:39 -07:00
sledgehammer999
3d9b4988d9 Update changelog. 2013-06-30 16:00:58 +03:00
sledgehammer999
e797365e3d Change description of random port checkbox. 2013-06-30 15:57:46 +03:00
sledgehammer999
a261ab14ee Port spinbox is now disabled correctly. 2013-06-30 15:52:37 +03:00
sledgehammer999
be5a1ae272 Seed rand only at one place. 2013-06-30 15:32:45 +03:00
tungnian lee
9913484f68 new fix for selecting random port when system starts up 2013-06-30 15:15:44 +03:00
tungnian lee
2de8b9112d more clean up for feature selecting a random port when starts up 2013-06-30 15:15:43 +03:00
tungnian lee
75e28bb3e6 Made changes for clean up and fix the problem that a new ramdon port is set every time a setting is saved. 2013-06-30 15:15:42 +03:00
sledgehammer999
7a99eb8e23 Write BOM in NSIS translations' files. 2013-06-30 15:14:45 +03:00
sledgehammer999
0b15515f59 Update NSIS scripts to use unicode version of installer. 2013-06-30 14:43:23 +03:00
sledgehammer999
9ff7eab83b Fixed compilation with libtorrent 0.15.x 2013-06-30 02:45:02 +03:00
sledgehammer999
b32a68318c Ensure that all tranferlist columns have a size > 0. 2013-06-29 18:16:23 +03:00
sledgehammer999
029505bf1d Impove drawing speed of peers list when there are many peers. 2013-06-29 18:10:45 +03:00
sledgehammer999
01307b377e Improve drawing speed of transferlist with many torrents. 2013-06-29 17:58:41 +03:00
sledgehammer999
0322002b46 Update maintainer info in About dialog. 2013-06-29 15:37:08 +03:00
sledgehammer999
e5617f4cde Update AUTHORS file. 2013-06-29 14:46:19 +03:00
sledgehammer999
64dad99c36 Ensure that all columns in the peerlist are showing. 2013-06-29 13:28:29 +03:00
sledgehammer999
f227130388 Simplify code. 2013-06-27 15:29:02 +03:00
sledgehammer999
38d78b7606 Change seeding algorithm. Increase connections per second. 2013-06-27 15:25:23 +03:00
Christophe Dumez
a77be2f6ce Merge pull request #705 from sledgehammer999/peer_tab2
Use new Libtorrent version define.
2013-06-16 04:37:25 -07:00
sledgehammer999
1ad9d9b4e0 Use new Libtorrent version define. 2013-06-16 14:34:00 +03:00
Christophe Dumez
f4e5d7bc11 Merge pull request #636 from sledgehammer999/libtorrent_trunk
Fix compilation with libtorrent 1.x.x.
2013-06-08 10:35:05 -07:00
sledgehammer999
22e2bafa7a Fix compilation with libtorrent 1.x.x v2 2013-06-08 18:21:15 +03:00
Nick Tiskov
562e9ce108 Drag'n'Drop fixups.
1. Proper event handling
2. Allow folder moving
3. Allow moving into folders
2013-06-08 19:04:42 +04:00
Christophe Dumez
b8598bfc14 Merge pull request #594 from ccerrillo/master
changes in mootools breaks the context menu
2013-06-08 05:54:08 -07:00
Christophe Dumez
2a31d378a5 Merge pull request #606 from sledgehammer999/peer_tab
Show utorrent compatible peer flags. Implements issue #531.
2013-06-08 05:48:09 -07:00
Christophe Dumez
a33a959f63 Merge pull request #629 from sledgehammer999/temp_tor_data
Store TorrentTempData only in memory. Partially implements #583.
2013-06-08 05:41:46 -07:00
Christophe Dumez
1ff3818e6b Merge pull request #662 from micheleolivo/master
Italians strings fixed
2013-06-08 05:10:48 -07:00
Nick Tiskov
116fa8936a Add missing QTreeWidget::dropEvent to d'n'd atempt occuring in same location.
Remove 'Overwrite attempt' dialog as obsolete. Now moving item, e.g. from folder to same folder, will just make it the last child of the folder.
2013-06-04 18:47:01 +04:00
sledgehammer999
78663b9c27 Fix peer flags. 2013-05-24 19:18:03 +03:00
Christophe Dumez
0213b5f511 Add missing break statement in proxy code 2013-05-22 20:43:02 +03:00
Michele Olivo
559e0ac218 Fixed a couple of Italians strings. 2013-05-21 11:50:03 +02:00
sledgehammer999
94b58ca229 Fix compilation with libtorrent 1.x.x. 2013-05-07 22:57:18 +03:00
sledgehammer999
7aa3eff845 Add constness and value by reference in TorrentTempData. 2013-05-04 21:29:18 +03:00
sledgehammer999
9a0a26dae1 Store TorrentTempData only in memory. Partially implements #583. 2013-05-04 17:56:26 +03:00
John Peterson
d1c3a07ba6 Adding "Save path" column
because it's useful when moving files

It's the same path as in properties because that's consistent
2013-05-01 09:05:14 +02:00
sledgehammer999
a30dc3a823 Actually show the tray notification when a torrent finishes downloading. 2013-04-30 23:52:32 +03:00
sledgehammer999
8464720d99 Show utorrent compatible peer flags. Implements issue #531. 2013-04-22 20:48:50 +03:00
sledgehammer999
4f667c6e7d Merge pull request #600 from sledgehammer999/trans_it_nsis
Updated italian translation of NSIS installer by bovirus.
2013-04-20 02:08:02 -07:00
sledgehammer999
365ba4341a Updated italian translation of NSIS installer by bovirus. 2013-04-20 12:06:34 +03:00
ccerrillo
c928987313 mootools change break context menu
Fx.Tween in mootols 1.4.5  no longer sets visibility to hidden, so when the context menu dissapear, if you put the mouse in the space where the menu were showed is still there but with opacity to 0 and cannot click to nothing below that area

So i emulated the old behaviour with OnComplete event.

Additionally i changed the use of deprecated $empty
2013-04-17 20:41:24 +03:00
Christophe Dumez
d5aa316613 Merge pull request #513 from Gelmir/creator_root
Fix: using files/folder in disk root for torrent creation fails
2013-04-14 03:06:29 -07:00
Christophe Dumez
43271d3ea7 Merge pull request #568 from alfrix/master
Updated Spanish Translation
2013-04-14 03:05:16 -07:00
Christophe Dumez
9aa0041422 Merge pull request #584 from sledgehammer999/it_translation
Update italian translation by bovirus.
2013-04-14 03:04:46 -07:00
Christophe Dumez
f0e98e2828 Merge pull request #587 from sledgehammer999/update_disklabel
Update disk space label in add new torrent dialog. Fixes issue #282.
2013-04-14 03:04:27 -07:00
sledgehammer999
1e7668608a Update disk space label in add new torrent dialog. Fixes issue #282. 2013-04-14 05:26:25 +03:00
sledgehammer999
f918e7f0b0 Merge pull request #586 from sledgehammer999/nsis_it
Updated italian language of nsis installer by bovirus.
2013-04-13 18:02:04 -07:00
sledgehammer999
a685349ae6 Updated italian language of nsis installer by bovirus. 2013-04-14 03:58:24 +03:00
sledgehammer999
7c2e679c8b Update italian translation by bovirus. 2013-04-14 03:45:54 +03:00
Alfre
b6e16fbdc0 Update Spanish translation 2013-04-10 15:06:23 -03:00
Christophe Dumez
a2d3a1c41c Merge pull request #543 from sledgehammer999/master
Really fix issue #405 and #536.
2013-04-01 12:23:04 -07:00
sledgehammer999
4af28bfe81 Really fix issue #405 and #536. 2013-04-01 21:37:36 +03:00
Christophe Dumez
4ba5e43933 Improve peer host name resolution (closes #360)
- Take a QString in argument to avoid converting it twice. The caller already
  has the IP as a QString.
- Fix bug where hostnames coming from the cache would not the displayed.
- Fix bug where the resolved hostnames would not be displayed if the IP we know
  does not match the first one in the QHostInfo::addresses() list. It may come
  later in the list or may be formatted differently (possible with IPv6).
- Avoid requesting again host names for IPs that were already requested recently
  but whose resolution did not return a useful hostname.
2013-03-28 21:47:45 +02:00
Nick Tiskov
6debc1e958 Fix unhandled exception when trying to create torrents from files/folder in disk root. 2013-03-21 20:56:39 +04:00
Christophe Dumez
9651d8736b Fix legittorrents search plugin (closes #515) 2013-03-20 21:16:28 +02:00
Christophe Dumez
07ec2cce31 Update Italian translation 2013-03-16 22:26:40 +02:00
Christophe Dumez
698171bbcf Updated Basque translation 2013-03-16 22:01:48 +02:00
Christophe Dumez
3519cb281f Merge pull request #499 from Driim/add_torrent_icon_fix
Fix missing "Add torrent file" icon
2013-03-12 10:37:18 -07:00
Driim
df23fc1de2 delete not needed space 2013-03-11 22:52:49 +04:00
Driim
f445c8f872 Fix add torrent icon version 3 2013-03-11 22:50:32 +04:00
Driim
eb035e2199 Fix add torrent icon version 2 2013-03-11 22:45:32 +04:00
Driim
dac3a1a0ca Fix missing "Add torrent file" icon 2013-03-11 19:33:57 +04:00
Christophe Dumez
902aa4503e Merge pull request #496 from Gelmir/libz
Use <OS_name>conf.pri files to control libz linkage
2013-03-10 13:15:02 -07:00
Nick Tiskov
314fc003b3 Use <OS_name>conf.pri file to control libz linkage 2013-03-11 00:04:40 +04:00
Christophe Dumez
c36b2774ed Merge pull request #469 from Gelmir/ul_eta
ETA calculation for seed_only torrents; ETA column sorting
2013-03-10 12:53:26 -07:00
Nick Tiskov
ec08bfac07 Improve code readability in speed monitor 2013-03-10 23:25:24 +04:00
Christophe Dumez
cd754fd239 Update Norwegian translation 2013-03-10 21:24:15 +02:00
Christophe Dumez
a6e7588593 Merge pull request #495 from Gelmir/ru_ts
Update Russian translation.
2013-03-10 12:13:46 -07:00
Nick Tiskov
008ba33ce9 Update Russian translation. 2013-03-10 23:06:09 +04:00
Christophe Dumez
f49ba3e93d Avoid using #define 2013-03-10 20:31:06 +02:00
Christophe Dumez
e98fb61400 Link against lz 2013-03-10 20:29:46 +02:00
Christophe Dumez
13e57fb9dd Merge pull request #471 from daimor/master
Correctly handle HTTP responses with gzipped encoded content.
2013-03-10 11:08:57 -07:00
Christophe Dumez
7234a93293 Merge pull request #462 from Gelmir/webui_json
Multiple JSON parses fixes
2013-03-10 11:04:15 -07:00
Christophe Dumez
56cff16b07 Update language files 2013-03-10 20:03:21 +02:00
Christophe Dumez
aa74244abb Update Changelog 2013-03-10 20:02:35 +02:00
Christophe Dumez
a998f4c980 Merge pull request #464 from Gelmir/log_clear
Allow clearing of execution log and peer ban log
2013-03-10 11:01:33 -07:00
Christophe Dumez
5f2fe1d5a6 Update Changelog 2013-03-10 19:57:59 +02:00
Christophe Dumez
f01c301839 Merge pull request #480 from Gelmir/create_torrent_tiers
Support tracker tiers / groups in torrent creator
2013-03-10 10:56:28 -07:00
Nick Tiskov
0c0c7459f1 Cosmetic fix for eta sorting in torrent list: 'infinity' must always come last 2013-03-10 20:59:19 +04:00
Nick Tiskov
34a88c83f0 Calculate eta for seed only torrents using ratio limits 2013-03-10 20:59:19 +04:00
Nick Tiskov
a8f29e51c5 Cosmetic fixes to torrent creator 2013-03-10 20:58:23 +04:00
Nick Tiskov
964b321458 Ignore multiple sequential newlines in torrent creator 2013-03-10 20:41:59 +04:00
Nick Tiskov
dec726c0ae Add tooltip in torrent creation dialog as a hint on tracker tiers 2013-03-10 20:41:58 +04:00
Nick Tiskov
025f4f9737 Support tracker mirrors in torrent creator 2013-03-10 20:41:58 +04:00
Nick Tiskov
66b982ad03 Minor refactoring for json parser 2013-03-10 20:40:08 +04:00
Nick Tiskov
3309706964 Allow clearing of execution log and peer ban log 2013-03-10 20:31:46 +04:00
Nick Tiskov
9d275d6d34 Allow bool lists in json values 2013-03-10 20:03:53 +04:00
Nick Tiskov
91f9a46c18 Allow semicolon in json values (Windows paths support) 2013-03-10 20:03:52 +04:00
Dmitry Maslennikov
e017ba6863 add cookies for redirect, cookies for auto download torrent from rss, add support gzip 2013-03-10 19:15:33 +04:00
Christophe Dumez
9c7807ded4 Merge pull request #494 from sledgehammer999/fix_downloadbar
Fix the downloadbar for libtorrent > 0.16.7
2013-03-10 08:14:38 -07:00
sledgehammer999
0fa0be2d0e Pass the correct flag in torrent_handle::status for libtorrent > 0.15 2013-03-10 17:08:40 +02:00
sledgehammer999
4e0dc5d51a Merge pull request #478 from sledgehammer999/win_backtrace
Move backtrace support to windows specific pri files and other minor improvements. v2
2013-03-10 04:21:55 -07:00
Christophe Dumez
14bfc4f4ed Merge pull request #434 from Gelmir/session_end
Attempt to fix data loss during session end v2
2013-03-10 00:53:41 -08:00
Christophe Dumez
7039e2b10f Merge pull request #441 from sledgehammer999/git_ignore
Ignore some files.
2013-03-10 00:50:14 -08:00
Christophe Dumez
e5f0edaa0a Merge pull request #456 from Gelmir/fix_webui_ap
Allow/Fix special characters in json replies in WebUI
2013-03-10 00:48:45 -08:00
Christophe Dumez
72dd95a81e Update Changelog 2013-03-10 10:36:21 +02:00
Christophe Dumez
4e2750262d Merge pull request #466 from Gelmir/webseed_menu
Add context menu to web seed list
2013-03-10 00:35:21 -08:00
Christophe Dumez
3b60c23178 Merge pull request #485 from sledgehammer999/cp_mgn_uri
Enable 'copy magnet uri' for torrents without metadata too.
2013-03-09 23:57:57 -08:00
sledgehammer999
12a6ecf353 Enable 'copy magnet uri' for torrents without metadata too. Fixes issue #458. 2013-03-05 23:15:39 +02:00
sledgehammer999
c5b5241964 Enable backtrace support by default on Windows. 2013-03-03 03:11:07 +02:00
sledgehammer999
eb0d1748c3 Fix compilation without backtrace support on Windows. 2013-03-03 03:11:01 +02:00
sledgehammer999
1f0d4ce871 Move Windows backtrace functionality to the windows specific *.pri files. 2013-03-03 00:52:51 +02:00
Nick Tiskov
b64caf2cb8 Remove add/remove buttons in web seed list, since context menu is now implemented. 2013-02-28 23:04:12 +04:00
Nick Tiskov
b286bead09 Add context menu for web seeds: add, remove, copy, edit. 2013-02-28 23:00:04 +04:00
Nick Tiskov
dc4d0a7078 Allow/Fix special characters in json replies in WebUI 2013-02-25 16:28:15 +04:00
sledgehammer999
5ec68f3ca0 Ignore some files. 2013-02-18 00:29:15 +02:00
Christophe Dumez
da3406b811 Simplify the code a bit now that QIniSettings uses qBittorrent / qBittorrent by default 2013-02-16 20:04:48 +02:00
Christophe Dumez
6c753ac183 Have QIniSettings use qBittorrent / qBittorrent by default 2013-02-16 19:33:07 +02:00
Christophe Dumez
1549a443c5 Have Preferences subclass QIniSettings privately to discourage bad usage. 2013-02-16 19:30:44 +02:00
Nick Tiskov
28df59b9e6 Attempt to fix data loss during session end 2013-02-16 17:46:34 +04:00
Christophe Dumez
1f25e6d0fe Merge pull request #423 from Gelmir/rss_rulelist
Changing regexp/wildcard mode should update article list matches
2013-02-16 05:36:42 -08:00
Christophe Dumez
47f5d165a8 Merge pull request #427 from sledgehammer999/update_def_path
Fix case where the default save wasn't getting updated in the addition d...
2013-02-16 05:34:27 -08:00
Christophe Dumez
13a195d73b Merge pull request #426 from sledgehammer999/fix_dont_show
Fix 'dont show' dialog when downloading torrent. Closes issue #405.
2013-02-16 05:33:00 -08:00
sledgehammer999
04e4295140 Fix case where the default save wasn't getting updated in the addition dialog. 2013-02-12 00:31:47 +02:00
sledgehammer999
fe98c36abf Fix 'dont show' dialog when downloading torrent. Closes issue #405. 2013-02-11 23:38:33 +02:00
Christophe Dumez
ee84af0826 Update Norwegian translation 2013-02-11 12:44:11 +02:00
Christophe Dumez
e1d09303f9 Update language files 2013-02-11 12:42:39 +02:00
Christophe Dumez
3749817e1b Merge pull request #347 from Gelmir/ru_lang
Fix Russian translation
2013-02-11 02:41:59 -08:00
Nick Tiskov
a6e862d9ea More updates to Russian translation 2013-02-11 14:22:51 +04:00
Nick Tiskov
c28641ba94 Fix Russian translation for d3b4ec77bc 2013-02-11 14:03:41 +04:00
Nick Tiskov
5e5d8118c7 Changing regexp/wildcard mode should update article list matches 2013-02-11 13:58:00 +04:00
Christophe Dumez
b0a01f60f7 Merge pull request #419 from Gelmir/license
Remove unprintable 0x0C from license text
2013-02-10 11:06:44 -08:00
Nick Tiskov
c04095673f Remove unprintable 0x0C from license text 2013-02-10 22:46:03 +04:00
Christophe Dumez
88d22e4309 Merge pull request #415 from Gelmir/edit_tracker
Allow to edit tracker URI
2013-02-10 10:44:27 -08:00
Nick Tiskov
e05cce9b59 Small fix to tracker editing 2013-02-10 22:39:15 +04:00
Nick Tiskov
a7a4557b29 fixup! Use QInputDilog for tracker editing 2013-02-10 22:07:37 +04:00
Nick Tiskov
4cb783d5bf Use QInputDilog for tracker editing 2013-02-10 22:07:36 +04:00
Nick Tiskov
cd830768d6 Allow to edit tracker URI 2013-02-10 22:05:51 +04:00
Christophe Dumez
6f46c60360 Update Hebrew translation 2013-02-09 23:06:09 +02:00
Christophe Dumez
d9d63141bb Merge pull request #396 from karimodm/master
Fix to Issue #395: Preview feature absent when .!qB extensions added
2013-02-09 10:34:10 -08:00
Andrea Villa
b6f156b7dd Reverting fs_utils.cpp and fixing callers instead 2013-02-09 18:55:10 +01:00
Christophe Dumez
a647968a6f Merge pull request #414 from Gelmir/cpy_tracker_fix
Fix copy tracker build failure
2013-02-09 09:41:03 -08:00
Nick Tiskov
93c64d03e3 Fix copy tracker build failure 2013-02-09 21:18:52 +04:00
Christophe Dumez
6fddbd8178 Merge pull request #206 from Driim/master
Copy tracker URL
2013-02-09 07:53:11 -08:00
Christophe Dumez
67ca3315fd Merge pull request #374 from Gelmir/feedreader_lang
Fix spacing in Russian translation in article list
2013-02-09 07:50:16 -08:00
Christophe Dumez
168de06d47 Merge pull request #391 from sledgehammer999/win_installer
Major refactoring on the windows installer scripts
2013-02-09 07:46:53 -08:00
Christophe Dumez
3ee79afe4f Merge pull request #402 from bovirus/patch-2
Update src/lang/qbittorrent_it.ts by bovirus
2013-02-09 07:36:51 -08:00
Christophe Dumez
a3163a419a Merge pull request #404 from sledgehammer999/del_whitespace
Remove leading and trailing whitespace when choosing filenames. Fixes is...
2013-02-09 07:34:44 -08:00
sledgehammer999
a2e4e2ad37 Remove leading and trailing whitespace when choosing filenames. Fixes issue #401. 2013-02-07 21:31:24 +02:00
ROBERTO
367b17e315 Update src/lang/qbittorrent_it.ts 2013-02-07 14:25:58 +01:00
Andrea
ccd50262c6 FIX: Redeclared Variable 2013-02-05 03:44:54 +01:00
Andrea
c7efd0dd05 Fix Preview for .!qB extended files 2013-02-05 01:46:00 +01:00
sledgehammer999
287e2a7c2d Update README.txt. 2013-02-02 03:54:31 +02:00
sledgehammer999
9618cc1628 Update instructions in README.txt. 2013-02-02 03:28:07 +02:00
sledgehammer999
d435eae35c Include third party plugins used by the scripts. 2013-02-02 03:04:15 +02:00
sledgehammer999
80021c4ef6 Move the check for already running instance just before the actual installation. 2013-02-02 02:52:14 +02:00
sledgehammer999
d959a5918c Remove unused label. 2013-02-02 02:52:11 +02:00
sledgehammer999
5b092b3aea Updated language tables with all the strings. 2013-02-02 02:52:09 +02:00
sledgehammer999
749e668a03 Remove file associations only if qbt is associated. Fixes issue #307. 2013-02-02 02:52:06 +02:00
sledgehammer999
257f75a201 Reserve dll for faster execution. 2013-02-02 02:52:04 +02:00
sledgehammer999
cfa1e8441b Added some logging for a few actions. 2013-02-02 02:52:01 +02:00
sledgehammer999
5b66b7a24f Run unistaller silently before proceeding with the install. 2013-02-02 02:51:59 +02:00
sledgehammer999
78ee01b03c The installer now checks if qbt is running before proceeding. 2013-02-02 02:51:56 +02:00
sledgehammer999
653d49ab3c Offer to launch qbt after installation. 2013-02-02 02:51:54 +02:00
sledgehammer999
c13776d000 Add more info to the system about the unistaller. 2013-02-02 02:51:52 +02:00
sledgehammer999
e71facf6d6 Add version info to the installer executable. 2013-02-02 02:51:49 +02:00
sledgehammer999
f2f2dad402 Split removal of configuration files to 2 options. 2013-02-02 02:51:47 +02:00
sledgehammer999
c6ba3b4ca3 Change title of installer to show the qbt's version. 2013-02-02 02:51:45 +02:00
sledgehammer999
feadedf8ef Support adding of windows firewall rule. 2013-02-02 02:51:42 +02:00
sledgehammer999
ccce8f58c9 Updated translations.nsi 2013-02-02 02:51:27 +02:00
sledgehammer999
e85efb828d Create language tables for all the available languages. 2013-02-02 02:50:35 +02:00
sledgehammer999
4d739d4050 Refactor windows installer script to accomodate further translation. Also split it up so it is easier to maintain and extend. 2013-02-02 02:44:33 +02:00
Dmitriy Falko
b172196512 Merge pull request #2 from qbittorrent/master
Up-to-date commit
2013-01-28 06:08:05 -08:00
Christophe Dumez
3e7329fb07 Merge pull request #377 from Gelmir/feedreader_statesave
Save article 'read' state on exit
2013-01-28 04:11:30 -08:00
Nick Tiskov
9b121fd5d0 Save article 'read' state on exit 2013-01-28 14:53:04 +04:00
Christophe Dumez
405885209b Update Finnish translation 2013-01-27 18:49:36 +02:00
Nick Tiskov
12f0954c4c Fix spacing in Russian translation in article list 2013-01-27 13:39:25 +04:00
Christophe Dumez
8046ba4103 Merge pull request #361 from sledgehammer999/torrent_creator
Fix torrent creator when saving to a non-latin path in Windows.
2013-01-26 12:35:41 -08:00
Christophe Dumez
dce5c217c8 Merge pull request #329 from Gelmir/iface_hrNames
Show human readable interface names
2013-01-26 12:31:59 -08:00
Christophe Dumez
0161e64481 Update Norwegian translation 2013-01-26 22:21:00 +02:00
sledgehammer999
b768005f44 Merge pull request #337 from Gelmir/stacktrace_win
Support stacktrace on Windows
2013-01-26 12:15:09 -08:00
Christophe Dumez
6838edb4fe Merge pull request #358 from Gelmir/raise_wnd
Raise main window when starting another instance w/o params
2013-01-26 11:59:09 -08:00
sledgehammer999
2309c25aa4 Fix null termination of wsave_path. 2013-01-26 20:35:50 +02:00
Nick Tiskov
1090e87f3a fixup! Raise main window when starting another instance w/o params 2013-01-26 22:22:17 +04:00
Nick Tiskov
104b2aecdc fixup! Show human readable interface names (mostly affects Windows) 2013-01-26 21:24:38 +04:00
Christophe Dumez
465eaf028e Update Changelog 2013-01-26 19:09:13 +02:00
Christophe Dumez
2a76ddb81d Remove binary translations now that they are generated at configure time 2013-01-26 19:08:04 +02:00
Christophe Dumez
3f2098ff5d Merge pull request #332 from Gelmir/ts_conftime
Create translations at configure time
2013-01-26 09:07:30 -08:00
Christophe Dumez
13cd4815ee Add Legit Torrents search plugin 2013-01-26 16:09:00 +02:00
Nick Tiskov
5eaf4201ae Fixes: 1) Building fails w/o "CONFIG += strace_win" 2) mingw build
Commenting Mingw release flags section for now. Strace is not reliable with mingw (only calls to other libraries are resolved, internal calls show up as addresses).
2013-01-25 22:52:12 +04:00
Christophe Dumez
606ee3c883 Update Portuguese translation 2013-01-25 17:54:03 +02:00
Christophe Dumez
a1a73af7da Update Finnish translation 2013-01-23 22:07:21 +02:00
sledgehammer999
ed26846a54 Null terminate the wide string in torrent creator. 2013-01-23 17:30:44 +02:00
sledgehammer999
e7125d21cb Fix torrent creator when saving to a non-latin path in Windows. 2013-01-23 14:19:18 +02:00
Christophe Dumez
64fb49e085 Merge pull request #359 from sledgehammer999/qt_translate
Update Qt translations from qt 4.8.4
2013-01-22 21:52:48 -08:00
sledgehammer999
0c0a90c6c2 Update Qt translations from qt 4.8.4 2013-01-22 19:04:38 +02:00
Nick Tiskov
5ca5441a48 Support raising window when UI is locked 2013-01-22 17:36:14 +04:00
Nick Tiskov
88960556e3 Raise main window when starting another instance w/o params 2013-01-22 15:38:09 +04:00
Christophe Dumez
d3b4ec77bc Update date in About dialog copyright 2013-01-20 13:01:51 +02:00
Christophe Dumez
08dc932d00 Fixes to Italian translation 2013-01-20 12:20:51 +02:00
Christophe Dumez
d6b99a8d70 Add plugin versions.txt file for python3 2013-01-20 00:00:58 +02:00
Christophe Dumez
e13eeeed60 Update plugin versions 2013-01-19 23:59:26 +02:00
Christophe Dumez
b71570bdf7 Fix duplicate results in piratebay results 2013-01-19 23:27:51 +02:00
Nick Tiskov
a9cffd8863 Support stacktrace on Windows
adds 'strace_win' CONFIG option
2013-01-19 22:07:20 +04:00
Christophe Dumez
0ace60a39b Use HTTPS for btdigg 2013-01-19 19:36:52 +02:00
Christophe Dumez
d740b051cb Really fix kat search engine with python3 2013-01-19 19:29:51 +02:00
Christophe Dumez
f369e22de0 Fix kat.ph search with python3 2013-01-19 18:54:18 +02:00
Christophe Dumez
64fd3044b1 Fix compilation error with libtorrent v0.15 2013-01-19 18:16:47 +02:00
Christophe Dumez
bcd81c0791 Better fix for --no-splash argument 2013-01-19 16:38:34 +02:00
Christophe Dumez
965f7f5d26 Fix support for --no-splash command line argument 2013-01-19 16:24:31 +02:00
Christophe Dumez
636e052faa Remove "Force reannounce" action
Does not work as intended.
2013-01-16 20:03:32 +02:00
Christophe Dumez
6e1f250470 Stop listening on port 4433 since we do not support SSL torrents 2013-01-16 19:07:22 +02:00
Nick Tiskov
92e24e332a Create translations at configure time 2013-01-16 00:21:41 +04:00
Christophe Dumez
687d192e71 Merge pull request #330 from sledgehammer999/win_installer
Some improvements/fixes to the windows installer script
2013-01-13 08:50:07 -08:00
sledgehammer999
4f1cb5ab7c Store language settings for the installer. Use them in the unistaller too. 2013-01-13 18:07:21 +02:00
sledgehammer999
2fbc979136 Remove qBittorrent Start Menu folder when uninstalling. Partially fixes #291. 2013-01-13 18:07:18 +02:00
Nick Tiskov
3e98bd49e2 Show human readable interface names (mostly affects Windows) 2013-01-13 17:44:14 +04:00
Christophe Dumez
186bbd7fc3 Safer check 2013-01-13 13:01:58 +02:00
Christophe Dumez
34fc7407a2 Fix possible crash in loadPeers() (closes #222) 2013-01-13 12:53:34 +02:00
Christophe Dumez
aecf069975 Require password to exit qBittorrent from tray icon when locked (closes #311) 2013-01-12 19:18:39 +02:00
Christophe Dumez
ec90fc480c Bump mootools to 1.4.5 2013-01-12 18:55:02 +02:00
Christophe Dumez
4012a64327 Update Italian translation 2013-01-10 18:59:50 +02:00
Christophe Dumez
646c6b6e64 Fix torrentreactor engine plugin 2013-01-09 19:16:44 +02:00
Christophe Dumez
3eae8b3db2 Update language files 2013-01-09 19:06:09 +02:00
Christophe Dumez
8148f9a95a Merge pull request #320 from Gelmir/lang_ru
Update Russian translation.
2013-01-09 09:05:04 -08:00
Nick Tiskov
a756c264f9 Update Russian translation. 2013-01-09 20:30:24 +04:00
Christophe Dumez
add29f9a5c Remove torrentdownloads.ws search plugin (Pretty much dead...) 2013-01-08 22:24:21 +02:00
Christophe Dumez
6a16ca31a2 Really use HTTPS link for isohunt engine 2013-01-08 21:51:51 +02:00
Christophe Dumez
b1cf8c16df Use HTTPS link for thepiratebay.se 2013-01-08 21:47:24 +02:00
Christophe Dumez
5b2947764d Use HTTPS link for isohunt 2013-01-08 21:41:16 +02:00
Christophe Dumez
452fdbcc6f Use HTTPS link for kat.ph plugin 2013-01-08 21:34:28 +02:00
Christophe Dumez
1b3a758f28 Search plugins: Properly uncompress gzipped responses in retrieve_url() 2013-01-08 21:30:43 +02:00
Christophe Dumez
4db73d421d Remove outdated torrentz link 2013-01-08 20:08:40 +02:00
Christophe Dumez
643840d969 Remove btjunkie search plugin 2013-01-08 18:57:54 +02:00
Christophe Dumez
062b7733b1 Merge pull request #310 from Gelmir/ru_ts
Update Russian translation
2013-01-03 07:08:03 -08:00
Nick Tiskov
8302b9e1d7 Update Russian translation 2013-01-03 14:52:34 +04:00
Christophe Dumez
12bd5c9dd7 Update Italian translation 2013-01-02 18:25:53 +02:00
sledgehammer999
57a609a62c Merge pull request #301 from Gelmir/static_favicon
Use qico plugin in static build. Required for RSS favicon capabilities.
2012-12-30 08:43:56 -08:00
Christophe Dumez
26228e747d Merge pull request #299 from Gelmir/anon_mode_help_external
Anonymous mode link is not opened in default browser.
2012-12-30 02:22:22 -08:00
Christophe Dumez
6f88b072d1 Merge pull request #300 from Gelmir/uploaded_column
Main view column changes
2012-12-30 02:21:44 -08:00
Nick Tiskov
f55ea07c1d Move QTPLUGIN qmake macro to src.pro. 2012-12-29 20:06:15 +04:00
Nick Tiskov
0cdb833aa6 Use qico plugin in static build. Required for RSS favicon capabilities. 2012-12-28 15:40:22 +04:00
Nick Tiskov
54e99b73d6 Fix 'Amount Uploaded' contradiction between main view and properties widget 2012-12-27 17:57:31 +04:00
Nick Tiskov
680998f9c2 Add 'Uploaded' column to main view 2012-12-27 17:55:40 +04:00
Nick Tiskov
12d062cd7e Anonymous mode link is not opened in default browser. 2012-12-27 16:54:11 +04:00
Christophe Dumez
bb1663636a Merge pull request #259 from sledgehammer999/revert_disk_cache
Partially revert commit aeb5fa. See issue #258.
2012-12-26 11:33:47 -08:00
Christophe Dumez
c19b33afc1 Merge pull request #296 from sledgehammer999/minor_optimize
Another minor optimization in qbtsession.
2012-12-26 11:24:35 -08:00
Christophe Dumez
7fba885d48 Merge pull request #295 from sledgehammer999/optimize_torrent_addittion
Optimize torrent addittion of huge torrents
2012-12-26 11:24:03 -08:00
sledgehammer999
aee105ec6c Another minor optimization in qbtsession. 2012-12-26 20:24:36 +02:00
sledgehammer999
b6cedbe4af Optimize the preview of huge torrents. Fixes issue #288. 2012-12-26 20:07:52 +02:00
sledgehammer999
c8753c96db Optimize the addittion of huge torrents. Fixes issue #288. 2012-12-26 20:06:38 +02:00
Christophe Dumez
1a5056763c Update Portuguese translation 2012-12-13 19:20:16 +02:00
Christophe Dumez
6621a7aa1c Fixes to Simplified Chinese translation 2012-12-13 19:18:32 +02:00
Christophe Dumez
737e9393f4 Fixes to Simplified Chinese translation 2012-12-09 14:33:17 +02:00
sledgehammer999
38f1d27223 Make the disk cache default to 128MB. 2012-12-03 23:28:56 +02:00
Christophe Dumez
37016aebad Merge pull request #267 from john-peterson/master
Reenable OS cache on Windows
2012-12-03 10:12:58 -08:00
Christophe Dumez
d6e067d654 Revert "Reenable OS cache on Windows"
This reverts commit 8a27c79716.
2012-12-03 20:12:08 +02:00
John Peterson
6894a4b640 Removing option to disable the OS disk cache because it has limited use and is unreliable in Windows. 2012-12-03 18:05:05 +01:00
Christophe Dumez
8a27c79716 Reenable OS cache on Windows 2012-12-03 18:52:07 +02:00
John Peterson
f2c05131c3 Merge branch 'master' of https://github.com/qbittorrent/qBittorrent 2012-12-03 17:34:33 +01:00
John Peterson
31ffbb1edd Enabling Windows disk cache (and adding option to disable it) to prevent a relatively prevalent ERROR_INVALID_PARAMETER.
From my test only the write cache was the culprit, if this can be confirmed the read cache can be disabled by default if that has a benefit.

(Other systems are unchanged.)
2012-12-03 17:27:11 +01:00
Christophe Dumez
177e6738e4 Merge pull request #254 from sledgehammer999/fix_default_path
Fix behaviour of the torrent addition dialog. The 'set as default path' ...
2012-12-01 07:51:20 -08:00
sledgehammer999
47c40b04e4 Remove equality check from QBtSession::setDefaultSavePath(). 2012-12-01 17:48:18 +02:00
sledgehammer999
a899209a01 Optimize check of paths in qbtsession. 2012-12-01 15:40:18 +02:00
Christophe Dumez
ef9cb84b01 Merge pull request #264 from sledgehammer999/qbtsession_optimize
Minor optimization in qbtsession.
2012-12-01 05:05:13 -08:00
sledgehammer999
3e979931d0 Make a setter for defaultSave path in qbtsession and do some other optimizations to avoid potential pitfalls. 2012-12-01 14:48:08 +02:00
sledgehammer999
60c3244faa Don't touch qbtsession here. 2012-12-01 14:11:20 +02:00
sledgehammer999
bd89dca0af Minor optimization in qbtsession. 2012-12-01 14:08:46 +02:00
Christophe Dumez
b97c6cadee Merge pull request #256 from sledgehammer999/fix_dir_separators
Fix dir separators
2012-12-01 00:07:27 -08:00
sledgehammer999
1a965cc0bd Partially revert commit aeb5fa. See issue #258. 2012-12-01 02:20:09 +02:00
sledgehammer999
4749fa45e8 Improve the display of paths in the 'Add new torrent' dialog. 2012-11-30 01:38:01 +02:00
sledgehammer999
6b7bd55931 Improve the handling of native directory separators. 2012-11-30 01:37:08 +02:00
sledgehammer999
a50aa2d8e5 Save preferences before updating QBtSession. 2012-11-30 01:32:11 +02:00
sledgehammer999
93cdd1b98c Update the qbtsession when set a new default path. 2012-11-28 02:02:54 +02:00
sledgehammer999
d6353fc3b2 Fix behaviour of the torrent addition dialog. The 'set as default path' didn't work as intended. Closes issues #251 and #243. 2012-11-28 01:48:01 +02:00
Christophe Dumez
1809de7f1a Fix "Couldn't set environment variable..." message on start up (closes #245) 2012-11-24 10:47:05 +02:00
Hyperz
2e3cd114bc Changed LineEdit border style to system default 2012-11-17 12:54:35 +01:00
Driim
694477855b Change icon for "Copy tracker URL" 2012-11-15 22:16:06 +04:00
Driim
84322976ba Copy tracker URL to the clipboard
- code cleanup
2012-11-15 22:04:26 +04:00
Christophe Dumez
b7de633090 Belarusian translation update by Воронцов Михаил 2012-11-15 19:36:54 +02:00
Christophe Dumez
6faa227df3 Sort previewable extension in alphabetical order 2012-11-11 19:27:05 +02:00
Christophe Dumez
051341a42a Add m4v to the list of previewable file extensions (closes #216)
Also optimize the misc::isPreviewable() function.
2012-11-11 19:23:10 +02:00
Christophe Dumez
634be0012f Merge pull request #215 from sledgehammer999/create_torrent
Open stream in binary mode. Fixes issue #161
2012-11-10 09:54:33 -08:00
Christophe Dumez
5a4dee374c Merge pull request #208 from denizdogan/master
Fix typo: 'occured'
2012-11-10 09:03:34 -08:00
Christophe Dumez
f32818d811 Merge pull request #211 from Gelmir/master
Small fix for for RSS regexp, should fix #210
2012-11-10 09:02:34 -08:00
Nick Tiskov
7d49e8868c Fix 'must not contain' regexp with '|' character
Checking if we are using regexp was done in setMustContain and
setMustNotContain before m_useRegex  was even read, corrupting the
value.
Only m_mustNotContain is affected because of how
RssDownloadRule::setMustNotContain handles read string when m_useRegex
is false.
2012-11-08 23:18:51 +04:00
Deniz Dogan
bd3dd337c1 Replace 'occured' with 'occurred' everywhere, except compiled lang files. 2012-11-07 02:38:22 +01:00
Driim
d85ff9e088 Add feature: copy tracker URL 2012-11-06 23:03:19 +04:00
Dmitriy Falko
c82174de6b Merge pull request #1 from qbittorrent/master
update
2012-11-06 10:43:59 -08:00
Christophe Dumez
05330632f2 Update Norwegian translation 2012-10-17 22:15:18 +03:00
sledgehammer999
7d1e2e2b2a Open stream in binary mode. Fixes issue #161 2012-10-17 19:21:27 +03:00
Christophe Dumez
76f959599f Fixes to Italian translation 2012-10-14 09:47:53 +03:00
Christophe Dumez
66a4777413 Update language files 2012-10-08 21:35:51 +03:00
Christophe Dumez
65660004c5 Update Changelog 2012-10-08 21:34:41 +03:00
Christophe Dumez
22ed4c08f8 Merge pull request #151 from sledgehammer999/windows_startup
Add option to start qbt with Windows startup.
2012-10-08 11:32:03 -07:00
sledgehammer999
3dd7ac0549 Add option to start qbt with Windows startup. 2012-10-07 23:58:27 +03:00
Christophe Dumez
89d3678adc Update language files 2012-10-07 19:18:11 +03:00
Christophe Dumez
aeb5fa036c Update max write cache size to 2048MB and set it to automatic by default (closes #148) 2012-10-07 19:17:38 +03:00
Christophe Dumez
6cf2f942e7 Fix cookie support for RSS feeds (closes #119) 2012-10-07 17:25:17 +03:00
Christophe Dumez
8758be5912 Fix timezone parsing in RSS (closes #136) 2012-10-07 17:04:55 +03:00
Christophe Dumez
c6edf31480 Add confirmation dialog for "Force recheck" action (closes #131) 2012-10-07 16:21:11 +03:00
Christophe Dumez
c221b08982 Update language files 2012-10-07 16:09:33 +03:00
Christophe Dumez
2fc9382d7e Merge pull request #137 from dance/master
Russian translation fixes
2012-10-07 06:08:47 -07:00
Christophe Dumez
26314fae01 No longer fallback to ANY interface if the user-selected interface cannot be found (closes #143) 2012-10-07 16:04:07 +03:00
Christophe Dumez
573dac0b91 Do not store created torrent in memory before writing it to a file (closes #133) 2012-10-07 15:42:32 +03:00
Christophe Dumez
3bc85c29ae Merge pull request #145 from sledgehammer999/fix_encoding_problem
Fix command-line encoding problem on Windows (closes #139)
2012-10-06 22:55:33 -07:00
sledgehammer999
51bc6bd95a Fix encoding problem. Fixes #139 2012-10-07 01:17:22 +03:00
dance
3598235906 russian translation: some more fixes 2012-10-03 01:14:12 +04:00
dance
b651cdb4a1 russian translation: checked, fixed and nearly everything is translated now 2012-10-02 00:20:08 +04:00
Christophe Dumez
7bd9139d28 Properly recover from HTTP parsing errors (Web UI)
May be related to issue #68.
2012-09-29 14:26:52 +03:00
Christophe Dumez
32bfd8741f Fix handling of simultaneous connections in Web UI.
May be related to issue #68.
2012-09-29 14:11:07 +03:00
Christophe Dumez
51aae059e3 Fix "Skip hash check" feature in torrent import dialog (closes #128) 2012-09-29 13:59:46 +03:00
Christophe Dumez
c7f1f52f1c Add Basque locale to Web UI 2012-09-28 17:48:19 +03:00
Christophe Dumez
222e89a782 Update Basque translation 2012-09-28 17:46:11 +03:00
Christophe Dumez
1b54b4dbb7 Fix homepage link in Web UI (closes #118) 2012-09-23 19:30:53 +03:00
Christophe Dumez
f347bdeab5 Update language files 2012-09-23 15:09:36 +03:00
Dirk Neukirchen
559ac673e2 updated apache ssl-faq links 2012-09-23 15:08:55 +03:00
Christophe Dumez
806ab07865 Import new trackers from magnet link in case of duplicate torrent (closes #111) 2012-09-23 11:09:01 +03:00
Christophe Dumez
819dcacae0 Make sure new RSS download rules apply to existing articles as well, not just new ones
May be related to #116.
2012-09-23 10:25:25 +03:00
Christophe Dumez
7e57a63ec5 Disabling systray icon no longer disables file association settings (closes #114) 2012-09-22 14:00:58 +03:00
Christophe Dumez
3e294d6918 Update Italian translation 2012-09-20 20:54:32 +03:00
Christophe Dumez
a214823dcf Update Italian author 2012-09-20 20:50:43 +03:00
Christophe Dumez
5488d55ca2 Norwegian translation update 2012-09-20 20:48:31 +03:00
Christophe Dumez
459d2c5408 OS/2 fixes by Silvan Scherrer 2012-09-20 20:45:53 +03:00
Christophe Dumez
f691ce2238 Merge pull request #105 from sledgehammer999/packaging_scripts
Packaging script for Windows.
2012-09-18 13:01:49 -07:00
sledgehammer999
38f825c8c6 Updated installer script to ommit specific translations. 2012-09-18 22:57:16 +03:00
sledgehammer999
948702e98b Packaging script for Windows. 2012-09-18 22:54:43 +03:00
Christophe Dumez
4c24f5f513 Remove qt translations for locales that are not supported by qBittorrent 2012-09-18 22:52:31 +03:00
Christophe Dumez
b0972fdc94 Merge pull request #103 from sledgehammer999/translations
Update Qt translations to v4.8.3
2012-09-18 12:49:45 -07:00
sledgehammer999
7f10f04025 Added translations from Qt 4.8.3 and updated some others. 2012-09-18 21:59:01 +03:00
Christophe Dumez
eb726c42c6 Fix torrent temporary path functionality 2012-09-18 20:02:52 +03:00
Christophe Dumez
b2b959d5e3 Improve Mac packaging.
We now ship qt translations.
2012-09-16 10:37:47 +03:00
Christophe Dumez
6f693bc36e Merge pull request #98 from sledgehammer999/windows_build2
Added version info for the binary.
2012-09-15 23:06:21 -07:00
Christophe Dumez
adb82dfc2e Merge pull request #97 from sledgehammer999/windows_build
Some typo fix and library names fix.
2012-09-15 23:04:48 -07:00
sledgehammer999
aa8e4ccdef Added version info for the binary. 2012-09-16 04:17:51 +03:00
sledgehammer999
37dec0d927 Some typo fix and library names fix. 2012-09-16 04:15:57 +03:00
Christophe Dumez
847da2b106 Update Italian translation 2012-09-15 18:25:00 +03:00
Christophe Dumez
0088c67fa7 Add new Italian translator's name to about dialog 2012-09-15 18:20:12 +03:00
Christophe Dumez
312263da49 Small build fix 2012-09-15 17:47:30 +03:00
Christophe Dumez
d12c5cdf55 Address encoding issues when using search engine on Windows (closes #29) 2012-09-15 16:54:09 +03:00
Christophe Dumez
8a12382f1f Fix issue with temporary directory not being taken into consideration
Closes issue #94.
2012-09-15 15:53:33 +03:00
Christophe Dumez
64f944b571 Merge pull request #95 from sledgehammer999/update_windows_build
Updated Windows build conf files.
2012-09-15 03:44:14 -07:00
sledgehammer999
b8720b8d1c Updated Windows build conf files. 2012-09-15 12:12:10 +03:00
Christophe Dumez
83efb442ae Update language files 2012-09-15 10:06:27 +03:00
Christophe Dumez
cf3f0a606d Add Hebrew translation 2012-09-15 10:05:50 +03:00
Spencer Oliver
2508d54c10 session: always output anonymous status
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
2012-09-13 19:04:54 +03:00
Spencer Oliver
e3c78d3a81 options: ensure ui matches options
If we set anonymous mode make sure the ui is disabled to match.

Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
2012-09-13 19:03:11 +03:00
Christophe Dumez
a5a9b47ce4 Update Italian translation. 2012-09-13 18:50:11 +03:00
Christophe Dumez
d09a0f6167 "Completed On" column is not updated until restart (closes #84) 2012-09-10 21:09:22 +03:00
Christophe Dumez
c79e801929 Disable search completion (closes #89) 2012-09-10 19:43:30 +03:00
Christophe Dumez
2a5c9ae382 OS/2 Fixes from Silvan Scherrer 2012-09-06 15:40:50 +03:00
Christophe Dumez
7af964cfe6 Merge pull request #81 from veeti/fix-compile
Fix case for header inclusions
2012-09-02 21:46:19 -07:00
Veeti Paananen
e482900754 Fix case for header inclusions
Fixes building on case-sensitive filesystems.
2012-09-03 00:11:46 +03:00
Christophe Dumez
de43a0b7a1 Bypass cache when uploading a torrent file in Web UI (closes #68) 2012-09-02 21:41:11 +03:00
Christophe Dumez
cf7bc882f5 Fix possible crash due to labels (closes #64) 2012-09-01 13:51:04 +03:00
Christophe Dumez
06c8e658aa Correctly escape transfer list filter value typed by user 2012-08-28 18:36:10 +03:00
Christophe Dumez
7aa39e42c1 Fix label-based filtering of torrents whose label contains special characters 2012-08-28 18:27:33 +03:00
Christophe Dumez
ca2a659970 Made progress calculation more efficient in torrent content model
Stop to address issue #24.
2012-08-27 22:01:35 +03:00
Christophe Dumez
f73f267997 TorrentContentModel clean up 2012-08-27 21:11:54 +03:00
Christophe Dumez
d7ea394993 Great improve size calculation in torrent content model
Step to address issue #24.
2012-08-27 21:04:24 +03:00
Christophe Dumez
3f755de80b TorrentContentModel code cleanup 2012-08-26 21:33:52 +03:00
Christophe Dumez
00945e5749 Stop updating file priorities regularly in torrent content panel
Performance improvement to address issue #24.
2012-08-26 20:59:51 +03:00
Christophe Dumez
c43c362903 TorrentContentModel code clean up 2012-08-26 20:52:53 +03:00
Christophe Dumez
268dad58f6 TorrentContentModel code clean up 2012-08-26 20:43:27 +03:00
Christophe Dumez
61511201db TorrentContentModel code clean up 2012-08-26 20:35:18 +03:00
Christophe Dumez
38daa23be2 TorrentContentModel code clean up 2012-08-26 20:15:55 +03:00
Christophe Dumez
45ba858022 TorrentContentModel code clean up 2012-08-26 20:08:26 +03:00
Christophe Dumez
8ad821c468 Simplify TorrentContentModel code 2012-08-26 19:55:09 +03:00
Christophe Dumez
5fe5c4d147 Simplify TorrentContentModel code 2012-08-26 19:49:29 +03:00
Christophe Dumez
f3e465c142 TorrentContentModel: Simplify progress update code 2012-08-26 18:45:41 +03:00
Christophe Dumez
d849ac32f9 Make TorrentContentModel populating more efficient
Step to improve issue #24.
2012-08-26 18:31:16 +03:00
Christophe Dumez
e0114ebffc TorrentContentModel: Get rid of useless member 2012-08-26 18:26:06 +03:00
Christophe Dumez
0fdacf4d54 Use polymorphism to distinguish folder / file items in torrent content model
Step to address issue #24.
2012-08-26 18:10:32 +03:00
Christophe Dumez
30be83d445 Optimizations to TorrentContentModel
First step to address issue #24.
2012-08-26 15:00:37 +03:00
Christophe Dumez
e9d075049b Add "clear" functionality to search field (closes #59) 2012-08-26 10:12:30 +03:00
Christophe Dumez
c7c627015d Fix encoding problem for detected XDG Download folder (closes #53)
Only affects Linux.
2012-08-25 16:53:02 +03:00
Christophe Dumez
d62554aaba Minor code clean up 2012-08-25 16:34:00 +03:00
Christophe Dumez
d2a6887248 Fix crash when a fastresume file is empty (closes #52) 2012-08-24 19:19:54 +03:00
Christophe Dumez
879f8f080d Attempt to use qBittorrent icon from theme if available (closes #49) 2012-08-23 21:22:15 +03:00
Christophe Dumez
10f147ff40 Update Changelog 2012-08-21 20:13:00 +03:00
Driim
23ea811095 Add setting to copy .torrent files for finished downloads (closes issue #22)
Patch edited by Christophe Dumez.
2012-08-21 20:10:53 +03:00
Christophe Dumez
dac0d67717 Fixes to Web UI shutdown command 2012-08-21 18:50:09 +03:00
Christophe Dumez
399d957142 Make uTP rate limited by default 2012-08-21 17:49:23 +03:00
Christophe Dumez
368ae43849 Web UI shutdown fix. 2012-08-20 17:50:41 +03:00
Christophe Dumez
669d5a12a2 Fixes to Web UI shutdown button 2012-08-19 22:15:44 +03:00
Christophe Dumez
0fe09aa088 Merge pull request #40 from ngaro/master
Add shutdown button to the Web UI
2012-08-19 11:57:28 -07:00
Nikolas Garofil
6711c58ff1 Remove icon (ugly), fix localization 2012-08-19 20:43:15 +02:00
Nikolas Garofil
2b02ec3a4e Shutdownbutton in webui 2012-08-19 19:25:21 +02:00
Christophe Dumez
e664047c5a RSS code clean up 2012-08-19 17:36:03 +03:00
Christophe Dumez
d7c36c9c3c RSS code clean up 2012-08-19 17:22:30 +03:00
Christophe Dumez
82fbb351dd RSS code clean up 2012-08-19 17:01:35 +03:00
Christophe Dumez
726c5c5f7f Update Changelog 2012-08-19 16:10:15 +03:00
Christophe Dumez
99089356f5 Merge pull request #35 from ngaro/master
Enables the -nox version to optionally run in the background
2012-08-19 06:05:33 -07:00
Christophe Dumez
fd2ba6f635 RSS code clean up 2012-08-19 15:48:28 +03:00
Christophe Dumez
0d1f9fcc58 RSS code clean up 2012-08-19 15:12:08 +03:00
Christophe Dumez
a70e565edb RSS code clean up 2012-08-19 15:00:07 +03:00
Christophe Dumez
0efcdbaf52 RSS code clean up 2012-08-19 14:55:30 +03:00
Christophe Dumez
12e24ade70 Remove outdated function definition 2012-08-19 14:36:04 +03:00
Christophe Dumez
7b659add36 Update Arabic translation 2012-08-19 11:51:17 +03:00
Christophe Dumez
d1e30cacf8 Keep RSS articles sorted by date in memory do avoid sorting them all the time
Optimization to address issue #34.
2012-08-19 11:46:50 +03:00
Christophe Dumez
aecdc57cd4 RSS: Cache number of unread articles in a feed instead of computing it every time.
Optimization to address issue #34.
2012-08-18 22:25:21 +03:00
Christophe Dumez
58bc10fc47 Do not override RSS feed title if the user renamed it 2012-08-18 21:30:15 +03:00
Christophe Dumez
ad7c9ace50 Do not save RSS feed to disk unless it has changed.
Stop to address issue #34.
2012-08-18 21:26:22 +03:00
Nikolas Garofil
b897708a41 forgot to change the string 2012-08-18 18:34:36 +02:00
Nikolas Garofil
d1060ac5f3 Completed previous commit
Added some suggestions for the previous commit from Christophe Dumez
and made sure the argument directly after -d is looked at.
2012-08-18 18:11:27 +02:00
Nikolas Garofil
b8e5cc01c1 shouldDaemonize en qcritical 2012-08-18 18:03:03 +02:00
Christophe Dumez
a26723a57a RSS: parse lastBuildDate tag and abort parsing if the feed has not changed since last time.
Optimization to address issue #34.
2012-08-18 18:43:20 +03:00
Nikolas Garofil
1811ec6cab Optional daemon-mode for qbittorrent-nox 2012-08-18 17:33:51 +02:00
Christophe Dumez
c50c9239ea Move RSS parsing to another thread to avoid freezing the UI
RSS items are now displayed as soon as they have been parsed
instead of displaying all of them in one batch once the whole
feed is parsed.

First step to address issue #34.
2012-08-18 18:06:29 +03:00
Christophe Dumez
820d94e014 Fix wiki link for "Anonymous Mode" feature (#25) 2012-08-14 20:57:40 +03:00
Christophe Dumez
c03f2bffce Update URL for search plugins updater (closes #25) 2012-08-14 20:42:52 +03:00
Christophe Dumez
9c61acc95d Fix crash when using unauthorized characters in label names (closes #19) 2012-08-12 17:57:17 +03:00
Christophe Dumez
e62abdd651 Remove unused function 2012-08-12 10:13:26 +03:00
Christophe Dumez
75cf25de62 Remember queue position for torrents without metadata (closes #17) 2012-08-12 09:56:36 +03:00
Christophe Dumez
6a8f09f9ee Fixes to Italian translation 2012-08-10 21:26:53 +03:00
Christophe Dumez
7340f1dc26 Update language files 2012-08-10 14:24:49 +03:00
Christophe Dumez
a78cc700c0 Merge pull request #12 from Simo91/patch-1
Update src/lang/qbittorrent_it.ts
2012-08-10 04:21:04 -07:00
Christophe Dumez
41d4096890 Bump version to 3.1.0alpha 2012-08-10 11:24:02 +03:00
Christophe Dumez
8104c41332 Fix possible crash when adding a tracker to a magnet torrent without metadata (Closes #1034254) 2012-08-10 11:21:03 +03:00
Christophe Dumez
81b0a7f785 Handle exceptions in readAlerts() 2012-08-10 11:20:55 +03:00
Christophe Dumez
e73bff817c Bump to v3.0.0 2012-08-09 13:38:04 +03:00
Christophe Dumez
486779ceb2 Update Arabic translation 2012-08-07 09:44:14 +03:00
Christophe Dumez
283a9950f3 Fixes to Norwegian translation 2012-07-31 11:02:44 +03:00
Simone
7f0875cda7 Update src/lang/qbittorrent_it.ts 2012-07-26 23:48:59 +03:00
Christophe Dumez
4d601f5383 Fix build with Qt < 4.7 2012-07-21 18:02:09 +03:00
Christophe Dumez
4d76bd33fc Update Croatian translation 2012-07-20 19:03:38 +03:00
Christophe Dumez
179985954c Fix DHT wrongly reported as disabled for magnet links (closes #987340) 2012-07-14 17:39:39 +03:00
Christophe Dumez
ef34285855 Merge pull request #11 from BotanEgg/master
More end iterator caching and iterator preincrement.
2012-07-14 07:30:27 -07:00
Константин Гончарик
bbd1c9ee42 Iter cache more && prefix it 2012-07-14 19:45:40 +08:00
Christophe Dumez
7cffd267d8 Merge pull request #10 from BotanEgg/master
cache end iterators before loops (optimisation)
2012-07-13 23:53:50 -07:00
BotanEgg
bb11d11a72 Itr cache 2012-07-14 06:28:23 +08:00
Christophe Dumez
ae09bee193 Fixes to italian translation by Roberto Boriotti 2012-07-13 22:32:26 +03:00
Константин Гончарик
abf8c179fc Use preincrement for iterators instead of postincrement 2012-07-13 21:48:19 +03:00
Christophe Dumez
5874c7bd57 Bump to v3.0.0rc5 2012-07-11 20:26:56 +03:00
Christophe Dumez
12280c6a0f Fix RSS parsing 2012-07-11 20:26:12 +03:00
Christophe Dumez
c40801ce99 Fix possible crash when adding a new RSS stream 2012-07-11 20:10:15 +03:00
Christophe Dumez
cc192d7d47 Update Lithuanian translation 2012-07-11 19:17:25 +03:00
Christophe Dumez
64c256109a Fix Korean translation 2012-07-11 19:15:18 +03:00
Christophe Dumez
d93a63e01a Add more RSS debug 2012-07-11 18:44:43 +03:00
Christophe Dumez
1c6ef50b77 Add more RSS debug 2012-07-11 18:17:27 +03:00
Christophe Dumez
497e2e92f8 Update Greek and Bulgarian translations 2012-07-11 17:04:38 +03:00
Christophe Dumez
2e950cc28b Update Czech translation 2012-07-10 19:06:32 +03:00
Christophe Dumez
f09ea1a884 Basque translation update by Xabier Aramendi. 2012-07-08 20:32:01 +03:00
Christophe Dumez
eebb7c8477 Update Dutch translation 2012-07-08 17:30:43 +03:00
Christophe Dumez
8feb6644a3 Update Ukranian translator's name 2012-07-08 17:27:16 +03:00
Christophe Dumez
dd30ada095 Fixes to Ukrainian translation 2012-07-08 17:20:53 +03:00
Christophe Dumez
0627968c2f Bump to v3.0.0rc4 2012-07-08 10:35:39 +03:00
Christophe Dumez
89249c140f Fix "Set as default save path" checkbox in torrent addition dialog 2012-07-06 20:12:39 +03:00
Christophe Dumez
90373897d6 Fix permission problems on Windows (closes #1020227) 2012-07-05 19:10:13 +03:00
Christophe Dumez
a85ddada25 Minor code refactoring 2012-07-05 18:46:25 +03:00
Christophe Dumez
3bb474e12f Update Traditional Chinese translation 2012-07-05 18:21:08 +03:00
Christophe Dumez
3b4a312b97 Update Portuguese and Brazilian translations 2012-07-04 19:59:38 +03:00
Christophe Dumez
7a58df594d Update Norwegian translation 2012-07-04 19:56:21 +03:00
Christophe Dumez
524f837ca5 Update Polish translation 2012-07-04 17:50:35 +03:00
Christophe Dumez
4800b456c2 Bump to v3.0.0rc3 2012-07-03 19:14:54 +03:00
Christophe Dumez
4652eb8ff3 Remember torrent addition dialog expanded state 2012-07-03 19:12:53 +03:00
Christophe Dumez
c2096e2ecd Remember torrent addition dialog width 2012-07-03 18:51:48 +03:00
Christophe Dumez
e27a648594 Remember Y position of the torrent addition dialog 2012-07-03 18:47:27 +03:00
Christophe Dumez
90b1567d13 Remember column sizes in torrent addition dialog 2012-07-03 18:37:24 +03:00
Christophe Dumez
41132d39ae Fix double-click to open destination path (closes #1020366) 2012-07-03 18:09:46 +03:00
Christophe Dumez
0ffba231d4 Update Armenian translation 2012-07-03 18:07:42 +03:00
Christophe Dumez
c6ab0b148b Fix model update when setting the priority of a folder in torrent content 2012-07-02 22:51:03 +03:00
Christophe Dumez
183453488e Fix disk space lalel updating in torrent addition dialog 2012-07-02 22:19:05 +03:00
Christophe Dumez
c96f14a7c8 Update Turkish translation 2012-07-02 21:48:01 +03:00
Christophe Dumez
c5841146ff Fix issue when "minimize to systray" and "start minimized" are both enabled.
Window could not be restored.
2012-07-02 20:58:56 +03:00
Christophe Dumez
4ff249525b Bump to v3.0.0rc2 2012-07-02 20:31:38 +03:00
Christophe Dumez
5d5bf403a8 Fix hiding of unwanted files 2012-07-02 20:30:45 +03:00
Christophe Dumez
2747481816 Code clean up 2012-07-02 19:57:16 +03:00
Christophe Dumez
c9591a66e8 Update Chinese translation 2012-07-02 19:56:14 +03:00
Christophe Dumez
02c4be4eaa Fix "Open destination folder" functionality to consider torrent root folder 2012-07-02 19:51:26 +03:00
Christophe Dumez
ee96f83211 Fix torrent content sorting in torrent addition dialog (closes #1020160) 2012-07-02 19:31:51 +03:00
Christophe Dumez
b095a1e3fe Make sure the root folder is expanded in Torrent content panel 2012-07-02 19:27:39 +03:00
Christophe Dumez
d5aaa24ad6 Update Basque translation 2012-07-02 19:06:50 +03:00
Christophe Dumez
9efd576d53 Korean translation update by Woosuk Park 2012-07-02 18:27:45 +03:00
Christophe Dumez
8e0d01643f Update Japanese translation 2012-07-02 18:21:56 +03:00
Christophe Dumez
cb817bc06f Update Italian and Ukrainian translations 2012-07-02 18:19:08 +03:00
Christophe Dumez
1b905d5126 Merge pull request #8 from Tilka/master
Fix torrent transfer stats
2012-07-01 22:34:39 -07:00
Tilka
ca26cc0000 Fix torrent transfer stats, 2nd try
The constants themselves were also mixed up.
2012-07-01 22:59:12 +02:00
Tilka
00f40e6771 Fix torrent transfer stats 2012-07-01 22:14:16 +02:00
Christophe Dumez
7a64c1ebb4 Update Galician translation 2012-07-01 20:51:07 +03:00
Christophe Dumez
5d5f3cbdfd Slovak translation fix. 2012-07-01 20:47:24 +03:00
Christophe Dumez
8bd35852dc Update french translation 2012-07-01 20:44:40 +03:00
Christophe Dumez
92189b6c50 Fix error in translatable string 2012-07-01 20:38:14 +03:00
Christophe Dumez
e50ab2639e Remove a translatable strings 2012-07-01 20:29:05 +03:00
Christophe Dumez
33832a46c1 Update Slovak translation 2012-07-01 20:14:57 +03:00
Christophe Dumez
6a905fc9e0 Fix 2 strings 2012-07-01 20:13:10 +03:00
Christophe Dumez
15d1e3505c Update Norwegian translation 2012-07-01 20:10:56 +03:00
Christophe Dumez
fda1797149 Update Changelog 2012-07-01 16:20:44 +03:00
Christophe Dumez
096baaf441 Update Changelog 2012-07-01 16:19:53 +03:00
Christophe Dumez
69cb9b906f Update language files 2012-07-01 16:08:02 +03:00
Christophe Dumez
755dc40ee4 Update Python version for Windows 2012-07-01 16:06:23 +03:00
Christophe Dumez
f601aa3cfb Bump version to v3.0.0rc1 2012-07-01 14:45:55 +03:00
Christophe Dumez
79cb430878 Get rid of a Web UI hack for Safari since it seems useless now. 2012-07-01 14:44:14 +03:00
Christophe Dumez
90f90936e1 Fix ThePirateBay search plugin 2012-07-01 14:34:37 +03:00
Christophe Dumez
a98ad63d8b Add support for adding multiple local torrents at once (Web UI) 2012-07-01 13:23:41 +03:00
Christophe Dumez
6d31af676e Fix keyboard focus issues on Main window 2012-06-30 18:25:09 +03:00
Christophe Dumez
1204bf6e80 Fix unicode support in torrent addition dialog title 2012-06-30 18:06:23 +03:00
Christophe Dumez
48f2b6fb66 Fix OS2 build 2012-06-30 17:42:20 +03:00
Christophe Dumez
10a4556479 Windows build fixes 2012-06-30 17:40:58 +03:00
Christophe Dumez
f4320cb58a Bring window to front after restoring from systray 2012-06-29 19:41:21 +03:00
Christophe Dumez
d31d935522 Add some spacing between property panel buttons 2012-06-28 18:27:23 +03:00
Christophe Dumez
85d2fd8ce0 Fix torrent availability computation 2012-06-28 18:10:22 +03:00
Christophe Dumez
ad79cbb9a1 Compilation fix 2012-06-28 18:06:05 +03:00
Christophe Dumez
bdb0e125a4 Code optimization 2012-06-27 19:30:06 +03:00
Christophe Dumez
d26179cca0 Fix window visibility toggling bug with "minimized to systray" enabled
The issue seemed to affect Windows only.
2012-06-27 17:48:43 +03:00
Christophe Dumez
8d612e8e2d Bump to v3.0.0beta4 2012-06-24 20:35:04 +03:00
Christophe Dumez
e74b39f5af Build fix 2012-06-24 20:31:16 +03:00
Christophe Dumez
aaf3194670 Bump version to v3.0.0beta3 2012-06-24 17:05:54 +03:00
Christophe Dumez
74079b2c86 Support custom save path / label for RSS feeds using magnet links 2012-06-24 16:48:40 +03:00
Christophe Dumez
2eae22ac06 Fix issue with unreversible "Minimize to tray" 2012-06-24 16:29:50 +03:00
Christophe Dumez
80359f3e5e Fix torrent loading on Mac OS X (closes #1011229) 2012-06-24 15:06:44 +03:00
Christophe Dumez
ccefe68e4c Several Mac manifest file improvements 2012-06-24 15:06:26 +03:00
Christophe Dumez
f039cec4ca Update Mac plist file so that qBittorrent is properly detected as a torrent app 2012-06-24 15:05:28 +03:00
Christophe Dumez
5a65580169 Add support for RSS feeds using magnet links (Closes #1016379) 2012-06-24 10:27:32 +03:00
Christophe Dumez
39ea57fe29 Mac compilation fix 2012-06-24 09:59:12 +03:00
Christophe Dumez
361db3d2cd Update belarusian translation 2012-06-22 13:48:27 +03:00
Christophe Dumez
83494f999a Merge pull request #7 from Tilka/master
Change MIME type for PNG images to image/png
2012-06-20 10:13:35 -07:00
Christophe Dumez
de4cb2ede7 Merge pull request #6 from Tilka/patch-1
missing 'e' in updateQueueingSystem
2012-06-20 10:11:58 -07:00
Tillmann Karras
2f6ef9af51 Make mascot image URL relative 2012-06-20 07:18:07 +03:00
Tillmann Karras
2f0e15bc25 Change MIME type for PNG images to image/png
This is the official MIME type assigned by the IANA (see http://www.iana.org/assignments/media-types/image/png).
2012-06-19 02:52:54 +03:00
Tillmann Karras
0cd4c079e9 missing 'e' in updateQueueingSystem 2012-06-19 02:29:04 +03:00
Christophe Dumez
3197d5cc2f Minor code optimization 2012-06-10 20:49:50 +03:00
Christophe Dumez
81e4e39878 Web UI: Stop using absolute URLs in ajax requests (closes #1011226) 2012-06-10 20:17:58 +03:00
Christian Kandeler
55a6bc3855 Check for magnet links in watched folders.
Look for files ending with ".magnet" and interpret their contents as a
magnet link.
This allows scripts to collect magnet links from the web and let
qBittorrent download them non-interactively.
2012-05-30 22:28:53 +03:00
Christian Kandeler
acd4b64a8b Fix compilation with namespaced Qt. 2012-05-30 22:28:53 +03:00
Christian Kandeler
984acc581c Fix shadow builds under UNIX. 2012-05-30 22:28:53 +03:00
Christophe Dumez
75a65a5f49 Make sure !.qB extensions are not shown in the Web UI 2012-05-29 18:32:18 +03:00
Frédéric Brière
91af418254 Don't trip on absence of global ratio in QBtSession::processBigRatios()
QBtSession::processBigRatios() must fetch the global ratio, if
applicable, before checking for NO_RATIO_LIMIT.

LP: #835217
2012-05-27 21:40:12 +03:00
Christophe Dumez
901326c004 HTTP server code clean up 2012-05-27 11:06:09 +03:00
Christophe Dumez
8986d87ef3 HTTP request handling clean up and optimization 2012-05-27 10:57:00 +03:00
Christophe Dumez
a0d21ead18 Further rewriting of the JSON-related code 2012-05-26 22:58:53 +03:00
Christophe Dumez
122655758d Fix caching issues in last commit 2012-05-26 21:14:48 +03:00
Christophe Dumez
9a964d871d Rewrite code for returning information about torrents as JSON (Web UI)
- The new code is simpler, cleaner and more efficient
2012-05-26 20:42:44 +03:00
Christophe Dumez
fc4989d738 Remove 100kb limit for torrent file size in Web UI 2012-05-26 10:29:20 +03:00
Christophe Dumez
5f59ab7e48 Update Turkish translation 2012-05-22 22:22:59 +03:00
Christophe Dumez
99557543fc Fix left panel style 2012-05-20 19:09:04 +03:00
Christophe Dumez
d7c907d17d Bump version to v3.0.0beta2 2012-05-20 18:15:13 +03:00
Christophe Dumez
fd9ae50a57 Center new torrent addition dialog 2012-05-20 18:14:02 +03:00
Christophe Dumez
1398a39768 Fix KickAssTorrents plugin 2012-05-20 17:27:16 +03:00
Christophe Dumez
7b4b2fe0f5 Make sure the hide/show text in the tray icon menu is correct 2012-05-20 16:51:32 +03:00
Christophe Dumez
23848be6eb Fix compilation error with libtorrent v0.15 2012-05-20 16:37:22 +03:00
Christophe Dumez
d55f3b5aff RSS: Better cookies support 2012-05-20 16:03:10 +03:00
Christophe Dumez
716e84264e RSS code clean up 2012-05-20 15:09:31 +03:00
Christophe Dumez
600c33dfa3 Fix error message in new torrent addition dialog when a torrent is invalid 2012-05-20 14:17:24 +03:00
Christophe Dumez
e6e2baf3a8 RSS: Support items that don't have a guid (closes #1001777) 2012-05-20 14:01:34 +03:00
Christophe Dumez
cfb4ded943 Remove button to change save path from lower panel 2012-05-17 22:05:18 +03:00
Christophe Dumez
dfe5fbe34c Minor cosmetic changes to main window 2012-05-17 21:20:39 +03:00
Christophe Dumez
82788b9a02 Options: Make sure first tab is initially selected 2012-05-17 18:40:16 +03:00
Christophe Dumez
ff3cc4b8de Bump to beta1 2012-05-17 18:23:54 +03:00
Christophe Dumez
f74a471177 Improve left panel style 2012-05-17 18:12:31 +03:00
Christophe Dumez
50ee44a1cf Never disable the properties panel 2012-05-17 17:13:16 +03:00
Christophe Dumez
7a29f3d71d Remove focus from widgets on left panel 2012-05-17 16:49:14 +03:00
Christophe Dumez
30d5273bb5 Stop subclassing QObject in misc 2012-05-17 15:21:13 +03:00
Christophe Dumez
0f291629cc Move FileSystem utility functions out of misc.h
Use new fs_utils.h instead.
2012-05-16 21:19:05 +03:00
Christophe Dumez
e6e63fa529 Update Turkish translation 2012-05-15 20:53:30 +03:00
Christophe Dumez
766b210d06 Update language files 2012-05-15 20:49:27 +03:00
Christophe Dumez
c502edf9e1 Brand new torrent addition dialog 2012-05-15 19:57:31 +03:00
Christophe Dumez
53f55a79b3 Fix layout issue in options dialog 2012-05-15 19:21:35 +03:00
Christophe Dumez
f05ecf900a Fix browse button in torrent addition dialog.
Was broken by a recent pull request.
2012-05-12 16:09:01 +03:00
Christophe Dumez
810a9710d7 Minor clean up 2012-05-05 15:57:43 +03:00
Christophe Dumez
ef6c3f5a64 Clean up torrent addition dialog code a little 2012-05-05 15:34:36 +03:00
Christophe Dumez
0e425d6a04 Merge pull request #3 from mutoso/master
Add the ability to choose the save path when using magnet links
2012-05-05 04:51:38 -07:00
Christophe Dumez
29d28b1d96 Fix compilation on Mac OS 2012-05-05 14:46:20 +03:00
Mutoso
c12467ee3e Add the ability to choose the save path when using magnet links 2012-05-03 00:29:04 -05:00
Christophe Dumez
82e2b3a6cd Fix possible compilation error on Windows 2012-05-02 17:35:22 +03:00
Christophe Dumez
33a0828a33 Update Italian translation 2012-04-23 20:09:10 +03:00
Christophe Dumez
95e2b7ee1a Fix compilation warning 2012-04-15 21:54:41 +03:00
Christophe Dumez
bc6fd3aa72 Various style fixes 2012-04-15 21:26:37 +03:00
Christophe Dumez
a940917144 Add more vector length checks 2012-04-08 11:17:32 +03:00
Christophe Dumez
7bd4a1b849 Update Belarusian translation 2012-03-27 20:05:04 +03:00
Christophe Dumez
f62c38a8a7 Merge pull request #2 from Fisiu/patch-1
Fix build with gcc 4.7.
2012-03-26 08:05:34 -07:00
Fisiu
41c503eb54 Fix build with gcc 4.7. 2012-03-26 13:01:27 +03:00
Christophe Dumez
8cc538085f OS/2 fixes from Silvan Scherrer 2012-03-19 18:33:38 +02:00
Christophe Dumez
b93cebacb2 Fix important Web UI bug (HTTP request parsing bug)
(cherry picked from commit bdaf16123f)
2012-03-18 17:17:09 +02:00
Christophe Dumez
30a3110ca7 make dist now generates .tar.xz as well 2012-03-17 22:12:22 +02:00
Christophe Dumez
cf447296fb Fix compilation with libtorrent v0.16 2012-03-17 18:51:15 +02:00
Christophe Dumez
dfc5e02edd Bump version to v3.0.0alpha2 2012-03-17 17:44:43 +02:00
Christophe Dumez
bcb29fb5fa Make sure .unwanted parent is removed if empty (Closes #946826) 2012-03-17 16:36:02 +02:00
Christophe Dumez
41b57a0878 Make sure OS-created files do not prevent "empty" folder removal
Mac OS X creates .DS_Store files and Windows creates .Thumbs.db
files which can prevent otherwise empty folders removal.
2012-03-17 15:41:32 +02:00
Christophe Dumez
0b13fa6914 Fix possible Web UI authentication problem when using SSL (closes #941343) 2012-03-12 21:59:25 +02:00
Christophe Dumez
c32e651c39 Fix DHT port setting in Web UI (Closes #952182) 2012-03-12 20:54:33 +02:00
Christophe Dumez
fefc7df910 Fix crash when creating a new RSS download rule 2012-03-09 15:40:57 -08:00
Christophe Dumez
90b520651b RSS downloader should not ignore "Do not start automatically" rule
Closes #946910.
2012-03-08 20:18:52 -08:00
Christophe Dumez
3389820c73 Fix possible crash in TorrentContentModel 2012-03-07 08:21:01 -08:00
Christophe Dumez
85167c9043 Update language files 2012-03-07 08:12:37 -08:00
Christophe Dumez
ce6f942ed3 Integrate Basque translation 2012-03-07 08:12:14 -08:00
Christophe Dumez
5cf7e47ffa TorrentContentModel: Fix crash on exit 2012-03-01 21:11:37 +02:00
Christophe Dumez
bd4bb42e95 Link against boost thread 2012-02-26 21:24:32 +02:00
Christophe Dumez
6778b7460a Clean up PeerListWidget 2012-02-25 21:02:19 +02:00
Christophe Dumez
0c279e0567 Remove QT_VERSION checks for 4.5.0 2012-02-25 20:20:11 +02:00
Christophe Dumez
1bee9c6a9d Update Changelog 2012-02-25 20:13:56 +02:00
Christophe Dumez
691b976e11 Clean up TorrentContentModel 2012-02-25 20:05:11 +02:00
Christophe Dumez
75efd4ea6b Update language files 2012-02-25 15:32:31 +02:00
Christophe Dumez
9363b1b4f2 Merge pull request #1 from UnSleep/patch-1
Fix issue in spanish translation
2012-02-25 05:27:33 -08:00
Christophe Dumez
a69cbd2289 Update version in Info.plist 2012-02-25 15:21:45 +02:00
UnSleep
ca6f732c7b i reported a bug in launchpad but i thought i can fix it too ;) "bad traslation" 2012-02-23 20:05:59 +01:00
Christophe Dumez
5f5382297c Disable system tray icon on Mac OS X 2012-02-22 20:06:11 +02:00
Christophe Dumez
a5452d04ae Clean up and refactor torrent content model code 2012-02-21 21:54:24 +02:00
Christophe Dumez
8f4c4e8c40 BUGFIX: Fix name of progress column in torrent content panel 2012-02-21 20:27:19 +02:00
Christophe Dumez
b1f1fbf114 Optimize QTorrentHandle 2012-02-21 20:12:04 +02:00
Christophe Dumez
a2d9cce181 Code clean up 2012-02-20 21:46:02 +02:00
Christophe Dumez
06ccae591e Coding style changes 2012-02-20 21:32:58 +02:00
Christophe Dumez
30bc14c940 Update version 2012-02-20 21:21:41 +02:00
Christophe Dumez
33f5c8e903 Further RSS clean up 2012-02-20 21:20:42 +02:00
Christophe Dumez
8e529fc179 RSS code clean up
- Also drops support for Qt 4.5
2012-02-20 20:49:31 +02:00
Christophe Dumez
f3448125c3 Coding style clean up 2012-02-20 19:56:07 +02:00
Christophe Dumez
00b4ad6ec8 RSS: Remove last singleton 2012-02-20 19:49:35 +02:00
Christophe Dumez
a8a7b61ea9 Coding style clean up 2012-02-20 19:30:53 +02:00
Christophe Dumez
9acac03f14 RSS: Correctly mark virtual functions 2012-02-20 19:28:11 +02:00
Christophe Dumez
b78d6ba243 Several RSS fixes:
- Fix possible redownload of torrents marked as read (Closes #927495)
- Properly remove RSS feed settings/history upon feed removal
- Fix possible crash in RSS Downloader dialog in debug mode
2012-02-19 20:45:49 +02:00
Christophe Dumez
d53ca1d096 Fix import of new trackers when adding a torrent with same hash (Closes #747000) 2012-02-19 20:01:11 +02:00
Christophe Dumez
50a3e4e776 RSS: Use SharedPtr everywhere 2012-02-19 18:53:10 +02:00
Christophe Dumez
a13bb06ec3 Start RSS rewrite: Use SharedPtr for RssArticle objects 2012-02-19 16:38:41 +02:00
Christophe Dumez
32a6c89c8c RSS code clean up 2012-02-19 15:42:51 +02:00
Christophe Dumez
1905a6f0d1 Fix to last commit (reversed sort order of RSS articles) 2012-02-19 15:18:59 +02:00
Christophe Dumez
3bc75bb068 RSS optimizations 2012-02-19 15:13:39 +02:00
Christophe Dumez
f0f7924325 Update Github for search plugin updates 2012-02-18 21:16:27 +02:00
Christophe Dumez
5e48708920 Prevent log window buffer from filling up (Closes #929673) 2012-02-18 20:38:21 +02:00
Christophe Dumez
58603451b4 Fix torrent import dialog layout (Closes #930932) 2012-02-18 20:21:33 +02:00
Christophe Dumez
9e3deb68de Add Cmd+Delete shortcut to delete a torrent (Mac OS X) 2012-02-18 20:05:53 +02:00
Christophe Dumez
2fea7eaef2 Update Changelog 2012-02-18 16:45:33 +02:00
Christophe Dumez
a53a70742d Drop support for libtorrent v0.14.x 2012-02-18 16:44:20 +02:00
Christophe Dumez
0c9dbc15f9 Remove misc::time_tToQString() 2012-02-18 15:37:51 +02:00
Christophe Dumez
ed468083c5 Remove misc::chmod644() function 2012-02-18 15:31:08 +02:00
Christophe Dumez
737982e92f Remove unused code 2012-02-18 15:22:31 +02:00
Christophe Dumez
b43e641d21 Remove misc::removeEmptyFolder() 2012-02-18 13:38:48 +02:00
Christophe Dumez
c25586b500 Remove misc::safeRemove(): shouldn't be needed 2012-02-18 12:49:05 +02:00
Christophe Dumez
60d9bfe077 misc: Remove duplicate function to branch a path 2012-02-16 21:32:18 +02:00
Christophe Dumez
0d0c7559bf Optimize converter between QString and sha1_hash 2012-02-16 21:17:15 +02:00
Christophe Dumez
de4559659d Code clean up 2012-02-16 21:04:02 +02:00
Christophe Dumez
16071ec266 Remove unused code 2012-02-16 20:40:41 +02:00
Christophe Dumez
fb03682df4 Clean up misc::toValidFileSystemName() 2012-02-16 20:32:13 +02:00
Christophe Dumez
68041e382d Clean up misc::isValidFileSystemName() function 2012-02-15 21:57:40 +02:00
Christophe Dumez
fb60a6489b Fix potential bug when moving single file torrents to tmp folder (closes #932861) 2012-02-15 21:13:42 +02:00
Christophe Dumez
dd7e515f9c Cmd+M minimizes main window on Mac OS X (Closes #928216) 2012-02-07 19:48:25 +02:00
Christophe Dumez
1bc6130da5 Fixes to Belarusian translation 2012-02-02 20:47:18 +02:00
Christophe Dumez
323275c340 Update language files 2012-01-31 19:26:47 +02:00
Christophe Dumez
3da9fec665 Add Belarusian translation by Mihas Varantsou 2012-01-31 19:25:57 +02:00
Christophe Dumez
f6254e9db6 Bug #919905: qBittorrent does not handle redirection to relative URLs correctly
Thanks to luran for providing a first version of this patch.
2012-01-30 19:39:14 +02:00
Naglis Jonaitis
f06f820047 Update Lithuanian translation. 2012-01-17 20:54:18 +02:00
Christophe Dumez
05643ca5d9 Fix tarball generated by make dist
(cherry picked from commit 282ee0e879)
2011-12-29 23:44:40 +02:00
Christophe Dumez
c0eb048fe2 Program updater: More reliable version detection / comparison 2011-12-29 01:26:00 +02:00
Christophe Dumez
78bb4104b0 Web UI: Improve usability of small devices 2011-12-29 00:24:09 +02:00
Christophe Dumez
6c10936f6d Make torrent sorting case insensitive (Closes #857154) 2011-12-28 23:31:50 +02:00
Christophe Dumez
4ca665eb0c Do not report any progress for disabled files (Closes #56731485) 2011-12-28 14:37:59 +02:00
Christophe Dumez
39e1ebaa9b Mac OS X: Tweak project file to fix compilation errors 2011-12-28 14:24:59 +02:00
Christophe Dumez
0a0033b242 Fix torrent addition dialog layout problem (Closes #84650522) 2011-12-28 11:51:16 +02:00
Christophe Dumez
9eea35f530 Fix banning of IPv6 peers 2011-12-28 11:31:46 +02:00
Christophe Dumez
345e9ec870 Bump to v2.10.0alpha 2011-12-27 14:26:09 +02:00
Christophe Dumez
53be56746b Update language files 2011-12-27 13:29:58 +02:00
Christophe Dumez
26b8decb24 I18N: Add Georgian translation 2011-12-27 13:29:35 +02:00
btdigg research
a275e26ba7 btdigg: Python3 support and add torrent in magnet link 2011-12-13 18:47:06 +02:00
Christophe Dumez
96c918ff8d misc.cpp: Fix compilation on Mac OS X 2011-11-16 21:47:00 +02:00
Christophe Dumez
2283bd2358 Torrent addition dialog: Fix minimum dialog size 2011-10-29 10:35:32 +03:00
Christophe Dumez
f6b7b8bd6e Get rid of libboost-filesystem dependency if libtorrent >= v0.16.x is used 2011-10-25 20:56:54 +03:00
Christophe Dumez
1b8a2bf7c1 Web UI: Add support for speed limits scheduling 2011-10-19 19:55:11 +03:00
Christophe Dumez
33325cdfee Update DHT bootstrap nodes 2011-10-16 11:30:50 +03:00
Christophe Dumez
d81f633d6b Torrent addition dialog: Layout fixes 2011-10-16 10:07:13 +03:00
Christophe Dumez
422b483d78 Fix ratio calculation for purely seeded torrents 2011-10-16 09:41:59 +03:00
Christophe Dumez
ec5b9c769a Update Russian translation 2011-10-10 20:19:59 +03:00
Christophe Dumez
74081bc6f8 Completly disable Windows cache 2011-10-08 13:36:27 +03:00
Christophe Dumez
3c650038e2 Revert "Use %USERPROFILE%\Downloads as download folder on Windows"
This reverts commit 357e309dad.
2011-10-08 13:34:57 +03:00
Christophe Dumez
3e4f74ab4e Update language files 2011-10-08 10:58:59 +03:00
Christophe Dumez
f7c586b47a Bump to v2.9.0 final 2011-10-08 10:50:39 +03:00
Christophe Dumez
98b09f68ae Remove NSPathUtilities.h include (Mac OS X) 2011-10-08 10:45:07 +03:00
Christophe Dumez
357e309dad Use %USERPROFILE%\Downloads as download folder on Windows 2011-10-08 09:10:21 +03:00
Christophe Dumez
2e544f6a74 Update Norwegian translation 2011-10-08 08:54:33 +03:00
Στέφανος Αντάρης
b0d6f3f9bf Mac OS: Properly detect "Downloads" folder 2011-10-07 19:08:17 +03:00
Christophe Dumez
380989d808 RSS: Add more debug output 2011-10-05 18:54:06 +03:00
Christophe Dumez
6357d6372c RSS: Fix parent article count when removing a child feed 2011-10-05 18:41:23 +03:00
sledgehammer_999
d744968ea6 Fix compilation on Windows after code cleanups. 2011-10-04 23:17:49 +03:00
Christophe Dumez
76ca967d70 Fix torrent loading problem from Web UI on Windows. 2011-10-04 22:18:59 +03:00
Christophe Dumez
9cff66df3f Update Dutch translation 2011-10-04 19:36:31 +03:00
Christophe Dumez
72af6cb206 Update Swedish translation 2011-10-04 19:12:21 +03:00
Christophe Dumez
c7043d5c39 Add some more debug output 2011-10-04 19:06:16 +03:00
Christophe Dumez
1036990499 Update Japanese translation 2011-10-04 18:34:57 +03:00
Christophe Dumez
f386fd9e23 Update Traditional Chinese translation 2011-10-04 17:53:14 +03:00
Christophe Dumez
1e75fa9086 Disable "Set as default save path" checkbox for magnet links 2011-10-02 19:10:48 +03:00
Christophe Dumez
252d2009cd Update language files 2011-10-02 18:51:19 +03:00
Christophe Dumez
a48d36c9a2 Add comment 2011-10-02 18:43:55 +03:00
Christophe Dumez
01ad2e9746 Move downloads folder detection code from preferences.h to misc.cpp 2011-10-02 17:56:00 +03:00
Christophe Dumez
2f7b20c704 Use qputenv/qgetenv from Qt for better cross compatibility 2011-10-02 17:04:16 +03:00
Christophe Dumez
aae85b4498 Bump to rc3 2011-10-02 12:36:59 +03:00
Christophe Dumez
c39244aeb6 Web UI: Cosmetic improvements to preferences 2011-10-02 12:35:27 +03:00
Christophe Dumez
8f22279428 Web UI: cosmetic improvements to torrent upload dialog 2011-10-02 10:22:41 +03:00
Christophe Dumez
5a68bc5801 Web UI: Improve deletion confirmation dialog 2011-10-02 10:02:19 +03:00
Christophe Dumez
46a3b382db Web UI: Fix torrent deletion from IE 2011-10-02 00:53:00 +03:00
Christophe Dumez
dae959a533 HTTP server better debug output 2011-10-01 23:40:22 +03:00
Christophe Dumez
eeda9379d5 HTTP server: Greatly improved HTTP request parsing 2011-10-01 23:30:33 +03:00
Christophe Dumez
80bf89857a Web UI: Fix HTTP request processing with Firefox 2011-10-01 22:57:08 +03:00
Christophe Dumez
65eb40d1f5 Fix small bug in HttpConnection::read() 2011-10-01 22:10:13 +03:00
Christophe Dumez
9cf37f5364 BUGFIX: Fix torrent upload issues (Web UI) 2011-10-01 17:16:01 +03:00
Christophe Dumez
1ad1498c5d Less verbose debug 2011-10-01 17:01:33 +03:00
Christophe Dumez
405b804eb5 Make multi-part/form data parser more robust 2011-10-01 16:59:06 +03:00
Christophe Dumez
183e150da1 COSMETIC: Make top toolbar follow system style 2011-10-01 15:17:57 +03:00
Christophe Dumez
f98d4e9149 Web UI code optimization 2011-09-30 20:51:29 +03:00
Christophe Dumez
dad1568657 Web UI: Make multipart/form-data parsing more robust 2011-09-30 20:46:04 +03:00
Christophe Dumez
f13fd37819 Update Serbian translation 2011-09-30 17:26:51 +03:00
Christophe Dumez
ae692ba9b8 Web UI code optimization 2011-09-29 20:47:51 +03:00
Christophe Dumez
2036326403 Simplify multipart form parsing code and add debug 2011-09-29 20:36:18 +03:00
Christophe Dumez
3ad81595df Web UI: Code clean up 2011-09-29 19:41:29 +03:00
Christophe Dumez
9115a2ddc2 httpconnection: Make sure torrent file is written in binary mode 2011-09-28 19:58:45 +03:00
Christophe Dumez
102e25771c Update Greek and Bulgarian translations 2011-09-28 19:56:36 +03:00
Christophe Dumez
d65fc4575a Update Hungarian and Italian translations 2011-09-28 19:53:10 +03:00
Christophe Dumez
928936046e preferences: optimize XDG path detection code 2011-09-28 19:50:57 +03:00
Christophe Dumez
fe6df6176d Fixes to sledgehammer's merge request. 2011-09-27 21:16:29 +03:00
Christophe Dumez
6c52dbd477 Merge commit 'refs/merge-requests/11' of git://gitorious.org/qbittorrent/qbittorrent 2011-09-27 20:47:33 +03:00
sledgehammer_999
37f5c8710e Improved savepath algorithm on Linux. It now uses xdg to figure out the default download folder. Unfortunately only new install will benefit. 2011-09-27 19:38:40 +03:00
Christophe Dumez
341a88c2ef BUGFIX: Fix ratio calculation (use all_time_download) 2011-09-27 17:11:50 +03:00
Christophe Dumez
efe2280224 Update Polish translation 2011-09-27 16:57:01 +03:00
sledgehammer_999
a6294e5739 Fix compilation error on Windows 2011-09-26 22:25:02 +03:00
Christophe Dumez
c9c481fe69 RSS: Save items to disk regularly for safety 2011-09-26 20:47:10 +03:00
Christophe Dumez
8219c29b0c RSS: Correctly clean up config file when removing a feed 2011-09-26 20:35:50 +03:00
Christophe Dumez
1e1094f8da qinisettings: code clean up 2011-09-26 20:31:48 +03:00
Christophe Dumez
452a8b2ae2 Rss code clean up 2011-09-26 20:25:59 +03:00
Christophe Dumez
bf746be692 RSS: Fix buttons height 2011-09-26 20:09:24 +03:00
Christophe Dumez
de2d2c7469 Update Armenian translation 2011-09-26 17:37:39 +03:00
Christophe Dumez
384eae7014 Update Czech translation 2011-09-25 22:21:44 +03:00
Christophe Dumez
09ef9947b0 Bump to v2.9.0rc1 2011-09-25 17:26:55 +03:00
Christophe Dumez
4385b941bb Web UI code optimization and clean up 2011-09-25 17:26:02 +03:00
Christophe Dumez
ab0355f8d6 Web UI: Remove unused code 2011-09-25 16:22:56 +03:00
Christophe Dumez
8f439589ea Optimize Web UI code 2011-09-25 16:20:28 +03:00
Christophe Dumez
ce6348bc32 Code clean up 2011-09-25 15:04:51 +03:00
Christophe Dumez
4c5dd66b0f Clean up Web UI code 2011-09-25 14:39:01 +03:00
Christophe Dumez
5fe562c0fa Clean up Web UI code 2011-09-25 14:37:04 +03:00
Christophe Dumez
61faf34ef7 Correctly hide anonymous settings when using libtorrent < v0.16 2011-09-25 12:07:55 +03:00
Christophe Dumez
1038376cdb Web UI code clean up 2011-09-25 11:50:58 +03:00
Christophe Dumez
28d1671bb8 Web UI code clean up 2011-09-25 11:45:57 +03:00
Christophe Dumez
8e026e68d7 Web UI code clean up 2011-09-25 11:42:03 +03:00
Christophe Dumez
4be897a4e5 Web UI code clean up 2011-09-25 11:31:20 +03:00
Christophe Dumez
3f4947259b Web UI code clean up 2011-09-25 11:29:29 +03:00
Christophe Dumez
e10a51e61e Web UI code cleanup 2011-09-25 11:18:41 +03:00
Christophe Dumez
381eaf4b53 Web UI: Improve language change behavior 2011-09-25 10:55:56 +03:00
Christophe Dumez
1b7e681e6d Update Portuguese, Brazilian and Japanese translations 2011-09-25 10:17:36 +03:00
Christophe Dumez
1ad764de7b Update simplified chinese translation 2011-09-24 21:40:12 +03:00
Christophe Dumez
246903fa0a Web UI improvements
- Optimize translation code
- Cosmetic fixes to dialogs
- Display qBittorrent version in about dialog
2011-09-24 21:39:19 +03:00
Christophe Dumez
b298f9a06e Update German and Ukrainian translations 2011-09-24 19:39:54 +03:00
Christophe Dumez
efdcdeb210 Update Nowegian translation 2011-09-24 17:42:50 +03:00
Christophe Dumez
6e4826a512 Update Arabic translation 2011-09-24 17:29:50 +03:00
Christophe Dumez
28ba0c25a7 Code clean up 2011-09-24 17:28:25 +03:00
Christophe Dumez
ea0f384dbf Update Slovak translation 2011-09-24 16:51:31 +03:00
Christophe Dumez
9218f69d87 Update French translation 2011-09-24 15:49:59 +03:00
Christophe Dumez
b9b82e959b Update Galician translation 2011-09-24 15:43:09 +03:00
Christophe Dumez
6606cf60af Fix execution log lines selection and copying 2011-09-24 15:39:27 +03:00
Christophe Dumez
94a23cf1d4 Fix update_qrc_files.py script 2011-09-24 11:15:03 +03:00
Christophe Dumez
15c3836a25 Fix Changelog 2011-09-24 11:07:09 +03:00
Christophe Dumez
afbac42420 Update spanish and catalan translations 2011-09-23 16:23:24 +03:00
Christophe Dumez
7354e9b738 Fix nox building 2011-09-22 21:42:31 +03:00
Christophe Dumez
8abb1d917b Bump to v2.9.0beta2 2011-09-22 21:15:28 +03:00
Christophe Dumez
7bd8bb4880 Web UI: Cleaned up torrent upload code
Should also fix issues on Windows.
2011-09-22 21:11:55 +03:00
sledgehammer_999
3d5487dfcb misc.cpp: Remove unused variable in windows-specific code 2011-09-22 20:44:01 +03:00
sledgehammer_999
be09284192 Simplify available disk size calculation code
The new code uses boost so that we don't need platform-specific
code anymore. It also fixes a calculation issue on the Windows
platform with the original code.
2011-09-22 20:37:39 +03:00
sledgehammer_999
cdf68c90ba Fix: 'announce to all trackers' checkbox could't be set by the user. 2011-09-22 00:20:33 +03:00
Christophe Dumez
a46f665dd4 Small Web UI JS code simplification 2011-09-21 21:10:12 +03:00
Christophe Dumez
e5e254a184 Small cosmetic fix to program preferences 2011-09-21 21:01:28 +03:00
Christophe Dumez
2a55aba5fa Fix properties.pri 2011-09-21 20:49:34 +03:00
Christophe Dumez
f5d04a1be9 Merge commit 'refs/merge-requests/6' of git://gitorious.org/qbittorrent/qbittorrent into merge-requests/6 2011-09-21 19:54:46 +03:00
Patryk Stępień
73132afe6c Small fixes. 2011-09-21 18:42:11 +02:00
Patryk Stępień
1d27fa9c03 Add possibility to change colors in runtime. 2011-09-21 18:22:38 +02:00
Christophe Dumez
1585b307bc Disable tracker exchange by default 2011-09-21 18:48:10 +03:00
Christophe Dumez
c882bc8a1d Update language files 2011-09-21 17:56:27 +03:00
Christophe Dumez
aefa1dba18 Update changelog 2011-09-21 17:50:26 +03:00
Christophe Dumez
7bd19f7696 Several fixes to the merge request 2011-09-21 17:48:39 +03:00
Christophe Dumez
c25f51e866 Merge commit 'refs/merge-requests/4' of git://gitorious.org/qbittorrent/qbittorrent into merge-requests/4 2011-09-21 17:12:38 +03:00
Christophe Dumez
68b13f10fe Update .gitignore file 2011-09-21 17:11:46 +03:00
sledgehammer_999
9764fe2a91 Added .gitignore file. 2011-09-21 13:24:22 +03:00
sledgehammer_999
7c29e613f0 Now qbt remembers the last used folder. Fixes #799697. ver2 2011-09-21 12:59:52 +03:00
Patryk Stępień
2a88e790df New PieceAvailabilityBar. 2011-09-21 01:16:23 +02:00
Patryk Stępień
deb7327ee6 New DownloadedPiecesBar. 2011-09-21 01:09:47 +02:00
sledgehammer_999
a82ccd8e95 Now qbt remembers the last used folder. Fixes #799697.
Conflicts:

	src/preferences/options.ui
2011-09-21 01:06:50 +03:00
Christophe Dumez
4ffe100287 Web UI: Slight settings CSS improvements 2011-09-20 20:35:33 +03:00
Christophe Dumez
5990615248 Add support for anonymous mode
This mode was added in libtorrent v0.16 and should be used in
addition to a SOCKS5 proxy.
2011-09-20 20:15:47 +03:00
Christophe Dumez
e83618a1b2 Fix advanced settings order 2011-09-20 18:56:11 +03:00
Christophe Dumez
9e9cdedfd3 Bump to v2.9.0beta1 2011-09-18 20:08:13 +03:00
Christophe Dumez
ed5e55f85d Add advanced setting to announce to all trackers 2011-09-18 20:05:30 +03:00
Christophe Dumez
d2907dc08c Fix saving of file association settings (Windows) 2011-09-18 19:45:46 +03:00
Christophe Dumez
69984f9550 WebUI: Simplify javascript for preferences dialog 2011-09-18 19:43:33 +03:00
Christophe Dumez
94f92aa4f9 Add setting to ignore slow torrents in queueing system
Closes https://bugs.launchpad.net/qbittorrent/+bug/799703
2011-09-18 19:34:29 +03:00
Christophe Dumez
9e5ec56770 Update language files 2011-09-18 16:48:21 +03:00
Christophe Dumez
b58b4d0066 Add file association settings to program preferences (Windows) 2011-09-18 16:42:50 +03:00
Christophe Dumez
11a068dfdd Add tray menu entry for toggling window visibility
Should fix issues under Unity.
2011-09-18 15:54:16 +03:00
Christophe Dumez
deb7cb9d9e Fix compilation error on Windows. 2011-09-15 22:00:48 +03:00
Christophe Dumez
085ab0e660 WebUI: Fix torrent file upload on Windows 2011-09-13 17:06:07 +03:00
Christophe Dumez
2ff28ff46f Forgot to commit sgmllib3.py 2011-09-13 07:38:27 +03:00
Christophe Dumez
eb159c0b18 Search: Fix GZip decompression code 2011-09-11 21:55:12 +03:00
Christophe Dumez
51b3a5164d Search: Fix torrent download with Python 3 2011-09-11 21:26:30 +03:00
Christophe Dumez
fa30d7bd1c Search: Fix KickAssTorrents search plugin 2011-09-11 21:24:00 +03:00
Christophe Dumez
ea159c0146 Search: Minor PirateBay fix 2011-09-11 20:28:47 +03:00
Christophe Dumez
f4c2fdd2fd Search: Initial support for Python 3.x 2011-09-11 20:22:54 +03:00
sledgehammer_999
0c7643cfb3 Show Libraries's version used in the about window.
(cherry picked from commit 7b007f82caaac98a21101a37a71bbc9464022ca3)
2011-09-07 19:22:47 +03:00
Christophe Dumez
3282e53e93 Multi-tracker: announce to all trackers to avoid stalling issues
with libtorrent.
2011-09-06 19:08:55 +03:00
Christophe Dumez
2e07e911e4 Fix "Copy torrents to" setting saving in Web UI 2011-08-13 11:22:28 +03:00
Christophe Dumez
e838b515b3 Fix saving of encryption setting in the Web UI 2011-08-13 11:14:29 +03:00
Christophe Dumez
7854911d2f Fix possible warnings related to toggleSelectedTorrentsSuperSeeding() 2011-08-10 21:44:37 +03:00
Christophe Dumez
7846afaeb8 Fix torrent addition dialog geometry saving
When switching between single-file and multi-file torrents, the
dialog geometry saving / loading code was not behaving correctly.
(cherry picked from commit 443f693acf)
2011-08-09 20:20:32 +03:00
Christophe Dumez
72b27eecff Preferences: Do not hardcode layout margin
(cherry picked from commit 63a458e6ea)
2011-08-09 20:20:32 +03:00
Christophe Dumez
8c491cc831 Disable announce_to_all_trackers to comply with the multi-tracker
specification
2011-08-08 20:49:47 +03:00
Christophe Dumez
ac097b9904 Added back ability to reorder trackers 2011-08-07 15:07:28 +03:00
Christophe Dumez
9066520076 Fix "make dist" command to make sure the .git folder is removed 2011-08-02 19:46:54 +03:00
Christophe Dumez
2d83482395 Fix "make dist" command now that we use GIT instead of SVN 2011-08-02 19:41:27 +03:00
Christophe Dumez
7a7016b4bd Make sure the window is not hidden on startup if no system tray
icon is available
2011-08-02 19:28:31 +03:00
Christophe Dumez
f2e222adb1 Display transfer speeds at the beginning of the window title
The speeds are more likely to be displayed if the title is cut
in the window list.
2011-08-02 18:54:25 +03:00
Christophe Dumez
d4d3991795 Updated Spanish and Catalan translations 2011-07-04 05:46:50 +03:00
Christophe Dumez
6d9e519cdc Fix important memory usage problem in log tab 2011-06-20 22:28:55 +03:00
Christophe Dumez
16ad56c13f Add licensing information to executionlog.* 2011-06-19 21:57:34 +03:00
Christophe Dumez
f2df8ce1d9 Fix version 2011-06-18 14:32:13 +00:00
Christophe Dumez
921512e51d Add make dist target 2011-06-18 13:35:25 +00:00
Christophe Dumez
3529c5c7a0 Fix tracker extension setting 2011-06-16 15:02:25 +00:00
Christophe Dumez
984e6f9927 Show tracker tier in tracker list 2011-06-12 13:55:19 +00:00
Christophe Dumez
8b2f7c4661 Fix possible status filters widget height problem 2011-06-11 13:00:33 +00:00
Christophe Dumez
83ce77b398 Fix proxy authentication settings (GUI) 2011-06-11 08:05:53 +00:00
Christophe Dumez
170b0798fd Revert recent memory fix for Windows 2011-06-11 07:49:34 +00:00
Christophe Dumez
4795e9980b Fix possible memory problem on Windows 2011-06-07 18:48:43 +00:00
Christophe Dumez
83317ca2d0 Fix tracker exchange advanced setting (Thanks Rumickon) 2011-06-07 16:02:30 +00:00
Christophe Dumez
02fbd6a135 Fix compilation warnings in smtp.h (cgreco) 2011-06-05 16:08:30 +00:00
Christophe Dumez
53900c386b Update Russian translation 2011-05-07 15:15:04 +00:00
Ishan Arora
669d1a3a46 Added HTTPS support (backend) 2011-05-07 13:48:42 +00:00
Christophe Dumez
122db6a77e Fix exceptions on Windows XP when IPv6 is disabled (Thanks paolo zambotti) 2011-05-05 16:16:20 +00:00
Christophe Dumez
86d3c98069 Translatable strings fixes (Masato HASHIMOTO) 2011-05-03 16:45:20 +00:00
Christophe Dumez
dc87b9f9f4 Bump to beta 5 2011-05-02 16:08:59 +00:00
Christophe Dumez
c7c30ccaee Make more strings translatable (Masato HASHIMOTO) 2011-05-02 16:06:26 +00:00
Christophe Dumez
b59dded2a4 Update proxy settings in Web UI 2011-05-01 12:00:23 +00:00
Christophe Dumez
b48b9479d2 Fix default options tab 2011-05-01 11:22:56 +00:00
Christophe Dumez
65883317c3 FEATURE: Proxy can be disabled for peer connections 2011-05-01 11:22:17 +00:00
Christophe Dumez
18e08c319f Update Japanese translator 2011-05-01 07:18:57 +00:00
Christophe Dumez
6265e2e092 Fix to Japanese translation (Masato Hashimoto)
Make one more string translatable (Masato Hashimoto)
2011-05-01 07:15:44 +00:00
Christophe Dumez
bc10bbe135 Fix options layout (Владимир Головнёв) 2011-04-30 15:15:10 +00:00
Christophe Dumez
31aebdc7bf Update Japanese translation 2011-04-30 14:22:38 +00:00
Christophe Dumez
269a50efe5 UI fixes 2011-04-26 15:32:13 +00:00
Christophe Dumez
9b31b1cd72 Update Russian translation 2011-04-26 15:30:58 +00:00
Christophe Dumez
e989e686a4 Fix debug message 2011-04-25 14:02:33 +00:00
Christophe Dumez
d6b5627363 Fix initial column sizes in torrent addition dialog 2011-04-25 14:00:46 +00:00
Christophe Dumez
7381b0dcf6 Code clean up 2011-04-23 17:20:44 +00:00
Christophe Dumez
8589eb7c0f Code optimization 2011-04-21 18:57:43 +00:00
Christophe Dumez
284fbf5512 Code clean up 2011-04-21 15:16:54 +00:00
Christophe Dumez
b9aec63e92 Update OS/2 config file (Silvan Scherrer) 2011-04-21 14:47:13 +00:00
Christophe Dumez
88c063cd4d Update Serbian translation 2011-04-19 20:29:56 +00:00
Christophe Dumez
ed3fa0ccee Web UI translation fixes 2011-04-18 16:58:13 +00:00
Christophe Dumez
4ec78d1405 Update language files 2011-04-18 16:43:17 +00:00
Christophe Dumez
8bfbb98509 Add regex help and validation (RSS downloader 2011-04-18 15:56:22 +00:00
Christophe Dumez
44011c9cd9 Added tool tips on RSS fields 2011-04-18 10:49:06 +00:00
Christophe Dumez
92c7996ff4 FEATURE: Added full regex support to RSS downloader 2011-04-18 10:36:19 +00:00
Christophe Dumez
0a17eb32cc Update Changelog 2011-04-17 19:22:01 +00:00
Christophe Dumez
52e7d4ad03 Simplify uTP settings 2011-04-17 18:11:03 +00:00
Christophe Dumez
f843a4b13a Fix compilation error 2011-04-17 15:50:51 +00:00
Christophe Dumez
719c30c70b BUGFIX: Remember peer-level rate limits (requires libtorrent v0.16) 2011-04-17 15:35:40 +00:00
Christophe Dumez
b41bcdc605 Make use of new libtorrent feature to set file priorities before adding a torrent 2011-04-17 15:27:18 +00:00
Christophe Dumez
0ead6f72c6 Code optimization 2011-04-17 15:00:48 +00:00
Christophe Dumez
104ebbc9a1 Save fast resume data periodically only for torrents that need it 2011-04-17 14:54:47 +00:00
Christophe Dumez
982098a205 Avoid saving fast resume data twice upon exit under certain conditions 2011-04-17 14:52:25 +00:00
Christophe Dumez
d5bdd2ea3e Update language files 2011-04-17 14:51:38 +00:00
Christophe Dumez
641b38690c Added uTP support 2011-04-17 14:42:38 +00:00
Christophe Dumez
ea433c0619 Fix error in last commit 2011-04-17 10:36:50 +00:00
Christophe Dumez
8847df60e1 Fix another deprecation warning with libtorrent v0.16 2011-04-17 10:36:28 +00:00
Christophe Dumez
3995af6489 Initial port to libtorrent v0.16 2011-04-17 10:29:44 +00:00
Christophe Dumez
4412476109 Started to fix compilation with libtorrent v0.16 2011-04-16 20:08:32 +00:00
Christophe Dumez
0c2a121304 Fix possible linking problems 2011-04-16 19:59:35 +00:00
Christophe Dumez
885753391d Updated Russian translation 2011-04-16 17:57:36 +00:00
Christophe Dumez
cff7174bbb Code clean up 2011-04-16 10:20:45 +00:00
Christophe Dumez
40bd040c4a Improvement to last commit 2011-04-16 08:22:34 +00:00
Christophe Dumez
0241fa7593 Make sure asserts are disabled in release mode 2011-04-16 08:18:58 +00:00
Christophe Dumez
2f06099518 Bump to v2.8.0beta3 2011-04-16 07:56:29 +00:00
Christophe Dumez
4489934c21 Remove bad ASSERT in RSS downloader 2011-04-16 07:42:09 +00:00
Christophe Dumez
10d815c60d More debug output 2011-04-15 14:18:58 +00:00
Christophe Dumez
c85cb8799e FEATURE: qBittorrent can update dynamic DNS services (DynDNS, no-ip) 2011-04-15 13:02:39 +00:00
Christophe Dumez
fd4f46485c Improve last patch 2011-04-13 17:32:28 +00:00
Christophe Dumez
3154461f28 Fix initialization problem with some private trackers 2011-04-13 17:18:56 +00:00
Christophe Dumez
da32321f10 FEATURE: Added UPnP/NAT-PMP port forward for the Web UI port 2011-04-12 19:50:05 +00:00
Christophe Dumez
aec3087528 Trackers can now be added to torrents without metadata 2011-04-12 16:47:58 +00:00
Christophe Dumez
9d83439b83 Updated Norwegian translation 2011-04-12 16:32:58 +00:00
Christophe Dumez
684e00d639 Update language files 2011-04-11 20:14:02 +00:00
Christophe Dumez
f982501576 Improve advanced settings 2011-04-11 19:48:06 +00:00
Christophe Dumez
87a744fcf6 Fix compilation error (Thanks Arnaud) 2011-04-11 19:33:30 +00:00
Christophe Dumez
aca939f0ce Update About dialog 2011-04-11 18:53:47 +00:00
Christophe Dumez
675e8282b0 Cosmetic changes to program preferences 2011-04-11 17:21:16 +00:00
Christophe Dumez
a1272fff82 Preferences code clean up 2011-04-11 17:02:45 +00:00
Christophe Dumez
5579c7ff3d Preferences cosmetic changes 2011-04-11 16:58:03 +00:00
Christophe Dumez
f5d4404b67 Preferences code clean up 2011-04-11 16:56:33 +00:00
Christophe Dumez
851a677a48 Fix URL decoding in search engine 2011-04-11 16:21:07 +00:00
Christophe Dumez
fd8157f6ba Do not delete unwanted files that were already present when adding the torrent 2011-04-10 15:00:27 +00:00
Christophe Dumez
450c1fc124 Use AND search for torrentreactor 2011-04-10 11:28:52 +00:00
Christophe Dumez
493d6ce702 Updated Russian translation 2011-04-10 11:23:29 +00:00
Christophe Dumez
35a2b227b2 Bump to beta2 2011-04-10 09:27:10 +00:00
Christophe Dumez
6b0c976a0d Added btdigg.org search plugin 2011-04-10 09:10:24 +00:00
Christophe Dumez
f9c4150374 Did not mean to commit that 2011-04-10 08:32:39 +00:00
Christophe Dumez
fad028cfa2 Fix to kickasstorrents search plugin 2011-04-10 08:30:23 +00:00
Christophe Dumez
d9aa8cf4fd Update language files 2011-04-09 18:29:55 +00:00
Christophe Dumez
6b2da46e87 Bump to beta1 2011-04-09 18:19:50 +00:00
Christophe Dumez
037cc655ba Improve SMTP code logging to facilite debug 2011-04-09 17:52:37 +00:00
Christophe Dumez
58bfa6f1bb FEATURE: Added support for secure SMTP connection (SSL)
FEATURE: Added support for SMTP authentication
2011-04-09 17:39:51 +00:00
Christophe Dumez
0a6f591cf5 Remove stylesheets from options.ui 2011-04-09 09:03:04 +00:00
Christophe Dumez
4ee623f921 Update AUTHORS file 2011-04-05 18:40:01 +00:00
Christophe Dumez
e85059521e Bump to alpha3 2011-04-05 17:39:57 +00:00
Christophe Dumez
2a4abe6a77 Fix nox compilation 2011-04-05 17:29:55 +00:00
Christophe Dumez
8217ddc705 Updated Norwegian translation 2011-04-05 17:14:39 +00:00
Christophe Dumez
5f301b5a04 Bump to alpha2 2011-04-05 16:59:42 +00:00
Christophe Dumez
9a5568349f Make sure we don't inhibit system sleep before qBTsession destructor 2011-04-05 16:56:26 +00:00
Christophe Dumez
dc2de49cdb Use HAL as fallback for system shutdown/suspend 2011-04-05 16:41:54 +00:00
Christophe Dumez
c63503aaa6 Use ConsoleKit to shutdown the system instead of HAL (deprecated)
use UPower to suspend the system instead of HAL (deprecated)
Rewrote computer shutdown/suspend code to avoid data loss
2011-04-05 16:22:16 +00:00
Christophe Dumez
eaac9180e5 Make sure python is not required on startup (Windows) 2011-04-04 19:13:59 +00:00
Christophe Dumez
b8797d075f Fix vertor search engine plugin 2011-04-04 19:08:44 +00:00
Christophe Dumez
ea04f79e0f Parse URLs in torrent description 2011-04-04 17:16:34 +00:00
Christophe Dumez
6a3d0da4ad Fix alternative speeds tooltip 2011-04-04 14:57:20 +00:00
Christophe Dumez
4828a05ced Code clean up 2011-04-04 14:54:43 +00:00
Christophe Dumez
f379084b68 Slight improvement of the notification code 2011-04-02 09:06:12 +00:00
Christophe Dumez
c7314b99ea Update INSTALL file 2011-04-02 08:57:41 +00:00
Christophe Dumez
d0afd46fd3 Get rid of libnotify dependency (Use DBus instead) 2011-04-02 08:54:28 +00:00
Christophe Dumez
ba7ece348c - BUGFIX: Uninhibit system sleep on exit (Vladimir Golovnev)
- BUGFIX: Fix error on Windows when qBittorrent is shutdown by session manager (Vladimir Golovnev)
2011-03-30 16:04:56 +00:00
Christophe Dumez
01b5844174 - FEATURE: Added monochrome icon for light themes
- BUGFIX: Change systray icon on the fly (no restart needed)
2011-03-27 08:34:51 +00:00
Christophe Dumez
dfa16320f0 Fix monochrome icon 2011-03-26 09:10:50 +00:00
Christophe Dumez
93a84655b6 Get rid of QtSVG dependency 2011-03-26 09:03:12 +00:00
Christophe Dumez
a24dc147ab Sync program preferences before computer shutdown to avoid loss 2011-03-26 08:37:42 +00:00
Christophe Dumez
e247d0e5dc Fixes to Norwegian and Armenian translations 2011-03-25 21:10:11 +00:00
Christophe Dumez
b410b7751e Updated Hungarian translation 2011-03-24 18:03:49 +00:00
Christophe Dumez
028051d6a5 Updated Italian translation 2011-03-24 17:01:52 +00:00
Christophe Dumez
7d4a1bc92a Added comment 2011-03-23 18:25:21 +00:00
Christophe Dumez
924b09b0f1 Fix error in last commit 2011-03-23 17:04:17 +00:00
Christophe Dumez
188a8ae4f5 Add MinGW-specific project file (sledgehammer999) 2011-03-23 17:02:26 +00:00
Christophe Dumez
1489a6bbd6 Magnet link association fix (sledgehammer999) 2011-03-23 16:47:48 +00:00
Christophe Dumez
9c57cca93c Fix possible crash when changing the priority of a file 2011-03-22 20:12:06 +00:00
Christophe Dumez
6ed4724e33 Updated Spanish and Catalan translations 2011-03-22 18:10:52 +00:00
Christophe Dumez
63feffd985 Update Python installer URL 2011-03-22 16:49:55 +00:00
Christophe Dumez
d988b0df9c Updated Portuguese and Brazilian translations 2011-03-22 16:44:44 +00:00
Christophe Dumez
85d6365bc2 Limit file names to 255 bytes to avoid issues on Linux FS 2011-03-21 19:01:36 +00:00
Christophe Dumez
784d972602 Updated German translation 2011-03-21 16:54:19 +00:00
Christophe Dumez
ce4d25952c Fix missing copyright information 2011-03-20 14:43:58 +00:00
Christophe Dumez
3e27595cf1 Bump to v2.7.0 final 2011-03-20 13:01:06 +00:00
Christophe Dumez
44ab905131 Updated Chinese translation 2011-03-20 11:19:05 +00:00
Christophe Dumez
2a04ac55de Remove bad comment 2011-03-20 11:15:58 +00:00
Christophe Dumez
45ad494a3e Updated Croatian translation 2011-03-20 08:11:31 +00:00
Christophe Dumez
78fe44ec01 Process alerts more frequently 2011-03-19 15:48:45 +00:00
Christophe Dumez
536bd85fd0 Another fix for torrent addition from Web browser 2011-03-19 13:58:34 +00:00
Christophe Dumez
84705489fc Updated Russian translation 2011-03-19 13:50:37 +00:00
Christophe Dumez
ff085e955e Updated Dutch translation 2011-03-19 09:35:15 +00:00
Christophe Dumez
4b62c24e54 Fixes to Norwegian translation 2011-03-18 23:49:30 +00:00
Christophe Dumez
c7658e2e96 Linux: Install PNG icon to $$PREFIX/share/pixmaps/ 2011-03-18 22:49:28 +00:00
Christophe Dumez
9fe693630c Bump to v2.7.0rc2 2011-03-18 18:52:55 +00:00
Christophe Dumez
3bba7578af Fix torrent addition from browser 2011-03-18 18:39:21 +00:00
Christophe Dumez
53b6a25442 Added %n (torrent name) parameter to external program call 2011-03-18 18:28:19 +00:00
Christophe Dumez
5e7de313fc Fix typos in Slovak translations 2011-03-16 19:45:44 +00:00
Christophe Dumez
8c91e9d4e2 Update Galician translation 2011-03-15 18:10:21 +00:00
Christophe Dumez
078ee59b4e Bump to rc1 2011-03-15 16:55:26 +00:00
Christophe Dumez
438e277c42 Updated Czech, Swedish and Traditional Chinese translations 2011-03-15 16:48:46 +00:00
Christophe Dumez
a4c1b93a42 Added debug output 2011-03-14 19:18:52 +00:00
Christophe Dumez
82877a9afa Added french translation 2011-03-14 18:51:20 +00:00
Christophe Dumez
6bee757652 Added comment polish translation to desktop file 2011-03-14 18:48:44 +00:00
Christophe Dumez
d8cdc3094a Updated Arabic translation 2011-03-14 18:32:41 +00:00
Christophe Dumez
db455c9832 Update comment in desktop file 2011-03-14 18:23:27 +00:00
Christophe Dumez
b6c931905a Update categories in desktop file 2011-03-14 17:53:39 +00:00
Christophe Dumez
6647973391 Updated Armenian translation 2011-03-14 16:08:23 +00:00
Christophe Dumez
4c85ea678d Updated Slovak translation 2011-03-14 16:06:52 +00:00
Christophe Dumez
dc27b5e976 Updated Greek, Bulgarian and Norwegian translations 2011-03-14 16:04:48 +00:00
Christophe Dumez
4828f6190e Updated Ukrainian translation 2011-03-13 18:32:42 +00:00
Christophe Dumez
84a0f92546 Update French translation 2011-03-13 18:16:38 +00:00
Christophe Dumez
e3a9194010 Fix column hiding/showing in transfer list 2011-03-13 17:49:56 +00:00
Christophe Dumez
727e212b8e Updated Russian translation 2011-03-13 17:30:45 +00:00
Christophe Dumez
df64ede724 BUGFIX: Added length restriction on UI lock password 2011-03-13 13:59:22 +00:00
Christophe Dumez
8a07e01181 Update language files 2011-03-13 13:38:52 +00:00
Christophe Dumez
d67d4a38ce Improve status bar's style 2011-03-13 13:35:08 +00:00
Christophe Dumez
3b898c52d3 Code clean up 2011-03-13 12:48:53 +00:00
Christophe Dumez
4e79411d9f Tooltip text improvement 2011-03-13 12:30:59 +00:00
Christophe Dumez
524875e458 Updated language files 2011-03-13 12:10:08 +00:00
Christophe Dumez
3c75774cfb Bump to beta4 2011-03-13 10:31:26 +00:00
Christophe Dumez
596737ba2f Improve lists columns state saving 2011-03-13 10:09:31 +00:00
Christophe Dumez
e142aafea1 Do not report torrent being checked as queued 2011-03-13 09:40:31 +00:00
Christophe Dumez
09da69918e Make sure the .unwanted folder is removed on soft deletion 2011-03-13 09:28:27 +00:00
Christophe Dumez
e0c2e3dd2c Code clean up 2011-03-13 09:13:13 +00:00
Christophe Dumez
5dc79e67fc Made QtSvg dependency optional 2011-03-12 21:02:59 +00:00
Christophe Dumez
14341f3be2 COSMETIC: Added monochrome tray icon 2011-03-12 20:59:44 +00:00
Christophe Dumez
2acf90d813 Added monochrome icon 2011-03-12 19:21:32 +00:00
Christophe Dumez
ae1d6492d0 Code clean up 2011-03-12 18:57:11 +00:00
Christophe Dumez
0a0579bc8b Fix nox compilation 2011-03-10 19:42:12 +00:00
Christophe Dumez
ead93baa21 Updated language files 2011-03-10 19:04:05 +00:00
Christophe Dumez
39bad79f5a Bump to beta3 2011-03-10 19:02:00 +00:00
Christophe Dumez
f25b198516 FEATURE: Torrent content list is now sortable 2011-03-10 18:58:35 +00:00
Christophe Dumez
15d3b07f34 Improve folder removal behavior 2011-03-10 18:34:28 +00:00
Christophe Dumez
feeecbf395 Fix root folder being cut off if the torrent comes from a scanned folder (Christian Kandeler) 2011-03-10 17:46:56 +00:00
Christophe Dumez
e7abeb9bd4 Code clean up 2011-03-10 17:42:17 +00:00
Christophe Dumez
879a010c3d Code clean up: Use Qt for File I/O instead of boost 2011-03-10 17:36:11 +00:00
Christophe Dumez
89e64a212e Fix Magnet link association (Fisiu) 2011-03-09 20:11:30 +00:00
Christophe Dumez
82c7c02611 Fix to last commit 2011-03-07 20:25:20 +00:00
Christophe Dumez
b6c3189fe3 Make QtDBus dependency optional 2011-03-07 20:22:35 +00:00
Christophe Dumez
82e41f36ee FEATURE: Added per-torrent ratio limiting (Christian Kandeler) 2011-03-07 19:26:44 +00:00
Christophe Dumez
4b1eade157 Slight window position fix 2011-03-07 17:41:32 +00:00
Christophe Dumez
b79ed40e32 Updated Russian translation 2011-03-07 17:23:05 +00:00
Christophe Dumez
d06e0b639e Fix compilation with Qt 4.6 2011-03-03 19:20:49 +00:00
Christophe Dumez
d1cfb4f066 Should fix writings on NTFS when using Linux 2011-03-03 19:10:18 +00:00
Christophe Dumez
efa1f4ebb4 Fix compilation with libtorrent v0.14 2011-03-03 18:19:42 +00:00
Christophe Dumez
fa4eda9c87 Updated Spanish and Catalan translations 2011-03-01 18:48:34 +00:00
Christophe Dumez
1efb122d9c Added magnet mime type to desktop file (Thanks Mariusz Fik) 2011-02-27 17:48:36 +00:00
Christophe Dumez
c2e5ecaaa0 BUGFIX: Fix compilation with namespaced Qt (Christian Kandeler) 2011-02-27 15:41:05 +00:00
Christophe Dumez
313dfd6475 Bump to beta 2 2011-02-27 14:46:54 +00:00
Christophe Dumez
8dd753ce46 Update French translation 2011-02-27 14:46:28 +00:00
Christophe Dumez
435d0e1019 FEATURE: Added search field for torrent content 2011-02-27 14:40:46 +00:00
Christophe Dumez
37cd9c5b7b FEATURE: Added option to disable program exit confirmation 2011-02-27 09:43:58 +00:00
Christophe Dumez
8b9971003d FEATURE: Added option to bypass Web UI authentication for localhost 2011-02-27 09:34:42 +00:00
Christophe Dumez
79cdad47f1 Code optimization 2011-02-26 19:56:15 +00:00
Christophe Dumez
8f1276350e Use data sharing in RSS to save memory and increase performance 2011-02-26 19:25:05 +00:00
Christophe Dumez
c05e6ba580 Fix compilation error on Windows
Fix possible encoding problem on Windows (torrent creation tool)
Fix compilation with boost >= v1.46
2011-02-26 15:04:15 +00:00
Christophe Dumez
2da5e03741 Share ratio can now go over 100 2011-02-24 17:36:20 +00:00
Christophe Dumez
a9ce197d04 Improvement to last commit 2011-02-24 17:22:04 +00:00
Christophe Dumez
1bce5b7837 Fix cursor problem in torrent addition dialog 2011-02-24 17:15:22 +00:00
Christophe Dumez
74718bc568 Added comment 2011-02-22 18:37:56 +00:00
Christophe Dumez
217937217d Fix torrent upload from Web UI (Windows) 2011-02-22 18:35:42 +00:00
Christophe Dumez
af1dfd41ab Disable OS cache for aligned files to reduce memory consumption
Code cleanup
2011-02-22 18:02:15 +00:00
Christophe Dumez
54c6ccc087 Updated Nowegian, Spanish and Catalan translations 2011-02-13 08:34:26 +00:00
Christophe Dumez
d9e15e40f4 Fix "Append Label to Save path" on Windows 2011-02-12 09:50:23 +00:00
Christophe Dumez
12d1e852f4 Another encoding fix 2011-02-10 18:59:55 +00:00
Christophe Dumez
802d262776 Revert encoding changes since they appear to be wrong 2011-02-10 18:48:31 +00:00
Christophe Dumez
04b63829d7 Fix download from URLs on Windows
Fix possible encoding problems in paths (Windows)
2011-02-07 20:13:46 +00:00
Christophe Dumez
8568b29cc1 Complete Lithunian integration 2011-02-07 18:56:17 +00:00
Christophe Dumez
b1471c2a45 Fix typo in desktop file 2011-02-07 17:47:34 +00:00
Christophe Dumez
a86b87244d Updated language files 2011-02-07 17:30:21 +00:00
Christophe Dumez
e431b96ca1 Added Lithuanian translation 2011-02-07 17:29:04 +00:00
Christophe Dumez
ce5cdd0eea Fix the marking of items as read in RSS 2011-02-07 17:17:37 +00:00
Christophe Dumez
c5a831b8ec Use slashes instead of antislashes in URLs (Windows) 2011-02-07 17:10:06 +00:00
Christophe Dumez
872002b730 Bump to v2.7.0beta1 2011-02-06 14:44:25 +00:00
Christophe Dumez
cb6fad87de Updated Russian translation 2011-02-06 14:29:59 +00:00
Christophe Dumez
0f1473e212 FEATURE: Inhibit system sleep when torrents are active (Vladimir Golovnev)
Remove visual style settings
2011-02-06 14:27:34 +00:00
Christophe Dumez
b45171ba43 Fix properties button text color 2011-02-05 21:50:21 +00:00
Christophe Dumez
28b8f36f16 Fix layout problems 2011-02-05 21:27:13 +00:00
Christophe Dumez
35c1389794 Cosmetic changes to the piece availability and downloaded pieces bars 2011-02-05 19:16:48 +00:00
Christophe Dumez
6ae7db4afb Improve main window layout
Improve properties buttons style
2011-02-05 17:45:32 +00:00
Christophe Dumez
7b646018ea Updated language files 2011-02-05 16:01:49 +00:00
Christophe Dumez
4c7a5633da FEATURE: IP address reported to trackers is now customizable 2011-02-05 15:44:48 +00:00
Christophe Dumez
76d3e9033d FEATURE: Added auto-shutdown confirmation dialog 2011-02-05 14:51:31 +00:00
Christophe Dumez
c9d5370dc4 Fixes to Norwegian translation 2011-02-03 15:57:09 +00:00
Christophe Dumez
7cdbe8ef34 Updated AUTHORS file 2011-01-29 15:08:21 +00:00
Christophe Dumez
8b819d7e9e Fix typo in Norwegian translation 2011-01-29 14:48:32 +00:00
Christophe Dumez
7f0c8dde24 Rss code clean up 2011-01-29 14:18:45 +00:00
Christophe Dumez
74c32a0ecd Rss code clean up 2011-01-29 14:10:08 +00:00
Christophe Dumez
87174ef3a4 Rss code clean up 2011-01-29 13:44:56 +00:00
Christophe Dumez
462c821df9 RSS code clean up 2011-01-29 13:03:12 +00:00
Christophe Dumez
42d7e20c1d Fix compilation error in release mode 2011-01-29 11:57:52 +00:00
Christophe Dumez
933b924766 Updated Norwegian translation 2011-01-28 18:11:44 +00:00
Christophe Dumez
be15e6d34c Added new Norwegian translator name 2011-01-28 18:11:16 +00:00
Christophe Dumez
d6997e7833 Fix encoding problem in torrent moving code 2011-01-28 17:05:44 +00:00
Christophe Dumez
e94769b58b Rss code clean up 2011-01-27 19:28:05 +00:00
Christophe Dumez
7616c22897 More RSS code clean up 2011-01-27 18:03:28 +00:00
Christophe Dumez
138cd90736 Updated Russian translation 2011-01-27 17:33:57 +00:00
Christophe Dumez
9aae8040ef Use native file dialogs 2011-01-27 17:30:27 +00:00
Christophe Dumez
2d5612435c RSS code rewrite in progress 2011-01-27 17:18:56 +00:00
Christophe Dumez
2b1e4912f2 Fixes to Russian translation 2011-01-26 16:54:01 +00:00
Christophe Dumez
b1fe50e056 Fix compilation on Windows 2011-01-26 07:38:28 +00:00
Christophe Dumez
09a45abd92 Updated Russian translation 2011-01-25 19:14:57 +00:00
Christophe Dumez
adf615d0cc Fix compilation error 2011-01-25 18:51:14 +00:00
Christophe Dumez
954e010493 RSS optimization 2011-01-25 18:46:38 +00:00
Christophe Dumez
86b4db75be RSS code clean up 2011-01-25 18:07:28 +00:00
Christophe Dumez
587c4f3b14 Code clean up 2011-01-25 17:26:25 +00:00
Christophe Dumez
8238c13dc0 Performance improvement on ARM 2011-01-25 17:04:55 +00:00
Christophe Dumez
5c8dd9f0fb Performance improvement on ARM 2011-01-25 17:01:09 +00:00
Christophe Dumez
dfcdb18b41 Do not display 100% unless the torrent is complete 2011-01-25 16:55:29 +00:00
Christophe Dumez
e402674092 Code clean up 2011-01-24 19:06:47 +00:00
Christophe Dumez
783004ae58 Some more code clean up 2011-01-24 17:58:57 +00:00
Christophe Dumez
6ff7c6ed06 Fixed memory leak in torrent downloader
Code clean up
2011-01-24 17:27:26 +00:00
Christophe Dumez
a0ecbe01a1 Make sure the progress is not 100% unless the file is complete 2011-01-24 16:48:18 +00:00
Christophe Dumez
47c2f2e30a Stop using load_file from libtorrent 2011-01-23 19:31:48 +00:00
Christophe Dumez
721fa821f7 BUGFIX: Fix renaming of single-file torrents (by Vladimir Golovnev) 2011-01-23 08:34:57 +00:00
Christophe Dumez
6580d23263 Make sure the main windows is initially centered 2011-01-22 19:51:06 +00:00
Christophe Dumez
0b874d9c42 Make sure the properties panel is initially hidden 2011-01-22 19:39:43 +00:00
Christophe Dumez
679c91435d Display legal notice on screen center 2011-01-22 19:31:06 +00:00
Christophe Dumez
d68b7fc9cb Code clean up 2011-01-22 19:16:17 +00:00
Christophe Dumez
02722dc3c9 Drop dependency on libboost-thread 2011-01-22 19:01:16 +00:00
Christophe Dumez
844bd52c67 Improved hostname resolution code 2011-01-22 18:55:54 +00:00
Christophe Dumez
51bc67042e Fix possible filter list height problem 2011-01-21 18:38:58 +00:00
Christophe Dumez
a8978b2ae4 Fix compatibility with Qt < 4.7 2011-01-20 20:58:24 +00:00
Christophe Dumez
fcf3b8e14a Fixed translation of size units (Thanks Владимир Головнёв) 2011-01-20 16:45:59 +00:00
Christophe Dumez
015bdc7930 Improved UI translation (Thanks Владимир Головнёв) 2011-01-20 16:14:23 +00:00
Christophe Dumez
370b986ab1 Updated Russian translation 2011-01-20 15:12:04 +00:00
Christophe Dumez
9d7591fc84 Fix compilation on OS/2 2011-01-18 16:55:49 +00:00
Christophe Dumez
9b6b357c9e Cleanup mainwindow startup code 2011-01-17 17:29:25 +00:00
Christophe Dumez
8fd7b86f45 FEATURE: Added option to skip torrent deletion confirmation (Ville Kiiskinen) 2011-01-16 15:29:44 +00:00
Christophe Dumez
35a4e4aa1c Fixes to Polish translation 2011-01-16 09:53:32 +00:00
Christophe Dumez
d24abc3088 Fix labeling in RSS downloader 2011-01-15 18:23:19 +00:00
Christophe Dumez
615e08b74f Added unicode support to email notification
Improved compatibility with various SMTP servers
2011-01-15 16:53:37 +00:00
Christophe Dumez
4644b5cf15 Fix to Russian translation 2011-01-15 14:19:23 +00:00
Christophe Dumez
cb719e2bf5 Fix freebsd compilation 2011-01-15 09:30:41 +00:00
Christophe Dumez
ab8e35b6b4 Really get rid of nox dependency in nox mode 2011-01-15 08:48:20 +00:00
Christophe Dumez
76ea7525e3 Really get rid of DBus dependency in nox mode 2011-01-15 08:42:32 +00:00
Christophe Dumez
64615adc23 Remove dbus dependency in nox mode 2011-01-15 08:38:57 +00:00
Christophe Dumez
a205591178 Fixed file priority context menu 2011-01-14 21:18:45 +00:00
Christophe Dumez
25e27f4614 Updated French translation 2011-01-14 19:11:14 +00:00
Christophe Dumez
4a66c33a2c Improved Web UI translation 2011-01-14 19:03:48 +00:00
Christophe Dumez
16be6fe474 Improved Web UI translation 2011-01-14 19:01:11 +00:00
Christophe Dumez
e170d9c3a8 Improve Web Ui translation 2011-01-14 18:57:15 +00:00
Christophe Dumez
3adc58bb87 Added comment 2011-01-14 17:36:09 +00:00
Christophe Dumez
55aa6c36ee Fix icon size issues 2011-01-14 17:29:30 +00:00
Christophe Dumez
350bf0ffd4 Updated polish translation 2011-01-14 16:52:42 +00:00
Christophe Dumez
a9565e363a Updated Armenian translation 2011-01-14 16:48:23 +00:00
Christophe Dumez
378e24411c Updated Armenian translation 2011-01-14 15:14:35 +00:00
Christophe Dumez
22c785b951 Code clean up 2011-01-13 20:57:10 +00:00
Christophe Dumez
eb0053fe48 Fix possible crashes in full allocation mode 2011-01-13 20:38:38 +00:00
Christophe Dumez
6996ccc2c8 Fix typo in program preferences (Thanks cgreco) 2011-01-12 20:10:10 +00:00
Christophe Dumez
fcef304427 Translate locale names 2011-01-12 17:42:55 +00:00
Christophe Dumez
bf5c1951ba Fix torrent import 2011-01-12 17:12:24 +00:00
Christophe Dumez
e931209860 Fix possible crash on adding magnet links 2011-01-12 16:53:11 +00:00
Christophe Dumez
db4520a13b Updated Russian translation 2011-01-12 16:43:48 +00:00
Christophe Dumez
4305e6b1e0 Updated Croatian translation 2011-01-12 15:50:12 +00:00
Christophe Dumez
b173458814 Updated Armenian settings 2011-01-12 15:47:50 +00:00
Christophe Dumez
833750513b Remove country flags from program preferences 2011-01-11 21:10:11 +00:00
Christophe Dumez
9e63a0babb Updated Ukrainian translation 2011-01-11 21:07:40 +00:00
Christophe Dumez
e48909dea4 Code clea nup 2011-01-11 19:42:34 +00:00
Christophe Dumez
f306d02ac9 Code clean up 2011-01-11 19:05:24 +00:00
Christophe Dumez
f9f3642116 Code clean up 2011-01-11 18:53:28 +00:00
Christophe Dumez
1537c70988 Win32: Added Python 2.7 support (and fix Python 2.5 support) 2011-01-11 17:30:53 +00:00
Christophe Dumez
847a6c75d7 Added Armenian translation 2011-01-11 17:12:39 +00:00
Christophe Dumez
ecffc5e550 Updated Greek and Bulgarian translations 2011-01-11 17:04:48 +00:00
Christophe Dumez
65e9401c5d Fix PeX being wrongly reported as disabled 2011-01-10 21:09:47 +00:00
Christophe Dumez
ae3632e5c1 Fix typo 2011-01-10 21:00:45 +00:00
Christophe Dumez
9ba3862be1 Reduce top toolbar spacing 2011-01-10 17:53:33 +00:00
Christophe Dumez
793c1be9bd trunk is now v2.7.0alpha 2011-01-10 17:40:41 +00:00
Christophe Dumez
1ce6f4a7c3 Fix magnet link name update problem 2011-01-10 17:33:53 +00:00
Christophe Dumez
816cfefbac Move transfer list filter on the right side of the toolbar 2011-01-10 17:11:27 +00:00
Christophe Dumez
0eec718354 Also fix toolbar icon size in Web UI 2011-01-10 16:56:38 +00:00
Christophe Dumez
b80148c7e4 Use 22px size for toolbar icons 2011-01-10 15:52:45 +00:00
Christophe Dumez
3bc946bfb9 Fix some missing icons in the Web UI 2011-01-09 19:38:52 +00:00
Christophe Dumez
a62169001e Remove outdated comment 2011-01-09 17:16:51 +00:00
2329 changed files with 1131203 additions and 205242 deletions

81
.clang-tidy Normal file
View File

@@ -0,0 +1,81 @@
Checks: >
bugprone-*,
cert-*,
concurrency-*,
cppcoreguidelines-*,
misc-*,
modernize-*,
performance-*,
portability-*,
readability-*,
-# not applicable at all,
-bugprone-easily-swappable-parameters,
-bugprone-implicit-widening-of-multiplication-result,
-bugprone-macro-parentheses,
-cppcoreguidelines-avoid-c-arrays,
-cppcoreguidelines-avoid-magic-numbers,
-cppcoreguidelines-avoid-non-const-global-variables,
-cppcoreguidelines-macro-usage,
-cppcoreguidelines-non-private-member-variables-in-classes,
-cppcoreguidelines-owning-memory,
-cppcoreguidelines-pro-bounds-array-to-pointer-decay,
-cppcoreguidelines-pro-bounds-constant-array-index,
-cppcoreguidelines-pro-bounds-pointer-arithmetic,
-cppcoreguidelines-pro-type-const-cast,
-cppcoreguidelines-pro-type-reinterpret-cast,
-cppcoreguidelines-pro-type-union-access,
-cppcoreguidelines-pro-type-vararg,
-cppcoreguidelines-special-member-functions,
-cppcoreguidelines-virtual-class-destructor,
-misc-no-recursion,
-misc-non-private-member-variables-in-classes,
-misc-unused-parameters,
-modernize-avoid-c-arrays,
-modernize-pass-by-value,
-modernize-use-auto,
-modernize-use-nodiscard,
-modernize-use-trailing-return-type,
-readability-function-cognitive-complexity,
-readability-function-size,
-readability-identifier-length,
-readability-implicit-bool-conversion,
-readability-isolate-declaration,
-readability-magic-numbers,
-readability-named-parameter,
-readability-redundant-access-specifiers,
-readability-simplify-boolean-expr,
-readability-uppercase-literal-suffix,
-# only sometimes useful,
-bugprone-narrowing-conversions,
-cert-dcl58-cpp,
-cert-err33-c,
-cert-err58-cpp,
-clang-analyzer-core.CallAndMessage,
-clang-analyzer-cplusplus.NewDelete,
-clang-analyzer-cplusplus.NewDeleteLeaks,
-concurrency-mt-unsafe,
-cppcoreguidelines-init-variables,
-cppcoreguidelines-narrowing-conversions,
-cppcoreguidelines-prefer-member-initializer,
-cppcoreguidelines-pro-type-static-cast-downcast,
-misc-definitions-in-headers,
-modernize-concat-nested-namespaces,
-modernize-loop-convert,
-modernize-raw-string-literal,
-modernize-unary-static-assert,
-performance-no-automatic-move,
-readability-convert-member-functions-to-static,
-readability-else-after-return,
-readability-redundant-declaration,
-# obsoleted,
-cert-dcl21-cpp
CheckOptions:
- { key: cppcoreguidelines-explicit-virtual-functions.IgnoreDestructors, value: true }
- { key: modernize-use-override.IgnoreDestructors, value: true }
- { key: performance-for-range-copy.AllowedTypes, value: "QJsonValue" }
- { key: performance-for-range-copy.WarnOnAllAutoCopies, value: true }
- { key: readability-braces-around-statements.ShortStatementLines, value: 3 }
HeaderFilterRegex: ".+/src/.*\\.h"
WarningsAsErrors: "*"

14
.editorconfig Normal file
View File

@@ -0,0 +1,14 @@
# EditorConfig is awesome: https://EditorConfig.org
root = true
[*]
charset = utf-8
end_of_line = lf
indent_style = space
indent_size = 4
insert_final_newline = true
trim_trailing_whitespace = true
[**.yml]
indent_size = 2

10
.gitattributes vendored Normal file
View File

@@ -0,0 +1,10 @@
core.eol=lf
* text eol=lf
*.icns binary
*.ico binary
*.png binary
*.qm binary
*.zip binary
dist/windows/license.txt text eol=crlf
test/testdata/crlf.txt text eol=crlf

1
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1 @@
custom: "https://www.qbittorrent.org/donate.php"

74
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,74 @@
name: Bug Report
description: File a bug report to help improve qBittorrent user experience.
body:
- type: markdown
attributes:
value: |
#### ADVISORY
"We do not support any versions older than the current release series"
"We do not support any 3rd party/forked versions e.g. `portableapps`/`Enhanced Edition` etc."
"Please post all details in **English**."
#### Prerequisites before submitting an issue!
- Read the issue reporting section in the **[contributing guidelines](https://github.com/qbittorrent/qBittorrent/blob/master/CONTRIBUTING.md)**, to know how to submit a good bug report with the required information.
- Verify that the issue is not fixed and is reproducible in the **[latest official qBittorrent version](https://www.qbittorrent.org/download.php).**
- (Optional, but recommended) Verify that the issue is not fixed and is reproducible in the latest CI (**[macOS](https://github.com/qbittorrent/qBittorrent/actions/workflows/ci_macos.yaml?query=branch%3Amaster+event%3Apush)** / **[Ubuntu](https://github.com/qbittorrent/qBittorrent/actions/workflows/ci_ubuntu.yaml?query=branch%3Amaster+event%3Apush)** / **[Windows](https://github.com/qbittorrent/qBittorrent/actions/workflows/ci_windows.yaml?query=branch%3Amaster+event%3Apush)**) builds.
- Perform a **[search of the issue tracker (including closed ones)](https://github.com/qbittorrent/qBittorrent/issues?q=is%3Aissue+is%3Aopen+-label%3A%22Feature+request%22)** to avoid posting a duplicate.
- Make sure this is not a support request or question, both of which are better suited for either the **[discussions section](https://github.com/qbittorrent/qBittorrent/discussions)**, **[forum](https://qbforums.shiki.hu/)**, or **[subreddit](https://www.reddit.com/r/qBittorrent/)**.
- Verify that the **[wiki](https://github.com/qbittorrent/qBittorrent/wiki)** did not contain a suitable solution either.
- type: textarea
attributes:
label: qBittorrent & operating system versions
description: |
Qt and libtorrent-rasterbar versions are required when: 1. You are using linux. 2. You are not using an official build downloaded from our website.
Example of preferred formatting:
qBittorrent: 4.6.6 x64
Operating system: Windows 10 Pro x64 (22H2) 10.0.19045
Qt: 6.4.3
libtorrent-rasterbar: 1.2.19
placeholder: |
qBittorrent:
Operating system:
Qt:
libtorrent-rasterbar:
validations:
required: true
- type: textarea
attributes:
label: What is the problem?
description: Please add the "crash report" (if encountered) or give a clear and concise description of problem.
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce
description: Please provide reliable steps to reproduce the problem.
placeholder: |
1. First step
2. Second step
3. and so on...
validations:
required: false
- type: textarea
attributes:
label: Additional context
description: Add screenshots etc. (Anything that will provide more context about the problem)
validations:
required: false
- type: textarea
attributes:
label: Log(s) & preferences file(s)
description: |
Add these files: qBittorrent preferences file, qBittorrent.log & watched_folders.json (if using "Watched Folders" feature).
See **[Where does qBittorrent save its settings?](https://github.com/qbittorrent/qBittorrent/wiki/Frequently-Asked-Questions#Where_does_qBittorrent_save_its_settings)**
#### Note: It's the user's responsibility to redact any sensitive information
validations:
required: true

17
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,17 @@
blank_issues_enabled: false
contact_links:
- name: Wiki
url: "https://github.com/qbittorrent/qBittorrent/wiki/"
about: "Consult the wiki first (especially the FAQ), it might already contain the information you are looking for"
- name: Question
url: "https://github.com/qbittorrent/qBittorrent/discussions"
about: "Please ask questions related to usage/setup/support/non-issue development discussion in the Discussions section"
- name: Question
url: "http://forum.qbittorrent.org/"
about: "Alternatively, ask on the official forum"
- name: Question
url: "https://www.reddit.com/r/qBittorrent/"
about: "Alternatively, use the subreddit"

View File

@@ -0,0 +1,37 @@
name: Feature Request
description: Suggest a new feature or enhancement for qBittorrent.
labels: ["Feature request"]
body:
- type: markdown
attributes:
value: |
#### ADVISORY
"Please post all details in **English**."
#### Prerequisites before submitting a feature request!
- Read the feature request section in the **[contributing guidelines](https://github.com/qbittorrent/qBittorrent/blob/master/CONTRIBUTING.md)**, to know how to submit a good feature request with the required information.
- Verify that the feature being requested is not available in the **[latest official qBittorrent version](https://www.qbittorrent.org/download.php).**
- (Optional but recommended) Verify that the feature being requested is not available in the latest CI (**[macOS](https://github.com/qbittorrent/qBittorrent/actions/workflows/ci_macos.yaml?query=branch%3Amaster+event%3Apush)** / **[Ubuntu](https://github.com/qbittorrent/qBittorrent/actions/workflows/ci_ubuntu.yaml?query=branch%3Amaster+event%3Apush)** / **[Windows](https://github.com/qbittorrent/qBittorrent/actions/workflows/ci_windows.yaml?query=branch%3Amaster+event%3Apush)**) builds.
- Search the issue tracker with the **[feature request filter](https://github.com/qbittorrent/qBittorrent/issues?q=is%3Aopen+is%3Aissue+label%3A%22Feature+request%22)** for similar feature requests (including closed ones) to avoid posting a duplicate.
- Make sure this is not a support request or question, both of which are better suited for either the **[discussions section](https://github.com/qbittorrent/qBittorrent/discussions)**, **[forum](https://qbforums.shiki.hu/)**, or **[subreddit](https://www.reddit.com/r/qBittorrent/)**.
- Verify that the **[wiki](https://github.com/qbittorrent/qBittorrent/wiki)** did not contain a suitable solution either.
- type: textarea
attributes:
label: Suggestion
validations:
required: false
- type: textarea
attributes:
label: Use case
validations:
required: false
- type: textarea
attributes:
label: Extra info/examples/attachments
description: Add screenshots etc. (Anything that will give us more context about what is being requested!)
validations:
required: false

5
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,5 @@
<!--
MANDATORY Before submitting your work, make sure you have:
1. Read https://github.com/qbittorrent/qBittorrent/blob/master/CONTRIBUTING.md#opening-a-pull-request
2. Delete this comment block
-->

18
.github/SUPPORT.md vendored Normal file
View File

@@ -0,0 +1,18 @@
# Support Resources
The issue tracker is only for bug reports/feature requests related to the project itself.
Please do not use the issue tracker for questions about general program usage,
how BitTorrent (the protocol) works in general, etc.
For such questions, use one of the following community support resources:
* The [discussions section][discussions-url]
* The [official forum][forum-url]
* The [qBittorrent subreddit][subreddit-url]
[discussions-url]: https://github.com/qbittorrent/qBittorrent/discussions
[forum-url]: http://forum.qbittorrent.org/
[subreddit-url]: https://www.reddit.com/r/qBittorrent/

15
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,15 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
commit-message:
prefix: "GHA CI"
groups:
github-actions:
patterns:
- "*"
labels:
- "CI"
schedule:
interval: "monthly"

71
.github/workflows/ci_file_health.yaml vendored Normal file
View File

@@ -0,0 +1,71 @@
name: CI - File health
on: [pull_request, push]
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: ${{ github.head_ref != '' }}
jobs:
ci:
name: Check
runs-on: ubuntu-latest
permissions:
security-events: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup python
uses: actions/setup-python@v5
with:
python-version: "*"
- name: Check files
uses: pre-commit/action@v3.0.1
- name: Check doc
env:
pandoc_path: "${{ github.workspace }}/../pandoc"
run: |
# install pandoc
curl \
-L \
-o "${{ runner.temp }}/pandoc.tar.gz" \
"https://github.com/jgm/pandoc/releases/download/3.6/pandoc-3.6-linux-amd64.tar.gz"
tar -xf "${{ runner.temp }}/pandoc.tar.gz" -C "${{ github.workspace }}/.."
mv "${{ github.workspace }}/.."/pandoc-* "${{ env.pandoc_path }}"
# run pandoc
for lang in doc/*/; do
"${{ env.pandoc_path }}/bin/pandoc" -f markdown -t man -s "$lang/qbittorrent.1.md" -o "$lang/qbittorrent.1"
"${{ env.pandoc_path }}/bin/pandoc" -f markdown -t man -s "$lang/qbittorrent-nox.1.md" -o "$lang/qbittorrent-nox.1"
done
# check diff, ignore "Automatically generated by ..." part
git diff -I '\.\\".*' --exit-code
- name: Check GitHub Actions workflow
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
pip install zizmor
IGNORE_RULEID='(.ruleId != "template-injection")
and (.ruleId != "unpinned-uses")'
IGNORE_ID='(.id != "template-injection")
and (.id != "unpinned-uses")'
zizmor \
--format sarif \
--pedantic \
./ \
| jq "(.runs[].results |= map(select($IGNORE_RULEID)))
| (.runs[].tool.driver.rules |= map(select($IGNORE_ID)))" \
> "${{ runner.temp }}/zizmor_results.sarif"
- name: Upload zizmor results
uses: github/codeql-action/upload-sarif@v3
with:
category: zizmor
sarif_file: "${{ runner.temp }}/zizmor_results.sarif"

152
.github/workflows/ci_macos.yaml vendored Normal file
View File

@@ -0,0 +1,152 @@
name: CI - macOS
on: [pull_request, push]
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: ${{ github.head_ref != '' }}
jobs:
ci:
name: Build
runs-on: macos-latest
permissions:
actions: write
strategy:
fail-fast: false
matrix:
libt_version: ["2.0.11", "1.2.20"]
qbt_gui: ["GUI=ON", "GUI=OFF"]
qt_version: ["6.7.0"]
env:
boost_path: "${{ github.workspace }}/../boost"
libtorrent_path: "${{ github.workspace }}/../libtorrent"
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Install dependencies
uses: Wandalen/wretry.action@v3
env:
HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK: 1
HOMEBREW_NO_INSTALL_CLEANUP: 1
with:
attempt_delay: 20000
attempt_limit: 6
command: |
brew update > /dev/null
brew install \
cmake ninja \
openssl@3 zlib
- name: Setup ccache
uses: Chocobo1/setup-ccache-action@v1
with:
store_cache: ${{ github.ref == 'refs/heads/master' }}
update_packager_index: false
ccache_options: |
max_size=2G
- name: Install boost
env:
BOOST_MAJOR_VERSION: "1"
BOOST_MINOR_VERSION: "86"
BOOST_PATCH_VERSION: "0"
run: |
boost_url="https://archives.boost.io/release/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/source/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
boost_url2="https://sourceforge.net/projects/boost/files/boost/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
set +e
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."; _exitCode="$?"
if [ "$_exitCode" -ne "0" ]; then
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url2"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."; _exitCode="$?"
fi
mv "${{ github.workspace }}/.."/boost_* "${{ env.boost_path }}"
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt_version }}
archives: qtbase qtdeclarative qtsvg qttools
# Not sure why Qt made a hard dependency on qtdeclarative, try removing it when Qt > 6.4.0
cache: true
- name: Install libtorrent
run: |
git clone \
--branch v${{ matrix.libt_version }} \
--depth 1 \
--recurse-submodules \
https://github.com/arvidn/libtorrent.git \
${{ env.libtorrent_path }}
cd ${{ env.libtorrent_path }}
cmake \
-B build \
-G "Ninja" \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_CXX_STANDARD=20 \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DBOOST_ROOT="${{ env.boost_path }}" \
-Ddeprecated-functions=OFF
cmake --build build
sudo cmake --install build
- name: Build qBittorrent
run: |
CXXFLAGS="$CXXFLAGS -DQT_FORCE_ASSERTS -Werror -Wno-error=deprecated-declarations" \
LDFLAGS="$LDFLAGS -gz" \
cmake \
-B build \
-G "Ninja" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DBOOST_ROOT="${{ env.boost_path }}" \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-D${{ matrix.qbt_gui }}
cmake --build build --target qbt_update_translations
cmake --build build
cmake --build build --target check
- name: Prepare build artifacts
run: |
# create .dmg
appName="qbittorrent"
if [ "${{ matrix.qbt_gui }}" = "GUI=OFF" ]; then
appName="qbittorrent-nox"
fi
# package
pushd build
PACKAGE_RETRY=0
while [ "$PACKAGE_RETRY" -lt "3" ]; do
macdeployqt "$appName.app" -dmg -no-strip
if [ -f "$appName.dmg" ]; then
break
fi
sleep 5
PACKAGE_RETRY=$((PACKAGE_RETRY + 1))
echo "Retry $PACKAGE_RETRY..."
done
popd
# prepare upload folder
mkdir upload
cp "build/$appName.dmg" upload
mkdir upload/cmake
cp build/compile_commands.json upload/cmake
mkdir upload/cmake/libtorrent
cp ${{ env.libtorrent_path }}/build/compile_commands.json upload/cmake/libtorrent
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: qBittorrent-CI_macOS_${{ matrix.qbt_gui }}_libtorrent-${{ matrix.libt_version }}_Qt-${{ matrix.qt_version }}
path: upload

91
.github/workflows/ci_python.yaml vendored Normal file
View File

@@ -0,0 +1,91 @@
name: CI - Python
on: [pull_request, push]
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: ${{ github.head_ref != '' }}
jobs:
ci:
name: Check
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup python (auxiliary scripts)
uses: actions/setup-python@v5
with:
python-version: '3' # use default version
- name: Install tools (auxiliary scripts)
run: pip install bandit pycodestyle pyflakes
- name: Gather files (auxiliary scripts)
run: |
export "PY_FILES=$(find . -type f -name '*.py' ! -path '*searchengine*' -printf '%p ')"
echo $PY_FILES
echo "PY_FILES=$PY_FILES" >> "$GITHUB_ENV"
- name: Lint code (auxiliary scripts)
run: |
pyflakes $PY_FILES
bandit --skip B101,B314,B405 $PY_FILES
- name: Format code (auxiliary scripts)
run: |
pycodestyle \
--max-line-length=1000 \
--statistics \
$PY_FILES
- name: Build code (auxiliary scripts)
run: |
python -m compileall $PY_FILES
- name: Setup python (search engine)
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install tools (search engine)
run: pip install bandit mypy pycodestyle pyflakes pyright
- name: Gather files (search engine)
run: |
export "PY_FILES=$(find . -type f -name '*.py' -path '*searchengine*' ! -name 'socks.py' -printf '%p ')"
echo $PY_FILES
echo "PY_FILES=$PY_FILES" >> "$GITHUB_ENV"
- name: Check typings (search engine)
run: |
MYPYPATH="src/searchengine/nova3" \
mypy \
--follow-imports skip \
--strict \
$PY_FILES
pyright \
$PY_FILES
- name: Lint code (search engine)
run: |
pyflakes $PY_FILES
bandit --skip B110,B310,B314,B405 $PY_FILES
- name: Format code (search engine)
run: |
pycodestyle \
--ignore=E265,E402 \
--max-line-length=1000 \
--statistics \
$PY_FILES
- name: Build code (search engine)
run: |
python -m compileall $PY_FILES

173
.github/workflows/ci_ubuntu.yaml vendored Normal file
View File

@@ -0,0 +1,173 @@
name: CI - Ubuntu
on: [pull_request, push]
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: ${{ github.head_ref != '' }}
jobs:
ci:
name: Build
runs-on: ubuntu-latest
permissions:
actions: write
security-events: write
strategy:
fail-fast: false
matrix:
libt_version: ["2.0.11", "1.2.20"]
qbt_gui: ["GUI=ON", "GUI=OFF"]
qt_version: ["6.5.2"]
env:
boost_path: "${{ github.workspace }}/../boost"
harden_flags: "-D_FORTIFY_SOURCE=3 -D_GLIBCXX_ASSERTIONS"
libtorrent_path: "${{ github.workspace }}/../libtorrent"
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Install dependencies
run: |
sudo apt update
sudo apt install \
build-essential cmake ninja-build \
libssl-dev libxkbcommon-x11-dev libxcb-cursor-dev zlib1g-dev
- name: Setup ccache
uses: Chocobo1/setup-ccache-action@v1
with:
store_cache: ${{ github.ref == 'refs/heads/master' }}
update_packager_index: false
ccache_options: |
max_size=2G
- name: Install boost
env:
BOOST_MAJOR_VERSION: "1"
BOOST_MINOR_VERSION: "77"
BOOST_PATCH_VERSION: "0"
run: |
boost_url="https://archives.boost.io/release/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/source/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
boost_url2="https://sourceforge.net/projects/boost/files/boost/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
set +e
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."; _exitCode="$?"
if [ "$_exitCode" -ne "0" ]; then
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url2"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."; _exitCode="$?"
fi
mv "${{ github.workspace }}/.."/boost_* "${{ env.boost_path }}"
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt_version }}
archives: icu qtbase qtdeclarative qtsvg qttools
cache: true
- name: Install libtorrent
run: |
git clone \
--branch v${{ matrix.libt_version }} \
--depth 1 \
--recurse-submodules \
https://github.com/arvidn/libtorrent.git \
${{ env.libtorrent_path }}
cd ${{ env.libtorrent_path }}
CXXFLAGS="$CXXFLAGS ${{ env.harden_flags }}" \
cmake \
-B build \
-G "Ninja" \
-DBUILD_SHARED_LIBS=OFF \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_CXX_STANDARD=20 \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DBOOST_ROOT="${{ env.boost_path }}" \
-Ddeprecated-functions=OFF
cmake --build build
sudo cmake --install build
# to avoid scanning 3rdparty codebases, initialize it just before building qbt
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
if: startsWith(matrix.libt_version, 2) && (matrix.qbt_gui == 'GUI=ON')
with:
config-file: ./.github/workflows/helper/codeql/cpp.yaml
languages: cpp
- name: Build qBittorrent
run: |
CXXFLAGS="$CXXFLAGS ${{ env.harden_flags }} -DQT_FORCE_ASSERTS -Werror" \
LDFLAGS="$LDFLAGS -gz" \
cmake \
-B build \
-G "Ninja" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DBOOST_ROOT="${{ env.boost_path }}" \
-DCMAKE_INSTALL_PREFIX="/usr" \
-DTESTING=ON \
-DVERBOSE_CONFIGURE=ON \
-D${{ matrix.qbt_gui }}
cmake --build build --target qbt_update_translations
cmake --build build
cmake --build build --target check
DESTDIR="qbittorrent" cmake --install build
- name: Run CodeQL analysis
uses: github/codeql-action/analyze@v3
if: startsWith(matrix.libt_version, 2) && (matrix.qbt_gui == 'GUI=ON')
with:
category: ${{ github.base_ref || github.ref_name }}
- name: Prepare build artifacts
run: |
mkdir upload
mkdir upload/cmake
cp build/compile_commands.json upload/cmake
mkdir upload/cmake/libtorrent
cp ${{ env.libtorrent_path }}/build/compile_commands.json upload/cmake/libtorrent
- name: Install AppImage
run: |
curl \
-L \
-Z \
-O https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage \
-O https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage \
-O https://github.com/linuxdeploy/linuxdeploy-plugin-appimage/releases/download/continuous/linuxdeploy-plugin-appimage-x86_64.AppImage
chmod +x \
linuxdeploy-x86_64.AppImage \
linuxdeploy-plugin-qt-x86_64.AppImage \
linuxdeploy-plugin-appimage-x86_64.AppImage
- name: Prepare files for AppImage
if: matrix.qbt_gui == 'GUI=OFF'
run: |
mkdir -p qbittorrent/usr/share/applications
cp .github/workflows/helper/appimage/org.qbittorrent.qBittorrent.desktop qbittorrent/usr/share/applications/org.qbittorrent.qBittorrent.desktop
mkdir -p qbittorrent/usr/share/icons/hicolor/scalable/apps
cp dist/unix/menuicons/scalable/apps/qbittorrent.svg qbittorrent/usr/share/icons/hicolor/scalable/apps/qbittorrent.svg
- name: Package AppImage
run: |
./linuxdeploy-x86_64.AppImage --appdir qbittorrent --plugin qt
rm qbittorrent/apprun-hooks/*
cp .github/workflows/helper/appimage/export_vars.sh qbittorrent/apprun-hooks/export_vars.sh
NO_APPSTREAM=1 \
OUTPUT=upload/qbittorrent-CI_Ubuntu_x86_64.AppImage \
./linuxdeploy-x86_64.AppImage --appdir qbittorrent --output appimage
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: qBittorrent-CI_Ubuntu-x64_${{ matrix.qbt_gui }}_libtorrent-${{ matrix.libt_version }}_Qt-${{ matrix.qt_version }}
path: upload

54
.github/workflows/ci_webui.yaml vendored Normal file
View File

@@ -0,0 +1,54 @@
name: CI - WebUI
on: [pull_request, push]
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: ${{ github.head_ref != '' }}
jobs:
ci:
name: Check
runs-on: ubuntu-latest
permissions:
security-events: write
defaults:
run:
working-directory: src/webui/www
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup nodejs
uses: actions/setup-node@v4
with:
node-version: 'lts/*'
- name: Install tools
run: |
npm install
npm ls
npm ls --all
- name: Lint code
run: npm run lint
- name: Format code
run: |
npm run format
git diff --exit-code
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
config-file: .github/workflows/helper/codeql/js.yaml
languages: javascript
- name: Run CodeQL analysis
uses: github/codeql-action/analyze@v3

208
.github/workflows/ci_windows.yaml vendored Normal file
View File

@@ -0,0 +1,208 @@
name: CI - Windows
on: [pull_request, push]
permissions: {}
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: ${{ github.head_ref != '' }}
jobs:
ci:
name: Build
runs-on: windows-latest
permissions:
actions: write
strategy:
fail-fast: false
matrix:
libt_version: ["2.0.11", "1.2.20"]
env:
boost_path: "${{ github.workspace }}/../boost"
libtorrent_path: "${{ github.workspace }}/../libtorrent"
vcpkg_path: "c:/vcpkg"
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Setup devcmd
uses: ilammy/msvc-dev-cmd@v1
- name: Install build tools
run: |
if ((Get-Command "ninja.exe" -ErrorAction SilentlyContinue) -eq $null)
{
choco install ninja
}
where.exe ninja
ninja --version
# https://learn.microsoft.com/en-us/vcpkg/users/binarycaching#gha
- name: Set variables for vcpkg
uses: actions/github-script@v7
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', (process.env.ACTIONS_CACHE_URL || ''));
core.exportVariable('ACTIONS_RUNTIME_TOKEN', (process.env.ACTIONS_RUNTIME_TOKEN || ''));
- name: Install dependencies with vcpkg
run: |
# create our own triplet
New-Item `
-Force `
-ItemType File `
-Path "${{ env.vcpkg_path }}/triplets_overlay/x64-windows-static-md-release.cmake"
# OpenSSL isn't compatible with `/guard:cf` flag so we omit it for now, see: https://github.com/openssl/openssl/issues/22554
Add-Content `
-Path "${{ env.vcpkg_path }}/triplets_overlay/x64-windows-static-md-release.cmake" `
-Value @("set(VCPKG_TARGET_ARCHITECTURE x64)",
"set(VCPKG_LIBRARY_LINKAGE static)",
"set(VCPKG_CRT_LINKAGE dynamic)",
"set(VCPKG_BUILD_TYPE release)")
# clear buildtrees after each package installation to reduce disk space requirements
$packages = `
"openssl:x64-windows-static-md-release",
"zlib:x64-windows-static-md-release"
${{ env.vcpkg_path }}/vcpkg.exe upgrade `
--no-dry-run `
--overlay-triplets="${{ env.vcpkg_path }}/triplets_overlay"
${{ env.vcpkg_path }}/vcpkg.exe install `
--binarysource="clear;x-gha,readwrite" `
--clean-after-build `
--overlay-triplets="${{ env.vcpkg_path }}/triplets_overlay" `
$packages
- name: Install boost
env:
BOOST_MAJOR_VERSION: "1"
BOOST_MINOR_VERSION: "86"
BOOST_PATCH_VERSION: "0"
run: |
$boost_url="https://archives.boost.io/release/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/source/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
$boost_url2="https://sourceforge.net/projects/boost/files/boost/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."
if ($LastExitCode -ne 0)
{
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url2"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."
}
move "${{ github.workspace }}/../boost_*" "${{ env.boost_path }}"
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: "6.8.0"
arch: win64_msvc2022_64
archives: qtbase qtsvg qttools
cache: true
- name: Install libtorrent
run: |
git clone `
--branch v${{ matrix.libt_version }} `
--depth 1 `
--recurse-submodules `
https://github.com/arvidn/libtorrent.git `
${{ env.libtorrent_path }}
cd ${{ env.libtorrent_path }}
$env:CXXFLAGS+=" /guard:cf"
$env:LDFLAGS+=" /guard:cf"
cmake `
-B build `
-G "Ninja" `
-DCMAKE_BUILD_TYPE=RelWithDebInfo `
-DCMAKE_CXX_STANDARD=20 `
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON `
-DCMAKE_INSTALL_PREFIX="${{ env.libtorrent_path }}/install" `
-DCMAKE_TOOLCHAIN_FILE="${{ env.vcpkg_path }}/scripts/buildsystems/vcpkg.cmake" `
-DBOOST_ROOT="${{ env.boost_path }}" `
-DBUILD_SHARED_LIBS=OFF `
-Ddeprecated-functions=OFF `
-Dstatic_runtime=OFF `
-DVCPKG_TARGET_TRIPLET=x64-windows-static-md-release
cmake --build build
cmake --install build
- name: Build qBittorrent
run: |
$env:CXXFLAGS+="/DQT_FORCE_ASSERTS /WX"
cmake `
-B build `
-G "Ninja" `
-DCMAKE_BUILD_TYPE=RelWithDebInfo `
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON `
-DCMAKE_TOOLCHAIN_FILE="${{ env.vcpkg_path }}/scripts/buildsystems/vcpkg.cmake" `
-DBOOST_ROOT="${{ env.boost_path }}" `
-DLibtorrentRasterbar_DIR="${{ env.libtorrent_path }}/install/lib/cmake/LibtorrentRasterbar" `
-DMSVC_RUNTIME_DYNAMIC=ON `
-DTESTING=ON `
-DVCPKG_TARGET_TRIPLET=x64-windows-static-md-release `
-DVERBOSE_CONFIGURE=ON `
--graphviz=build/target_graph.dot
cmake --build build --target qbt_update_translations
cmake --build build
cmake --build build --target check
- name: Prepare build artifacts
run: |
mkdir upload
mkdir upload/qBittorrent
copy build/qbittorrent.exe upload/qBittorrent
copy build/qbittorrent.pdb upload/qBittorrent
copy dist/windows/qt.conf upload/qBittorrent
# runtimes
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Core.dll" upload/qBittorrent
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Gui.dll" upload/qBittorrent
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Network.dll" upload/qBittorrent
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Sql.dll" upload/qBittorrent
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Svg.dll" upload/qBittorrent
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Widgets.dll" upload/qBittorrent
copy "${{ env.Qt_ROOT_DIR }}/bin/Qt6Xml.dll" upload/qBittorrent
mkdir upload/qBittorrent/plugins/iconengines
copy "${{ env.Qt_ROOT_DIR }}/plugins/iconengines/qsvgicon.dll" upload/qBittorrent/plugins/iconengines
mkdir upload/qBittorrent/plugins/imageformats
copy "${{ env.Qt_ROOT_DIR }}/plugins/imageformats/qico.dll" upload/qBittorrent/plugins/imageformats
copy "${{ env.Qt_ROOT_DIR }}/plugins/imageformats/qsvg.dll" upload/qBittorrent/plugins/imageformats
mkdir upload/qBittorrent/plugins/platforms
copy "${{ env.Qt_ROOT_DIR }}/plugins/platforms/qwindows.dll" upload/qBittorrent/plugins/platforms
mkdir upload/qBittorrent/plugins/sqldrivers
copy "${{ env.Qt_ROOT_DIR }}/plugins/sqldrivers/qsqlite.dll" upload/qBittorrent/plugins/sqldrivers
mkdir upload/qBittorrent/plugins/styles
copy "${{ env.Qt_ROOT_DIR }}/plugins/styles/qmodernwindowsstyle.dll" upload/qBittorrent/plugins/styles
mkdir upload/qBittorrent/plugins/tls
copy "${{ env.Qt_ROOT_DIR }}/plugins/tls/qschannelbackend.dll" upload/qBittorrent/plugins/tls
# cmake additionals
mkdir upload/cmake
copy build/compile_commands.json upload/cmake
copy build/target_graph.dot upload/cmake
mkdir upload/cmake/libtorrent
copy ${{ env.libtorrent_path }}/build/compile_commands.json upload/cmake/libtorrent
- name: Upload build artifacts
uses: actions/upload-artifact@v4
with:
name: qBittorrent-CI_Windows-x64_libtorrent-${{ matrix.libt_version }}
path: upload
- name: Install NSIS
uses: repolevedavaj/install-nsis@265e893c16602d8ccfb0a9ca44173b084078917c # v1.0.3
with:
nsis-version: '3.11'
- name: Create installer
run: |
7z x -o"dist/windows/" "dist/windows/NSISPlugins.zip"
makensis /DQBT_DIST_DIR="../../upload/qBittorrent" /WX dist/windows/qbittorrent.nsi
- name: Upload installer
uses: actions/upload-artifact@v4
with:
name: qBittorrent-CI_Windows-x64_libtorrent-${{ matrix.libt_version }}-setup
path: dist/windows/qbittorrent_*_setup.exe

118
.github/workflows/coverity-scan.yaml vendored Normal file
View File

@@ -0,0 +1,118 @@
name: Coverity Scan
on:
schedule:
- cron: '0 0 1 * *' # Monthly (1st day of month at midnight)
workflow_dispatch: # Mainly for testing. Don't forget the Coverity usage limits.
permissions: {}
jobs:
coverity_scan:
name: Scan
runs-on: ubuntu-latest
strategy:
matrix:
libt_version: ["2.0.11"]
qbt_gui: ["GUI=ON"]
qt_version: ["6.5.2"]
env:
boost_path: "${{ github.workspace }}/../boost"
coverity_path: "${{ github.workspace }}/../coverity"
libtorrent_path: "${{ github.workspace }}/../libtorrent"
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
persist-credentials: false
- name: Install dependencies
run: |
sudo apt update
sudo apt install \
build-essential cmake ninja-build \
libssl-dev libxkbcommon-x11-dev libxcb-cursor-dev zlib1g-dev
- name: Install boost
env:
BOOST_MAJOR_VERSION: "1"
BOOST_MINOR_VERSION: "86"
BOOST_PATCH_VERSION: "0"
run: |
boost_url="https://archives.boost.io/release/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/source/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
boost_url2="https://sourceforge.net/projects/boost/files/boost/${{ env.BOOST_MAJOR_VERSION }}.${{ env.BOOST_MINOR_VERSION }}.${{ env.BOOST_PATCH_VERSION }}/boost_${{ env.BOOST_MAJOR_VERSION }}_${{ env.BOOST_MINOR_VERSION }}_${{ env.BOOST_PATCH_VERSION }}.tar.gz"
set +e
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."; _exitCode="$?"
if [ "$_exitCode" -ne "0" ]; then
curl -L -o "${{ runner.temp }}/boost.tar.gz" "$boost_url2"
tar -xf "${{ runner.temp }}/boost.tar.gz" -C "${{ github.workspace }}/.."; _exitCode="$?"
fi
mv "${{ github.workspace }}/.."/boost_* "${{ env.boost_path }}"
- name: Install Qt
uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt_version }}
archives: icu qtbase qtdeclarative qtsvg qttools
cache: true
- name: Install libtorrent
run: |
git clone \
--branch v${{ matrix.libt_version }} \
--depth 1 \
--recurse-submodules \
https://github.com/arvidn/libtorrent.git \
${{ env.libtorrent_path }}
cd ${{ env.libtorrent_path }}
cmake \
-B build \
-G "Ninja" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_CXX_STANDARD=20 \
-DBOOST_ROOT="${{ env.boost_path }}" \
-Ddeprecated-functions=OFF
cmake --build build
sudo cmake --install build
- name: Download Coverity Build Tool
run: |
curl \
-L \
-d "token=${{ secrets.COVERITY_SCAN_TOKEN }}&project=qbittorrent%2FqBittorrent" \
-o "${{ runner.temp }}/coverity_tool.tgz" \
"https://scan.coverity.com/download/linux64"
mkdir -p ${{ env.coverity_path }}
tar \
-xf "${{ runner.temp }}/coverity_tool.tgz" \
-C "${{ env.coverity_path }}" \
--strip-components 1
- name: Build qBittorrent
run: |
cmake \
-B build \
-G "Ninja" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DBOOST_ROOT="${{ env.boost_path }}" \
-DVERBOSE_CONFIGURE=ON \
-D${{ matrix.qbt_gui }}
PATH="${{ env.coverity_path }}/bin:$PATH" \
cov-build \
--dir cov-int \
cmake --build build
- name: Submit the result to Coverity Scan
run: |
tar -caf qbittorrent.xz cov-int
curl \
--form token="${{ secrets.COVERITY_SCAN_TOKEN }}" \
--form email=sledgehammer999@qbittorrent.org \
--form file=@qbittorrent.xz \
--form version="$(git rev-parse --short HEAD)" \
--form description="master" \
https://scan.coverity.com/builds?project=qbittorrent%2FqBittorrent

View File

@@ -0,0 +1,13 @@
#!/bin/sh
# this file is called from AppRun so 'root_dir' will point to where AppRun is
root_dir="$(readlink -f "$(dirname "$0")")"
# Insert the default values because after the test we prepend our path
# and it will create problems with DEs (eg KDE) that don't set the variable
# and rely on the default paths
if [ -z "${XDG_DATA_DIRS}" ]; then
XDG_DATA_DIRS="/usr/local/share/:/usr/share/"
fi
export XDG_DATA_DIRS="${root_dir}/usr/share:${XDG_DATA_DIRS}"

View File

@@ -0,0 +1,6 @@
[Desktop Entry]
Name=qBittorrent
Exec=qbittorrent-nox %U
Icon=qbittorrent
Type=Application
Categories=Network

View File

@@ -0,0 +1,14 @@
name: "CodeQL config for C++"
queries:
- uses: security-and-quality
query-filters:
- exclude:
id: cpp/commented-out-code
- exclude:
id: cpp/include-non-header
- exclude:
id: cpp/loop-variable-changed
- exclude:
id: cpp/useless-expression

11
.github/workflows/helper/codeql/js.yaml vendored Normal file
View File

@@ -0,0 +1,11 @@
name: "CodeQL config for Javascript"
paths-ignore:
- "**/lib/*"
queries:
- uses: security-and-quality
query-filters:
- exclude:
id: js/superfluous-trailing-arguments

View File

@@ -0,0 +1,20 @@
# https://github.com/crate-ci/typos/blob/master/docs/reference.md
# https://github.com/crate-ci/typos/blob/master/docs/design.md#identifiers-and-words
# try adding to `identifiers` list first, if doesn't work then `words` list
[default.extend-identifiers]
additionals = "additionals"
caf = "caf"
curren = "curren"
FO = "FO"
ket = "ket"
Q_INVOKABLE = "Q_INVOKABLE"
switchs = "switchs"
ths = "ths"
[default.extend-words]
BA = "BA"
helo = "helo"
Pn = "Pn"
UIU = "UIU"

View File

@@ -0,0 +1,95 @@
#!/usr/bin/env python3
# A pre-commit hook for checking items order in grid layouts
# Copyright (C) 2024 Mike Tzou (Chocobo1)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# In addition, as a special exception, the copyright holders give permission to
# link this program with the OpenSSL project's "OpenSSL" library (or with
# modified versions of it that use the same license as the "OpenSSL" library),
# and distribute the linked executables. You must obey the GNU General Public
# License in all respects for all of the code used other than "OpenSSL". If you
# modify file(s), you may extend this exception to your version of the file(s),
# but you are not obligated to do so. If you do not wish to do so, delete this
# exception statement from your version.
from collections.abc import Callable, Sequence
from typing import Optional
import argparse
import re
import xml.etree.ElementTree as ElementTree
import sys
def traversePostOrder(root: ElementTree.Element, visitFunc: Callable[[ElementTree.Element], None]) -> None:
stack = [(root, False)]
while len(stack) > 0:
(element, visit) = stack.pop()
if visit:
visitFunc(element)
else:
stack.append((element, True))
stack.extend((child, False) for child in reversed(element))
def modifyElement(element: ElementTree.Element) -> None:
def getSortKey(e: ElementTree.Element) -> tuple[int, int]:
if e.tag == 'item':
return (int(e.attrib['row']), int(e.attrib['column']))
return (-1, -1) # don't care
if element.tag == 'layout' and element.attrib['class'] == 'QGridLayout' and len(element) > 0:
element[:] = sorted(element, key=getSortKey)
# workaround_2a: ElementTree will unescape `&quot;` and we need to escape it back
if element.tag == 'string' and element.text is not None:
element.text = element.text.replace('"', '&quot;')
def main(argv: Optional[Sequence[str]] = None) -> int:
parser = argparse.ArgumentParser()
parser.add_argument('filenames', nargs='*', help='Filenames to check')
args = parser.parse_args(argv)
for filename in args.filenames:
with open(filename, 'r+') as f:
orig = f.read()
root = ElementTree.fromstring(orig)
traversePostOrder(root, modifyElement)
ElementTree.indent(root, ' ')
# workaround_1: cannot use `xml_declaration=True` since it uses single quotes instead of Qt preferred double quotes
ret = f'<?xml version="1.0" encoding="UTF-8"?>\n{ElementTree.tostring(root, 'unicode')}\n'
# workaround_2b: ElementTree will turn `&quot;` into `&amp;quot;`, so revert it back
ret = ret.replace('&amp;quot;', '&quot;')
# workaround_3: Qt prefers no whitespaces in self-closing tags
ret = re.sub('<(.+) +/>', r'<\1/>', ret)
if ret != orig:
print(f'Tip: run this script to apply the fix: `python {__file__} {filename}`', file=sys.stderr)
f.seek(0)
f.write(ret)
f.truncate()
return 0
if __name__ == '__main__':
sys.exit(main())

View File

@@ -0,0 +1,72 @@
#!/usr/bin/env python3
# A pre-commit hook for detecting problematic <translation> tags
# Copyright (C) 2021 Mike Tzou (Chocobo1)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# In addition, as a special exception, the copyright holders give permission to
# link this program with the OpenSSL project's "OpenSSL" library (or with
# modified versions of it that use the same license as the "OpenSSL" library),
# and distribute the linked executables. You must obey the GNU General Public
# License in all respects for all of the code used other than "OpenSSL". If you
# modify file(s), you may extend this exception to your version of the file(s),
# but you are not obligated to do so. If you do not wish to do so, delete this
# exception statement from your version.
from collections.abc import Sequence
from typing import Optional
import argparse
import re
import sys
def main(argv: Optional[Sequence[str]] = None) -> int:
parser = argparse.ArgumentParser()
parser.add_argument('filenames', nargs='*', help='Filenames to check')
args = parser.parse_args(argv)
error_msg = ""
regex = re.compile(r"\s*</translation>")
for filename in args.filenames:
line_counter = 1
error_buffer = ""
with open(filename) as file:
try:
for line in file:
if (match := regex.match(line)) is not None:
error_buffer += str(f"Defect file: \"{filename}\"\n"
f"Line: {line_counter}\n"
f"Column span: {match.span()}\n"
f"Part: \"{match.group()}\"\n\n")
line_counter += 1
except UnicodeDecodeError:
# not a text file, skip
continue
error_msg += error_buffer
if len(error_msg) > 0:
print(error_msg)
return 1
return 0
if __name__ == '__main__':
sys.exit(main())

26
.github/workflows/stale_bot.yaml vendored Normal file
View File

@@ -0,0 +1,26 @@
name: Stale bot
on:
schedule:
- cron: '0 0 * * *'
permissions: {}
jobs:
stale:
runs-on: ubuntu-latest
permissions:
pull-requests: write
steps:
- name: Mark and close stale PRs
uses: actions/stale@v9
with:
stale-pr-message: "This PR is stale because it has been 60 days with no activity. This PR will be automatically closed within 7 days if there is no further activity."
close-pr-message: "This PR was closed because it has been stalled for some time with no activity."
days-before-stale: -1 # avoid marking issues
days-before-pr-stale: 60
days-before-close: -1 # avoid closing issues
days-before-pr-close: 7
exempt-all-pr-assignees: true # avoid stale for all PR with assignees
exempt-all-pr-milestones: true # avoid stale for all PR with milestones
operations-per-run: 200

43
.gitignore vendored Normal file
View File

@@ -0,0 +1,43 @@
.vscode/
src/gui/geoip/GeoIP.dat
src/gui/geoip/GeoIP.dat.gz
src/qbittorrent
src/qbittorrent-nox
src/release
src/debug
src/base/version.h
CMakeLists.txt.user*
qbittorrent.pro.user*
conf.pri
Makefile*
*.pyc
*.log
# Compiled object files
*.o
*.pdb
*.exe
*.dll
# Generated MOC, resource and UI files
moc_*.cpp
moc_*.h
qrc_*.cpp
ui_*.h
*.moc
*.qm
.DS_Store
.qmake.stash
src/qbittorrent.app
*.dmg
#Autotools junk
aclocal.m4
autom4te.cache/*
config.status
src/icons/qbt-theme/build-icons/node_modules/
src/icons/skin/build-icons/node_modules/
src/icons/skin/build-icons/icons/*.png
# CMake build directory
build/

110
.pre-commit-config.yaml Normal file
View File

@@ -0,0 +1,110 @@
repos:
- repo: local
hooks:
- id: check-grid-order
name: Check items order in grid layouts
entry: .github/workflows/helper/pre-commit/check_grid_items_order.py
language: script
files: \.ui$
- id: check-translation-tag
name: Check newline characters in <translation> tag
entry: .github/workflows/helper/pre-commit/check_translation_tag.py
language: script
exclude: |
(?x)^(
src/lang/.*
)$
types_or:
- ts
- repo: https://github.com/pre-commit/pre-commit-hooks.git
rev: v5.0.0
hooks:
- id: check-json
name: Check JSON files
- id: check-yaml
name: Check YAML files
- id: fix-byte-order-marker
name: Check file encoding (UTF-8 without BOM)
exclude: |
(?x)^(
src/base/unicodestrings.h
)$
- id: mixed-line-ending
name: Check line ending character (LF)
args: ["--fix=lf"]
exclude: |
(?x)^(
src/webui/www/private/css/lib/.* |
src/webui/www/private/scripts/lib/.* |
dist/windows/license.txt |
test/testdata/crlf.txt
)$
- id: end-of-file-fixer
name: Check trailing newlines
exclude: |
(?x)^(
configure |
src/webui/www/private/css/lib/.* |
src/webui/www/private/scripts/lib/.* |
test/testdata/crlf.txt
)$
exclude_types:
- svg
- ts
- id: trailing-whitespace
name: Check trailing whitespaces
exclude: |
(?x)^(
src/webui/www/private/css/lib/.* |
src/webui/www/private/scripts/lib/.*
)$
exclude_types:
- ts
- repo: https://github.com/codespell-project/codespell.git
rev: v2.4.0
hooks:
- id: codespell
name: Check spelling (codespell)
args: ["--ignore-words-list", "additionals,categor,curren,fo,ist,ket,notin,searchin,sectionin,superseeding,te,ths"]
exclude: |
(?x)^(
.*\.desktop |
.*\.qrc |
Changelog |
dist/windows/installer-translations/.* |
src/base/3rdparty/.* |
src/searchengine/nova3/socks.py |
src/webui/www/private/scripts/lib/.*
)$
exclude_types:
- ts
- repo: https://github.com/crate-ci/typos.git
rev: v1.29.4
hooks:
- id: typos
name: Check spelling (typos)
args: ["--config", ".github/workflows/helper/pre-commit/.typos.toml"]
exclude: |
(?x)^(
.*\.asc |
.*\.desktop |
.*\.qrc |
\.pre-commit-config\.yaml |
Changelog |
dist/windows/installer-translations/.* |
src/base/3rdparty/.* |
src/searchengine/nova3/socks.py |
src/webui/www/private/scripts/lib/.*
)$
exclude_types:
- svg
- ts

24
.tx/config Normal file
View File

@@ -0,0 +1,24 @@
[main]
host = https://www.transifex.com
[o:sledgehammer999:p:qbittorrent:r:qbittorrent_v51x]
file_filter = src/lang/qbittorrent_<lang>.ts
source_file = src/lang/qbittorrent_en.ts
source_lang = en
type = QT
minimum_perc = 23
lang_map = pt: pt_PT, zh: zh_CN
[o:sledgehammer999:p:qbittorrent:r:qbittorrent_webui_v51x]
file_filter = src/webui/www/translations/webui_<lang>.ts
source_file = src/webui/www/translations/webui_en.ts
source_lang = en
type = QT
minimum_perc = 23
lang_map = pt: pt_PT, zh: zh_CN
[o:sledgehammer999:p:qbittorrent:r:qbittorrentdesktop_master]
source_file = dist/unix/org.qbittorrent.qBittorrent.desktop
source_lang = en
type = DESKTOP
minimum_perc = 23

92
5B7CC9A2.asc Normal file
View File

@@ -0,0 +1,92 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2
mQINBFcNIIwBEACpGHvHW9ku7rwCSc2Dv4gh3MO3HPoP7Ba4RiEKwa7SCbPzc0DL
JypV4gNfnrpiO7bWVh5v+otbZTkQeNXWbx6hDUa2e5GCCuJifIu3PxpmMcNJFvvF
nk5QRf6dtz4Sm2x6joYprvsEUjyk+wHC016/0g7yhc/w0sclXlpKK+8Pl5DFrf5C
i5uljy3oJgl54D2yYAvxu3BrdTVKhLVYADUf1Fl3b5pV7VJwr+9wGuTqkORe1rpi
9NGWXUaTmKF8+XAJxlbYIUOZQpQ02clFxz0T7o/+m74N8tK9j7g8H2Q3QwtKi0q1
gI48LqI/EuZHIaRz/3pEVISlIpWzGqBL/G4I/UtzJLHyvySsqWXAKllKpk97XX77
XxFy3VL3fR7o4IohAj5fD083X8tuBIP2dxmHzxHTWveKBlEV6C4MdtVRow8ia3lu
RKLz6PF0hBBpebAP4MWAN8cy4ePBCe9BvyI2+3tPgqtlC2tEZLnRru6mtagPi4sj
Yo/iFkSQdTXrxeyrMJh161gsWl16JeAfz4Dq8IBoUA1hXIjfM9FcIv1rCY6Y8JwS
TtWMGYtzIcqE71wZxqnJuyFZkgC14NDTLgUwLf8XJOTWlMW9CY+tStjjw+sNoIPf
p7YQCmss4p5J8flnxH4xJ8ogOHxENidA+Z/J9mtGjxXIXHavPlO3IEg/DwARAQAB
tHFzbGVkZ2VoYW1tZXI5OTkgKFVzZWQgZm9yIHNpZ25pbmcgcUJpdHRvcnJlbnQg
c291cmNlIHRhcmJhbGxzIGFuZCBiaW5hcmllcyB2Mi4pIDxzbGVkZ2VoYW1tZXI5
OTlAcWJpdHRvcnJlbnQub3JnPokCNwQTAQgAIQUCVw0gjAIbAwULCQgHAgYVCAkK
CwIEFgIDAQIeAQIXgAAKCRBuSi0CW3zJojB2D/0bKlelRDQDtWzfRyxrdhe5pgAt
x1AsN/Cl7h8zlbAw38bL+jQ2/GmtzwzEqPfQc7IFnbeg0PZ58p7Hikj9h6JEhkyA
1qekkriclUmblEwDne3TjPixqgoBfNcDQu74dT08XpM8auFQo31/jJ104903o0O5
+CPOPn2KTdwpcSpwAVIj/3H96gZWegJDNpdByJUVbzYCt1erJ6I0ZURKhzU1VTJj
ZdEGB2YsvYpt5rsi41IYZZG33jMsPxSDDNJ/MiLXxkn08ZawNET6fnkEJJ37n9Pw
82lTZjFEFU+KTMT7dNjIejWCRgHVLgW8sO2lCPqMiFfWymD/N3sFpBO+UI86y5ds
hfGFAWcgSq9pVjuW4sbX3PntBnoNd+geDD1Ic4rP3jHRe5HuYGhtHO6xv/r7HeY5
HiShCTSSDBJqFmhfjrCo0nISKnzyxgO/rY9vFlwXsKkTyL7s53ONkjwK34WmGnya
tXdjBWShzAiTfF5hephfBSszmoBG2C8Jcu6P5n4buBY4RCsEa+6jE0R1vCtmpVwx
WrXOeN2kGYMpAkPK1L69Le0FofgUDKlaFMv7KRl4R367xNRukYrsKwVlontJ+Y72
X5t1BeRn8VSp0IzhssNXM8a4bTE8lvs889DOS2vgWEHIi0iyIesJYWPs4AKUw4rG
EDwWxtTS0a7Rfx3DxLRWc2xlZGdlaGFtbWVyOTk5IChVc2VkIGZvciBzaWduaW5n
IGdpdCBjb21taXRzL3RhZ3MvZXRjLikgPGhhbW1lcmVkOTk5QHFiaXR0b3JyZW50
Lm9yZz6JAh8EMAEIAAkFAlhie1ICHQAACgkQbkotAlt8yaILIhAAp25o1BbUG2Zk
At3cSrTFnZSCA7nEygbSUv1Uek33JZfY0Apw5qEM8lQCMZk+mhdrSQCYUJcQlruN
zJcJf4CH+VGE23xkI3Kf0nGp9Cjn/q6b1hLIPe5rimvw5pTAejFtebcYY/ZJIB8Z
H1ebuzfqBZ/9k7eYTarZ/ZsgG8YptB0RXBQWOMaSEKwdeo2m7HXHgK3blQiqbuJJ
uyPbid01Wus4AVN47/FKgDNswPs8irYZsu5yakgpi2KLycGDtSiN5XFHI4xbC0zM
srR7Cz0/fC+klhGcuxbw0V0It7UUIitgCcTPHXkukUU8i2+AGMyKa1HjchsXDdLg
DIs6KIurp2ve7znKOz7h1aX8cOBmB/QYeYAx9jRRkePMIRT8V1lRwfvJlJxx1+G3
e2gJLjqTN8a08KHHjdY/S0ZFERxSlmOym2uf/y6di1ipDPxo8xvDuS5kDbdZLC0t
XijlsH8ONK27KNuWhucG8zHzKQvnPw2qN06SZq4FjbSmAkkuYs56heLEXMzFr75k
SE8rUoQQ+ABG9gU46GEvKlZxqSwXgGnb1X6K7h8svjMh/NlAU358p8Sra4Ru5tz4
jUu9MoVEw5Lbjcrsnp6/4Kk1Q2ckBNt43nv8/+C7NsC3xi6BrOInuaKHZ4QsTuzJ
m1/A4zlKRnUi6T98DXfIYnNuV9NSmAWJAjkEEwEIACMFAlhiemMCGwMHCwkIBwMC
AQYVCAIJCgsEFgIDAQIeAQIXgAAKCRBuSi0CW3zJor6yD/9N2U0INx0nYpGkmvah
yVG/vw2S6hhKK+03AN+RrtddNRg4aBf/gmOvRWQhAmFnXOBA7fO09wgcljaV5tVb
MYyYZvHhK0o2/sli2p/M5N8ZxchRHypjxUSEyG9ZQ06QG5DVhh4HtM8nIN+UcwTV
C5QjyoWZvHf+tNroyFeh7zT+w4kX1VxgynTQr5LGdYsrVA3CFyT3zsBWV3dMae23
22CHOirsBBLwairHUsWW+BdThT3MkKYpTEV0jkH4OyAXhJYcS5IjjtKQ8UpZE9dw
f4saJ0TnXNe7goPRZtH7UjPwfVbtYK4y8QklWUTRxgoBxNwSC5X7Flg+3xXxE/VU
U4cehyRkH64i7MJDoFkqh5JtjkgIz+kuTTXb7xR0Wf+JXrGMybZTR8xth2TEMC20
1FT5L5+0vH1WRzL7bhlaU3EXyCnoH8sDvMEClZbibbew+rf7fC3tFU41ohUT0HDl
zlyfVjRvBHWMTgfpWKBV2m/qP941xTJ9VHxOlAB02XKUZYwFt07CpH+yjMOCOzA4
cTPBD3mGRuft0V0BJ8bA5bcTly/GBciRX0Y5oIeHZGgq2czb0sywSYT6mPoQMFNM
B+Cwr4pm90r1DMMfW518onF2itwyN/Id0FsWDhsLJHKluBJw52C3OnxCuToVutTm
xntqpPVv62LaeVeWQqxIieTJErRQc2xlZGdlaGFtbWVyXzk5OSAoVXNlZCBmb3Ig
c2lnbmluZyBnaXQgY29tbWl0cy90YWdzL2V0YykgPGhhbW1lcmVkOTk5QGdtYWls
LmNvbT6JAjkEEwEIACMFAlhifeICGwMHCwkIBwMCAQYVCAIJCgsEFgIDAQIeAQIX
gAAKCRBuSi0CW3zJolcCD/9xPBNEkFtnhTW89th0TFZnB5oykCQjyefquvQs8KWT
C92/1VizHi4ZxDehHWP9IKVWT3ZJthj5ZXBSedyl1tHnwkyrUYBW9roQwtDWPncK
pXl/HsE6p3q6EIus+g6YJo4UvYachJFAZATZp1WDBPIswziHGzaL0tndFWZuVM8V
QD0tfPQsS1qCDVv6+B1JWZDnA1JzdSG/uzPhL95q/ff6JmNbfSAVedK2PyqYshnC
KWBx6Yna/0ColBuDFho8+bDuHPQcM35xyjPosVD7moXQiY4yMAJ+VzwEBaCFleI0
RBWw8/+qyoFqfIKwdq8G+7I9LjWpBiN2+uQBZ+OAvsMWyRShLopxt3JluPTtL6xb
Ca6dglOdlaOS/A6FK7u05k/8kQMDS5Jq2/rpfTPRl1/weCaJZgfRIBosk1Mon/pR
p1zd0abM4t7BcGQpwSkKAmqlKCrWf886EFQT0CJTBo8q7pzgpVraWWPVsmAOdkfU
YcKBgz1A2uMSAxypkSzaDZkIVj6I7gwiGk7IMYx1OK7Ev46h/x4Z7kgT0y3DYYOq
ggVEKQ+15Krn7bZ35s8vbZdfnVKPSXdCC8jkIMBmGmRX6cgZZ3OXZlrrHht5icgJ
5Z2d1M4JUoEZVUr2xNZkkaMk01NAIpGgKvIS6yHuj6vE4GMJ+A/qEW6J60/3YHRe
0bkCDQRXDSCMARAAqMIVJizEJp205c546IN75xeYiFszNXcs3768IY8bOoWj+rTw
t2wIwtL/3O5K2dG79CSt2H5o6BPKmq43tOO60YW3Yk3m9BB/gnAVqk0QOPr5O8+y
eBzdElU8CZh6y6zZMWugSkNmTDm6jZzPhgNjcjrit/dl9+0DGqJQcqoD8WzEWNcW
rMHVz9cDewnLSVkwR758mZMaIiL7R10MZ++tNrC0j69UINqx+9z1r1J07+NNnxqS
TxVRcbjPYtM9E+tUiVFS2HPWN9ShVDkBAEdoWh90qzRaMiFl2NGNGOD1iHx/xr06
RMeGEEXt2vhSlhfMW2YQW+UD2jzlFbARf53v39MUKKscGuIpBhxGw3JCq4l6qLW/
bDkgnoXlOhZDmhQm6OpsjAyk9IEdd3ponSc7yYD3mUkJKR9eTaALD5t6TQGyNHak
b4UfoXtE2RR78cbPlLIwag7eQ8GsNA+dfjowmOZdojx3ROsHZdGQwb0YFLjuKAus
A3TY+lCfbS6kzE2iI2DuaW+3dICcLrYuibbVb0CBNHyD+8KEtczdur/wm0lhqyVJ
kGyZKZT8C2cPxywKgy1Rn6F8Yfmj0Lna3nvtaZu0ZUS4/8Lit5PcOso1lSmYBuD6
yq+GEAMCnUmn1Pm8eZRMlxxQuTPvyJKQrRDhbtAAr472MSnoJKlS4SfaUF0AEQEA
AYkCHwQYAQgACQUCVw0gjAIbDAAKCRBuSi0CW3zJomZDD/9IJmzd5hiEzntlp84p
yIJcfyIRe4KImvldAy6T02OSIbF1HzCNnwmqIPob6MOdMZ+KNwMK0htRkrRr/zM0
34+lBiWKZt+tVYHu49ioTYXEjAc5qDJE09Sq7HceQnhgE48f1n54XGT5G2w5gw+/
a8Qn1SceE44VwXafL3E1gKaOrrsb1UH/AJhp+W4VMu+7bLXu7h1tN6v2PhvCYvBt
3zyy8Q8xfJ2x7/D1lbF8ATJAiZ/km9x5bRm7OGRliVYaUe1nyR42fZOj3CBmAR0+
lZLgjriqdMXrs+qlBbrmAhkn0XPQXAeaPifKoKIGDAUWIsqDHqM7imMGT+MR9APf
Sw8M4enOJWL+HnKpVBEARCEDpaFpJ3u7QRucFybpEhvIymoNftyw+urId2Eg2K33
NypeZo3M1K2LC65f2Ta7f/sZcIDUTbgW+m334fgVl1KptDA5DX3U9lTci7mi4uPu
AFtbWrB1di4jYrxXYuzFm5g4xTb0Hw3kYIB6WXF+I7i0JaGOTHxPC5X5lIAZrYrk
xh+1n1Y1CY+TC8JcTzwORJIbFFm9tD/BHXa4849k4DVvFYCZkhq+/56FKZfoVByh
B+x+2GaMlsBm1uPniO4lAakFPpIi0kaap4UVayQ/7ak+BhscAIHZUy6NtgZkuvW3
xdpwp07LYo2ilhMI8RnzmtoRmg==
=UBeB
-----END PGP PUBLIC KEY BLOCK-----

138
AUTHORS
View File

@@ -1,7 +1,11 @@
Author:
Current maintainer:
* Sledgehammer999 <sledgehammer999@qbittorrent.org>
Original author:
* Christophe Dumez <chris@qbittorrent.org>
Contributors:
* Vladimir Golovnev <glassez@yandex.ru>
* Stefanos Antaris <santaris@csd.auth.gr>
* Mohammad Dib <mdib@qbittorrent.org>
* Mirco Chinelli <infinity89@fastwebmail.it>
@@ -10,92 +14,124 @@ Contributors:
* Grigis Gaëtan <cipher16@gmail.com>
* Christian Kandeler <zambesi@users.sourceforge.net>
* Silvan Scherrer <silvan.scherrer@aroa.ch>
* Nick Tiskov <daymansmail@gmail.com>
Code from other projects:
* files src/qtsingleapp/* src/lineedit/*
* files src/app/qtlocalpeer/*
copyright: Nokia Corporation
license: LGPL
license: mixed
* files src/ico.cpp src/ico.h
copyright: Malte Starostik <malte@kde.org>
license: LGPL
* files src/gui/lineedit.*
copyright: Trolltech ASA <info@trolltech.com>
license: custom
* files src/search_engine/socks.py
copyright: Dan Haim <negativeiq@users.sourceforge.net>
license: BSD
* files src/webui/www/private/css/lib/vanillaSelectBox.css src/webui/www/private/scripts/lib/vanillaSelectBox.js
copyright: Philippe Meyer <pmg.meyer@gmail.com>
license: MIT
Images Authors:
* files: src/Icons/*.png
copyright: Gnome Icon Theme
license: GPLv2
url: http://ftp.acc.umu.se/pub/GNOME/sources/gnome-icon-theme
* files: src/icons/qbittorrent-tray.svg
copyright: Provided by HVS <hvs linuxmail org> (raster first proposal) and Atif Afzal(@atfzl github) <atif5801@gmail.com> (vectorized and modified)
license: GPLv2+
* files: src/oxygen/*.png
copyright: Oxygen Icon Theme (KDE)
license: LGPL
url: http://www.oxygen-icons.org
* files: src/qbittorrent_file.ico src/icons/fileicon.svg
copyright: 'unknown.svg' (LGPLv3+) from Oxygen Icon Theme was used as base which was slightly modified and 'qbittorrent-tray.svg' (GPLv2+) was overlaid above it.
license: GPLv3+
* files: src/Icons/flags/*.png
copyright: Mark James <mjames@gmail.com>
license: Public Domain
url: http://www.famfamfam.com
* files: src/icons/flags/*.svg
copyright: lipis/flag-icons
license: MIT
url: https://github.com/lipis/flag-icons/
* files: src/Icons/skin/*.png
files: src/menuicons/YYxYY/*.png
copyright: Mateusz Tobola <tobejodok@qbittorrent.org>
license: GPLv2
* file: src/Icons/skin/tabs.gif
* file: src/webui/www/private/images/tabs.gif
copyright: Greg Houston <gregory.houston@gmail.com>
license: MIT
* file: src/search_engine/engines/btjunkie.png
copyright: Downloaded from btjunkie.org
* file: src/icons/qbittorrent-tray-dark.svg src/icons/qbittorrent-tray-light.svg
copyright: Daniel Eguren <deguren@gmail.com>
modified by: now-im <now-im.d8gcu@simplelogin.com> (@now-im)
license: LGPL
* file: src/search_engine/engines/isohunt.png
copyright: Downloaded from isohunt.com
* folder: src/icons/
files: application-rss+xml.svg, application-x-mswinurl.svg, connected.svg, disconnected.svg, checked-completed.svg, configure.svg,
edit-copy.svg, edit-rename.svg, folder-documents.svg, folder-new.svg, folder-remote.svg, go-bottom.svg, go-down.svg, go-top.svg,
go-up.svg, hash.svg, inode-directory.svg, insert-link.svg, kt-magnet.svg, media-playback-pause.svg, media-playback-start.svg,
media-seek-forward.svg, network-connect.svg, object-locked.svg, queued.svg, ratio.svg, reannounce.svg, slow_off.svg, slow.svg,
speedometer.svg, system-log-out.svg, tags.svg, task-complete.svg, task-reject.svg, tracker-error.svg, tracker-warning.svg,
trackerless.svg, trackers.svg, view-categories.svg
copyright: now-im <now-im.d8gcu@simplelogin.com> (@now-im) modified from La-Capitaine icon theme (https://github.com/keeferrourke/la-capitaine-icon-theme)
license: GPLv3+
* file: src/search_engine/engines/mininova.png
copyright: Downloaded from mininova.org
* folder: src/icons/
files: application-exit.svg, collapse.svg, dialog-warning.svg, edit-find-user.svg, edit-find.svg, filter-all.svg, firewalled.svg,
help-about.svg, help-contents.svg, ip-blocked.svg, list-remove.svg, loading.svg, mail-folder-inbox.svg, name.svg, network-server.svg,
office-chart-line.svg, plugins.svg, preferences-desktop.svg, preferences-other.svg, preferences-system-network.svg, security-high.svg,
security-low.svg, set-location.svg, torrent-creator.svg, user-group-delete.svg, user-group-new.svg, view-preview.svg, view-refresh.svg,
view-statistics.svg, wallet-open.svg, webuiapplication-exit.svg, collapse.svg, dialog-warning.svg, edit-find-user.svg, edit-find.svg,
filter-all.svg, firewalled.svg, help-about.svg, help-contents.svg, ip-blocked.svg, list-remove.svg, loading.svg, mail-folder-inbox.svg,
name.svg, network-server.svg, office-chart-line.svg, plugins.svg, preferences-desktop.svg, preferences-other.svg,
preferences-system-network.svg, security-high.svg, security-low.svg, set-location.svg, torrent-creator.svg, user-group-delete.svg,
user-group-new.svg, view-preview.svg, view-refresh.svg, view-statistics.svg, wallet-open.svg, webui.svg
copyright: now-im <now-im.d8gcu@simplelogin.com> (@now-im) modified from Ionicons icon theme (https://github.com/ionic-team/ionicons)
license: MIT
* file: src/search_engine/engines/piratebay.png
copyright: Downloaded from thepiratebay.org
* folder: src/icons/
files: force-recheck.svg
copyright: now-im <now-im.d8gcu@simplelogin.com> (@now-im) modified from Font-Awesome icon theme (https://github.com/FortAwesome/Font-Awesome)
license: CC BY 4.0 License
* file: src/search_engine/engines/torrentreactor.png
copyright: Downloaded from torrentreactor.net
* folder: src/icons/
files: downloading.svg, edit-clear.svg, error.svg, filter-active.svg, filter-inactive.svg, filter-stalled.svg, kt-set-max-download-speed.svg,
kt-set-max-upload-speed.svg, list-add.svg, preferences-web-browser-cookies.svg, stalledDL.svg, stalledUP.svg
copyright: now-im <now-im.d8gcu@simplelogin.com> (@now-im)
license: BSD 2-Clause License
Translations authors:
* files: src/lang/*.ts
* file: src/icons/qBittorrent.desktop
copyright:
- Arabic: SDERAWI (abz8868@msn.com) and sn51234 (nesseyan@gmail.com)
- Brazilian: Nick Marinho (nickmarinho@gmail.com)
- Arabic: SDERAWI (abz8868@msn.com), sn51234 (nesseyan@gmail.com) and Ibrahim Saed ibraheem_alex(Transifex)
- Armenian: Hrant Ohanyan (hrantohanyan@mail.am)
- Basque: Xabier Aramendi (azpidatziak@gmail.com)
- Belarusian: Mihas Varantsou (meequz@gmail.com)
- Bulgarian: Tsvetan & Boyko Bankoff (emerge_life@users.sourceforge.net)
- Catalan: Francisco Luque Contreras (frannoe@ya.com)
- Chinese (Simplified): Guo Yue (yue.guo0418@gmail.com)
- Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com)
- Chinese (Traditional): Yi-Shun Wang (dnextstep@gmail.com) and 冥王歐西里斯 s8321414(Transifex)
- Croatian: Oliver Mucafir (oliver.untwist@gmail.com)
- Czech: Jirka Vilim (web@tets.cz)
- Czech: Jirka Vilim (web@tets.cz) and Petr Cernobila abr(Transifex)
- Danish: Mathias Nielsen (comoneo@gmail.com)
- Dutch: Pieter Heyvaert (pieter_heyvaert@hotmail.com)
- English: Christophe Dumez (chris@qbittorrent.org)
- Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net)
- English(Australia): Robert Readman readmanr(Transifex)
- English(United Kingdom): Robert Readman readmanr(Transifex)
- Finnish: Niklas Laxström (nikerabbit@users.sourceforge.net), Pekka Niemi (pekka.niemi@iki.fi) and Jiri Grönroos artnay(Transifex)
- French: Christophe Dumez (chris@qbittorrent.org)
- Galician: Marcos Lans (marcoslansgarza@gmail.com)
- Galician: Marcos Lans (marcoslansgarza@gmail.com) and antiparvos(Transifex)
- Georgian: Beqa Arabuli (arabulibeqa@yahoo.com)
- German: Niels Hoffmann (zentralmaschine@users.sourceforge.net)
- Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net) and Stephanos Antaris (santaris@csd.auth.gr)
- Hungarian: Majoros Péter (majoros.j.p@t-online.hu)
- Italian: Matteo Sechi (bu17714@gmail.com)
- Japanese: Nardog (alphisation@gmail.com)
- Greek: Tsvetan Bankov (emerge_life@users.sourceforge.net), Stephanos Antaris (santaris@csd.auth.gr), sledgehammer999(hammered999@gmail.com) and Γιάννης Ανθυμίδης Evropi(Transifex)
- Hebrew: David Deutsch (d.deffo@gmail.com)
- Hungarian: Majoros Péter
- Italian: bovirus (bovirus@live.it) and Matteo Sechi (bu17714@gmail.com)
- Japanese: Masato Hashimoto (cabezon.hashimoto@gmail.com)
- Korean: Jin Woo Sin (jin828sin@users.sourceforge.net)
- Norwegian: Lars-Erik Labori (hamil@users.sourceforge.net)
- Lithuanian: Naglis Jonaitis (njonaitis@gmail.com)
- Norwegian: Tomaso
- Polish: Mariusz Fik (fisiu@opensuse.org)
- Portuguese: Nick Marinho (nickmarinho@gmail.com)
- Romanian: Obada Denis (obadadenis@users.sourceforge.net)
- Russian: Nick Khazov (m2k3d0n at users.sourceforge.net)
- Portuguese: Sérgio Marques smarquespt(Transifex)
- Portuguese(Brazil): Nick Marinho (nickmarinho@gmail.com)
- Romanian: Obada Denis (obadadenis@users.sourceforge.net), Adrian Gabor Adriannho(Transifex) and Mihai Coman z0id(Transifex)
- Russian: Nick Khazov (m2k3d0n at users.sourceforge.net), Alexey Morsov (samurai@ricom.ru), Nick Tiskov Dayman(daymansmail (at) gmail (dot) com), Dmitry DmitryKX(Transifex) and kraleksandr kraleksandr(Transifex)
- Serbian: Anaximandar Milet (anaximandar at operamail.com)
- Slovak: helix84
- Spanish: Francisco Luque Contreras (frannoe@ya.com)
- Swedish: Daniel Nylander (po@danielnylander.se)
- Spanish: Francisco Luque Contreras (frannoe@ya.com), Alfredo Monclus alfrix(Transifex) and José Antonio Moray moray33(Transifex)
- Swedish: Daniel Nylander (po@danielnylander.se) and Emil Hammarberg Ooglogput(Transifex)
- Turkish: Hasan Yilmaz (iletisim@hedefturkce.com)
- Ukrainian: Andrey Shpachenko (masterfix@users.sourceforge.net) and Oleh Prypin (blaxpirit@gmail.com)
- Ukrainian: Oleh Prypin (blaxpirit@gmail.com) and zubr139(Transifex)
- Vietnamese: Anh Phan ppanhh(Transifex)
license: GPLv2

67
CMakeLists.txt Normal file
View File

@@ -0,0 +1,67 @@
cmake_minimum_required(VERSION 3.16 FATAL_ERROR) # Policies <= CMP0097 default to NEW
project(qBittorrent
DESCRIPTION "The qBittorrent BitTorrent client"
HOMEPAGE_URL "https://www.qbittorrent.org/"
LANGUAGES CXX
)
# version requirements - older versions may work, but you are on your own
set(minBoostVersion 1.76)
set(minQt6Version 6.5.0)
set(minOpenSSLVersion 3.0.2)
set(minLibtorrent1Version 1.2.19)
set(minLibtorrentVersion 2.0.10)
set(minZlibVersion 1.2.11)
include(GNUInstallDirs)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
include(FeatureSummary)
include(FeatureOptionsSetup)
# features, list is loosely sorted by user's interests
feature_option(GUI "Build GUI application" ON)
feature_option(WEBUI "Enable built-in HTTP server for remote control" ON)
feature_option(STACKTRACE "Enable stacktrace support" ON)
feature_option(TESTING "Build internal testing suite" OFF)
feature_option(VERBOSE_CONFIGURE "Show information about PACKAGES_FOUND and PACKAGES_NOT_FOUND in the configure output (only useful for debugging the CMake build scripts)" OFF)
if (CMAKE_SYSTEM_NAME STREQUAL "Linux" OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
feature_option_dependent(DBUS
"Enable support for notifications and power-management features via D-Bus"
ON "GUI" OFF
)
endif()
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
feature_option_dependent(SYSTEMD
"Install systemd service file. Target directory is overridable with `SYSTEMD_SERVICES_INSTALL_DIR` variable"
OFF "NOT GUI" OFF
)
endif()
if (MSVC)
feature_option(MSVC_RUNTIME_DYNAMIC "Use MSVC dynamic runtime library (-MD) instead of static (-MT)" ON)
endif()
if (VERBOSE_CONFIGURE)
feature_summary(WHAT ALL)
else()
feature_summary(WHAT ENABLED_FEATURES DISABLED_FEATURES)
endif()
# go check the packages
include(CheckPackages)
# configure for specific platform
include(CommonConfig)
# Generate version header
configure_file("src/base/version.h.in" "${CMAKE_CURRENT_SOURCE_DIR}/src/base/version.h" @ONLY)
add_subdirectory(src)
add_subdirectory(dist)
if (TESTING)
add_subdirectory(test)
endif()

484
CODING_GUIDELINES.md Normal file

File diff suppressed because it is too large Load Diff

Some files were not shown because too many files have changed in this diff Show More