mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2026-01-02 05:38:06 -06:00
Compare commits
39 Commits
release-4.
...
v4_4_x
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1b0fd45643 | ||
|
|
9b267690cc | ||
|
|
4e140098ed | ||
|
|
56c4cc89b9 | ||
|
|
74aa41371d | ||
|
|
ea8228280e | ||
|
|
22ac68152f | ||
|
|
2831ad5d22 | ||
|
|
3f15f4a44e | ||
|
|
98c467e102 | ||
|
|
3ef749d77c | ||
|
|
192b01bcb7 | ||
|
|
e151970998 | ||
|
|
d85703608a | ||
|
|
f9811ec3b0 | ||
|
|
9129c42177 | ||
|
|
e331db077c | ||
|
|
4a56c3f5df | ||
|
|
b1e2e511bb | ||
|
|
ac1fd66f05 | ||
|
|
6431fe5f73 | ||
|
|
c31931324d | ||
|
|
f1d78563af | ||
|
|
99b5983143 | ||
|
|
c1e8849b40 | ||
|
|
330f20171f | ||
|
|
b53eadaec8 | ||
|
|
26d78f6462 | ||
|
|
9890bb7501 | ||
|
|
c7daaf95fc | ||
|
|
b760f37093 | ||
|
|
7f5271ae7c | ||
|
|
1130bf300a | ||
|
|
3f142360ed | ||
|
|
af07a98784 | ||
|
|
6c546df70b | ||
|
|
a46348ada9 | ||
|
|
5fc9bf5d29 | ||
|
|
556db6a91a |
3
.github/workflows/ci_macos.yaml
vendored
3
.github/workflows/ci_macos.yaml
vendored
@@ -46,9 +46,8 @@ jobs:
|
|||||||
mv "${{ github.workspace }}/.."/boost_* "${{ env.boost_path }}"
|
mv "${{ github.workspace }}/.."/boost_* "${{ env.boost_path }}"
|
||||||
|
|
||||||
- name: Install Qt
|
- name: Install Qt
|
||||||
uses: jurplel/install-qt-action@v2
|
uses: jurplel/install-qt-action@v3
|
||||||
with:
|
with:
|
||||||
setup-python: false
|
|
||||||
version: ${{ matrix.qt_version }}
|
version: ${{ matrix.qt_version }}
|
||||||
|
|
||||||
- name: Install libtorrent
|
- name: Install libtorrent
|
||||||
|
|||||||
2
.github/workflows/ci_ubuntu.yaml
vendored
2
.github/workflows/ci_ubuntu.yaml
vendored
@@ -35,7 +35,7 @@ jobs:
|
|||||||
max_size=2G
|
max_size=2G
|
||||||
|
|
||||||
- name: Install Qt
|
- name: Install Qt
|
||||||
uses: jurplel/install-qt-action@v2
|
uses: jurplel/install-qt-action@v3
|
||||||
with:
|
with:
|
||||||
version: ${{ matrix.qt_version }}
|
version: ${{ matrix.qt_version }}
|
||||||
|
|
||||||
|
|||||||
2
.github/workflows/ci_windows.yaml
vendored
2
.github/workflows/ci_windows.yaml
vendored
@@ -70,7 +70,7 @@ jobs:
|
|||||||
move "${{ github.workspace }}/../boost_*" "${{ env.boost_path }}"
|
move "${{ github.workspace }}/../boost_*" "${{ env.boost_path }}"
|
||||||
|
|
||||||
- name: Install Qt
|
- name: Install Qt
|
||||||
uses: jurplel/install-qt-action@v2
|
uses: jurplel/install-qt-action@v3
|
||||||
with:
|
with:
|
||||||
version: "5.15.2"
|
version: "5.15.2"
|
||||||
|
|
||||||
|
|||||||
2
.github/workflows/coverity-scan.yml
vendored
2
.github/workflows/coverity-scan.yml
vendored
@@ -21,7 +21,7 @@ jobs:
|
|||||||
libboost-dev libssl-dev zlib1g-dev
|
libboost-dev libssl-dev zlib1g-dev
|
||||||
|
|
||||||
- name: Install Qt
|
- name: Install Qt
|
||||||
uses: jurplel/install-qt-action@v2
|
uses: jurplel/install-qt-action@v3
|
||||||
with:
|
with:
|
||||||
version: "5.15.2"
|
version: "5.15.2"
|
||||||
|
|
||||||
|
|||||||
19
Changelog
19
Changelog
@@ -1,3 +1,22 @@
|
|||||||
|
Tue Aug 30 2022 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.4.5
|
||||||
|
- BUGFIX: Fix missing trackers when adding magnet link. Affects libtorrent 2.0.x builds. (glassez)
|
||||||
|
|
||||||
|
Mon Aug 22 2022 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.4.4
|
||||||
|
- BUGFIX: Correctly handle data decompression with Qt 6.3 (brvphoenix)
|
||||||
|
- BUGFIX: Fix wrong file names displayed in tooltip (Chocobo1)
|
||||||
|
- BUGFIX: Fix incorrect "max outgoing port" setting (glassez)
|
||||||
|
- BUGFIX: Make working set limit available only on libtorrent 2.0.x builds (summer)
|
||||||
|
- BUGFIX: Try to recover missing tags (summer)
|
||||||
|
- RSS: Clear RSS parsing error after use (glassez)
|
||||||
|
- WEBAPI: Set HTTP method restriction on WebAPI actions (Chocobo1)
|
||||||
|
- WINDOWS: Work around application stuttering on Windows (Chocobo1)
|
||||||
|
- WINDOWS: NSIS: Update Portuguese, Italian, Korean, Latvian translations(Blackspirits, bovirus, Minseo Lee, Coool)
|
||||||
|
- LINUX: Improve D-Bus notifications handling (glassez)
|
||||||
|
- MACOS: Open destination folders on macOS in separate thread (Nick Korotysh)
|
||||||
|
|
||||||
|
Tue May 24 2022 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.4.3.1
|
||||||
|
- BUGFIX: Fix broken translations (sledgehammer999)
|
||||||
|
|
||||||
Sun May 22 2022 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.4.3
|
Sun May 22 2022 - sledgehammer999 <sledgehammer999@qbittorrent.org> - v4.4.3
|
||||||
- BUGFIX: Correctly handle changing of temp save path (glassez)
|
- BUGFIX: Correctly handle changing of temp save path (glassez)
|
||||||
- BUGFIX: Fix storage in SQLite (glassez)
|
- BUGFIX: Fix storage in SQLite (glassez)
|
||||||
|
|||||||
20
configure
vendored
20
configure
vendored
@@ -1,6 +1,6 @@
|
|||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# Guess values for system-dependent variables and create Makefiles.
|
# Guess values for system-dependent variables and create Makefiles.
|
||||||
# Generated by GNU Autoconf 2.71 for qbittorrent v4.4.3.
|
# Generated by GNU Autoconf 2.71 for qbittorrent v4.4.5.
|
||||||
#
|
#
|
||||||
# Report bugs to <bugs.qbittorrent.org>.
|
# Report bugs to <bugs.qbittorrent.org>.
|
||||||
#
|
#
|
||||||
@@ -611,8 +611,8 @@ MAKEFLAGS=
|
|||||||
# Identity of this package.
|
# Identity of this package.
|
||||||
PACKAGE_NAME='qbittorrent'
|
PACKAGE_NAME='qbittorrent'
|
||||||
PACKAGE_TARNAME='qbittorrent'
|
PACKAGE_TARNAME='qbittorrent'
|
||||||
PACKAGE_VERSION='v4.4.3'
|
PACKAGE_VERSION='v4.4.5'
|
||||||
PACKAGE_STRING='qbittorrent v4.4.3'
|
PACKAGE_STRING='qbittorrent v4.4.5'
|
||||||
PACKAGE_BUGREPORT='bugs.qbittorrent.org'
|
PACKAGE_BUGREPORT='bugs.qbittorrent.org'
|
||||||
PACKAGE_URL='https://www.qbittorrent.org/'
|
PACKAGE_URL='https://www.qbittorrent.org/'
|
||||||
|
|
||||||
@@ -1329,7 +1329,7 @@ if test "$ac_init_help" = "long"; then
|
|||||||
# Omit some internal or obsolete options to make the list less imposing.
|
# Omit some internal or obsolete options to make the list less imposing.
|
||||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||||
cat <<_ACEOF
|
cat <<_ACEOF
|
||||||
\`configure' configures qbittorrent v4.4.3 to adapt to many kinds of systems.
|
\`configure' configures qbittorrent v4.4.5 to adapt to many kinds of systems.
|
||||||
|
|
||||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||||
|
|
||||||
@@ -1400,7 +1400,7 @@ fi
|
|||||||
|
|
||||||
if test -n "$ac_init_help"; then
|
if test -n "$ac_init_help"; then
|
||||||
case $ac_init_help in
|
case $ac_init_help in
|
||||||
short | recursive ) echo "Configuration of qbittorrent v4.4.3:";;
|
short | recursive ) echo "Configuration of qbittorrent v4.4.5:";;
|
||||||
esac
|
esac
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
|
|
||||||
@@ -1533,7 +1533,7 @@ fi
|
|||||||
test -n "$ac_init_help" && exit $ac_status
|
test -n "$ac_init_help" && exit $ac_status
|
||||||
if $ac_init_version; then
|
if $ac_init_version; then
|
||||||
cat <<\_ACEOF
|
cat <<\_ACEOF
|
||||||
qbittorrent configure v4.4.3
|
qbittorrent configure v4.4.5
|
||||||
generated by GNU Autoconf 2.71
|
generated by GNU Autoconf 2.71
|
||||||
|
|
||||||
Copyright (C) 2021 Free Software Foundation, Inc.
|
Copyright (C) 2021 Free Software Foundation, Inc.
|
||||||
@@ -1648,7 +1648,7 @@ cat >config.log <<_ACEOF
|
|||||||
This file contains any messages produced by compilers while
|
This file contains any messages produced by compilers while
|
||||||
running configure, to aid debugging if configure makes a mistake.
|
running configure, to aid debugging if configure makes a mistake.
|
||||||
|
|
||||||
It was created by qbittorrent $as_me v4.4.3, which was
|
It was created by qbittorrent $as_me v4.4.5, which was
|
||||||
generated by GNU Autoconf 2.71. Invocation command line was
|
generated by GNU Autoconf 2.71. Invocation command line was
|
||||||
|
|
||||||
$ $0$ac_configure_args_raw
|
$ $0$ac_configure_args_raw
|
||||||
@@ -4779,7 +4779,7 @@ fi
|
|||||||
|
|
||||||
# Define the identity of the package.
|
# Define the identity of the package.
|
||||||
PACKAGE='qbittorrent'
|
PACKAGE='qbittorrent'
|
||||||
VERSION='v4.4.3'
|
VERSION='v4.4.5'
|
||||||
|
|
||||||
|
|
||||||
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
|
||||||
@@ -7254,7 +7254,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
|||||||
# report actual input values of CONFIG_FILES etc. instead of their
|
# report actual input values of CONFIG_FILES etc. instead of their
|
||||||
# values after options handling.
|
# values after options handling.
|
||||||
ac_log="
|
ac_log="
|
||||||
This file was extended by qbittorrent $as_me v4.4.3, which was
|
This file was extended by qbittorrent $as_me v4.4.5, which was
|
||||||
generated by GNU Autoconf 2.71. Invocation command line was
|
generated by GNU Autoconf 2.71. Invocation command line was
|
||||||
|
|
||||||
CONFIG_FILES = $CONFIG_FILES
|
CONFIG_FILES = $CONFIG_FILES
|
||||||
@@ -7314,7 +7314,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
|
|||||||
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||||||
ac_cs_config='$ac_cs_config_escaped'
|
ac_cs_config='$ac_cs_config_escaped'
|
||||||
ac_cs_version="\\
|
ac_cs_version="\\
|
||||||
qbittorrent config.status v4.4.3
|
qbittorrent config.status v4.4.5
|
||||||
configured by $0, generated by GNU Autoconf 2.71,
|
configured by $0, generated by GNU Autoconf 2.71,
|
||||||
with options \\"\$ac_cs_config\\"
|
with options \\"\$ac_cs_config\\"
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
AC_INIT([qbittorrent], [v4.4.3], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/])
|
AC_INIT([qbittorrent], [v4.4.5], [bugs.qbittorrent.org], [], [https://www.qbittorrent.org/])
|
||||||
AC_CONFIG_AUX_DIR([build-aux])
|
AC_CONFIG_AUX_DIR([build-aux])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
: ${CFLAGS=""}
|
: ${CFLAGS=""}
|
||||||
|
|||||||
2
dist/mac/Info.plist
vendored
2
dist/mac/Info.plist
vendored
@@ -55,7 +55,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>4.4.3</string>
|
<string>4.4.5</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>${EXECUTABLE_NAME}</string>
|
<string>${EXECUTABLE_NAME}</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
|
|||||||
@@ -74,6 +74,6 @@
|
|||||||
<url type="translate">https://github.com/qbittorrent/qBittorrent/wiki/How-to-translate-qBittorrent</url>
|
<url type="translate">https://github.com/qbittorrent/qBittorrent/wiki/How-to-translate-qBittorrent</url>
|
||||||
<content_rating type="oars-1.1"/>
|
<content_rating type="oars-1.1"/>
|
||||||
<releases>
|
<releases>
|
||||||
<release version="4.4.3" date="2022-05-22"/>
|
<release version="4.4.5" date="2022-08-30"/>
|
||||||
</releases>
|
</releases>
|
||||||
</component>
|
</component>
|
||||||
|
|||||||
61
dist/windows/3rdparty/VersionCompleteXXXX.nsi
vendored
Normal file
61
dist/windows/3rdparty/VersionCompleteXXXX.nsi
vendored
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
; Code taken from https://nsis.sourceforge.io/VersionCompleteXXXX
|
||||||
|
; See http://nsis.sourceforge.net/VersionCompleteXXXX for documentation
|
||||||
|
!macro VersionCompleteXXXRevision _INPUT_VALUE _OUTPUT_SYMBOL _REVISION
|
||||||
|
!searchparse /noerrors ${_INPUT_VALUE} "" _VERSION_1 "." _VERSION_2 "." _VERSION_3 "." _VERSION_4
|
||||||
|
!ifndef _VERSION_1
|
||||||
|
!define _VERSION_1 0
|
||||||
|
!else if `${_VERSION_1}` == ``
|
||||||
|
!define /redef _VERSION_1 0
|
||||||
|
!endif
|
||||||
|
!ifndef _VERSION_2
|
||||||
|
!define _VERSION_2 0
|
||||||
|
!else if `${_VERSION_2}` == ``
|
||||||
|
!define /redef _VERSION_2 0
|
||||||
|
!endif
|
||||||
|
!ifndef _VERSION_3
|
||||||
|
!define _VERSION_3 0
|
||||||
|
!else if `${_VERSION_3}` == ``
|
||||||
|
!define /redef _VERSION_3 0
|
||||||
|
!endif
|
||||||
|
!ifndef _VERSION_4
|
||||||
|
!define _VERSION_4 0
|
||||||
|
!else if `${_VERSION_4}` == ``
|
||||||
|
!define /redef _VERSION_4 0
|
||||||
|
!endif
|
||||||
|
!define ${_OUTPUT_SYMBOL} ${_VERSION_1}.${_VERSION_2}.${_VERSION_3}.${_REVISION}
|
||||||
|
!undef _VERSION_1
|
||||||
|
!undef _VERSION_2
|
||||||
|
!undef _VERSION_3
|
||||||
|
!undef _VERSION_4
|
||||||
|
!undef _REVISION
|
||||||
|
!macroend
|
||||||
|
!define VersionCompleteXXXRevision `!insertmacro VersionCompleteXXXRevision`
|
||||||
|
!macro VersionCompleteXXXX _INPUT_VALUE _OUTPUT_SYMBOL
|
||||||
|
!searchparse /noerrors ${_INPUT_VALUE} "" _VERSION_1 "." _VERSION_2 "." _VERSION_3 "." _VERSION_4
|
||||||
|
!ifndef _VERSION_1
|
||||||
|
!define _VERSION_1 0
|
||||||
|
!else if `${_VERSION_1}` == ``
|
||||||
|
!define /redef _VERSION_1 0
|
||||||
|
!endif
|
||||||
|
!ifndef _VERSION_2
|
||||||
|
!define _VERSION_2 0
|
||||||
|
!else if `${_VERSION_2}` == ``
|
||||||
|
!define /redef _VERSION_2 0
|
||||||
|
!endif
|
||||||
|
!ifndef _VERSION_3
|
||||||
|
!define _VERSION_3 0
|
||||||
|
!else if `${_VERSION_3}` == ``
|
||||||
|
!define /redef _VERSION_3 0
|
||||||
|
!endif
|
||||||
|
!ifndef _VERSION_4
|
||||||
|
!define _VERSION_4 0
|
||||||
|
!else if `${_VERSION_4}` == ``
|
||||||
|
!define /redef _VERSION_4 0
|
||||||
|
!endif
|
||||||
|
!define ${_OUTPUT_SYMBOL} ${_VERSION_1}.${_VERSION_2}.${_VERSION_3}.${_VERSION_4}
|
||||||
|
!undef _VERSION_1
|
||||||
|
!undef _VERSION_2
|
||||||
|
!undef _VERSION_3
|
||||||
|
!undef _VERSION_4
|
||||||
|
!macroend
|
||||||
|
!define VersionCompleteXXXX `!insertmacro VersionCompleteXXXX`
|
||||||
26
dist/windows/README.txt
vendored
26
dist/windows/README.txt
vendored
@@ -16,16 +16,16 @@ TRANSLATORS:
|
|||||||
|
|
||||||
PACKAGERS:
|
PACKAGERS:
|
||||||
|
|
||||||
You will need NSIS and upx to make the installer. You need a unicode version of NSIS.
|
You will need NSIS 3 to make the installer. UPX is an optional requirement.
|
||||||
I tested with NSIS 3.0 (final).
|
|
||||||
|
|
||||||
1. Open the options.nsi file in an editor and change line that contains
|
1. Open the config.nsi file in an editor and change line that contains
|
||||||
"!define PROG_VERSION "3.0.3"" to the version of qbittorrent you just built.
|
"!define QBT_VERSION "3.0.3"" to the version of qbittorrent you just built.
|
||||||
2. Extract the plugins found in the folder "nsis plugins" into your
|
2. config.nsi contains some other defines that control the installer output. Read the comments in that file.
|
||||||
|
3. Extract the plugins found in the folder "nsis plugins" into your
|
||||||
NSIS's unicode Plugin directory(usually C:\Program Files\NSIS\Plugins\x86-unicode).
|
NSIS's unicode Plugin directory(usually C:\Program Files\NSIS\Plugins\x86-unicode).
|
||||||
Only the *.dll files are needed. Use the unicode version of the dlls.
|
Only the *.dll files are needed. Use the unicode version of the dlls.
|
||||||
3. The script you need to compile is "qbittorrent.nsi". It includes all other necessary scripts.
|
4. The script you need to compile is "qbittorrent.nsi". It includes all other necessary scripts.
|
||||||
4. The script expects the following file tree:
|
5. The script expects the following file tree:
|
||||||
|
|
||||||
The installer script expects the following file tree:
|
The installer script expects the following file tree:
|
||||||
|
|
||||||
@@ -42,13 +42,14 @@ translations
|
|||||||
You will need the files that conform to this globbing expression 'qt_??.qm qt_??_??.qm qtbase_??.qm qtbase_??_??.qm'.
|
You will need the files that conform to this globbing expression 'qt_??.qm qt_??_??.qm qtbase_??.qm qtbase_??_??.qm'.
|
||||||
Some of those files will be stubs. Filter any file that is smaller than 10KB in size.
|
Some of those files will be stubs. Filter any file that is smaller than 10KB in size.
|
||||||
Alternatively you can use the 'gather_qt_translations.py' script found in the same folder as this file.
|
Alternatively you can use the 'gather_qt_translations.py' script found in the same folder as this file.
|
||||||
Run it with '--help' to see its usage.
|
Run it with '--help' to see its usage.)
|
||||||
**YOU MUST** edit the list of .qm files in the 'installer.nsi' to match whatever files are in the 'translations' subfolder.)
|
|
||||||
qt_zh_TW.qm
|
qt_zh_TW.qm
|
||||||
installer.nsi
|
installer.nsi
|
||||||
license.txt
|
license.txt
|
||||||
options.nsi
|
config.nsi
|
||||||
|
helper.nsi
|
||||||
qbittorrent.exe
|
qbittorrent.exe
|
||||||
|
qbittorrent.pdb
|
||||||
qbittorrent.nsi
|
qbittorrent.nsi
|
||||||
qt.conf
|
qt.conf
|
||||||
translations.nsi
|
translations.nsi
|
||||||
@@ -56,9 +57,10 @@ UAC.nsh
|
|||||||
uninstaller.nsi
|
uninstaller.nsi
|
||||||
|
|
||||||
|
|
||||||
5. "license.txt" is a text file that contains the text rendered
|
6. "license.txt" is a text file that contains the text rendered
|
||||||
from src\gui\gpl.html or the text contained in COPYING
|
from src\gui\gpl.html or the text contained in COPYING
|
||||||
6. "qbittorrent.exe" is the compiled binary file.
|
7. "qbittorrent.exe" is the compiled binary file.
|
||||||
|
8. "qbittorrent.pdb" is the compiled binary's PDB file.
|
||||||
|
|
||||||
SCRIPT HACKERS:
|
SCRIPT HACKERS:
|
||||||
|
|
||||||
|
|||||||
112
dist/windows/options.nsi → dist/windows/config.nsi
vendored
112
dist/windows/options.nsi → dist/windows/config.nsi
vendored
@@ -1,23 +1,95 @@
|
|||||||
|
;Start of user configurable options
|
||||||
|
;==============================================================================
|
||||||
|
|
||||||
|
; Uncomment if you want to use UPX to pack the installer header
|
||||||
|
; Doing so may make antivirus software flag the installer as virus/malware
|
||||||
|
;!define USE_UPX
|
||||||
|
|
||||||
|
; Uncomment when packaging 64bit qbittorrent
|
||||||
|
;!define QBT_IS_X64
|
||||||
|
|
||||||
|
; Uncomment when packaging qt6 qbittorrent
|
||||||
|
; It will also define QBT_IS_X64
|
||||||
|
;!define QBT_USES_QT6
|
||||||
|
|
||||||
|
!ifdef QBT_USES_QT6
|
||||||
|
!define /redef QBT_IS_X64
|
||||||
|
!endif
|
||||||
|
|
||||||
|
; qBittorrent version
|
||||||
|
; The string MUST contain ONLY numbers delimited by dots.
|
||||||
|
; It MUST contain a maximum of 4 delimited numbers
|
||||||
|
; Other values will result in undefined behavior
|
||||||
|
; examples:
|
||||||
|
; 4.5.0 -> good
|
||||||
|
; 4.5.1.3 -> good
|
||||||
|
; 4.5.1.3.2 -> bad
|
||||||
|
; 4.5.0beta -> bad
|
||||||
|
!define /ifndef QBT_VERSION "4.4.5"
|
||||||
|
|
||||||
|
; Option that controls the installer's window name
|
||||||
|
; If set, its value will be used like this:
|
||||||
|
; "qBittorrent ${QBT_INSTALLER_FILENAME}"
|
||||||
|
; If not set, the window name will be auto composed from QBT_VERSION, QBT_USES_QT6, QBT_IS_X64
|
||||||
|
; If you set this define then you MUST set QBT_INSTALLER_FILENAME too. Otherwise it will be ignored.
|
||||||
|
; This define is meant to ease automation from scripts/commandline
|
||||||
|
;!define QBT_INSTALLER_WINDOWNAME
|
||||||
|
|
||||||
|
; Option that controls the installer's window name
|
||||||
|
; If set, its value will be used like this:
|
||||||
|
; "qbittorrent_${QBT_INSTALLER_FILENAME}_setup.exe"
|
||||||
|
; If not set, the window name will be auto composed from QBT_VERSION, QBT_USES_QT6, QBT_IS_X64
|
||||||
|
; If you set this define then you MUST set QBT_INSTALLER_WINDOWNAME too. Otherwise it will be ignored.
|
||||||
|
; This define is meant to ease automation from scripts/commandline
|
||||||
|
;!define QBT_INSTALLER_FILENAME
|
||||||
|
|
||||||
|
;End of user configurable options
|
||||||
|
;==============================================================================
|
||||||
|
|
||||||
|
!ifndef QBT_INSTALLER_WINDOWNAME | QBT_INSTALLER_FILENAME
|
||||||
|
!ifndef QBT_IS_X64
|
||||||
|
; The name of the installer
|
||||||
|
!define QBT_INSTALLER_WINDOWNAME "${QBT_VERSION}"
|
||||||
|
|
||||||
|
; The file to write
|
||||||
|
!define QBT_INSTALLER_FILENAME "${QBT_VERSION}"
|
||||||
|
!else ; QBT_IS_X64
|
||||||
|
!ifndef QBT_USES_QT6
|
||||||
|
; The name of the installer
|
||||||
|
!define QBT_INSTALLER_WINDOWNAME "${QBT_VERSION} x64"
|
||||||
|
|
||||||
|
; The file to write
|
||||||
|
!define QBT_INSTALLER_FILENAME "${QBT_VERSION}_x64"
|
||||||
|
!else ; QBT_USES_QT6
|
||||||
|
; The name of the installer
|
||||||
|
!define QBT_INSTALLER_WINDOWNAME "${QBT_VERSION} (qt6) x64"
|
||||||
|
|
||||||
|
; The file to write
|
||||||
|
!define QBT_INSTALLER_FILENAME "${QBT_VERSION}_qt6_x64"
|
||||||
|
!endif ; QBT_USES_QT6
|
||||||
|
!endif ; QBT_IS_X64
|
||||||
|
!endif
|
||||||
|
|
||||||
Unicode true
|
Unicode true
|
||||||
ManifestDPIAware true
|
ManifestDPIAware true
|
||||||
;Compress the header too
|
|
||||||
|
!ifdef USE_UPX
|
||||||
!packhdr "$%TEMP%\exehead.tmp" 'upx.exe -9 --best --ultra-brute "$%TEMP%\exehead.tmp"'
|
!packhdr "$%TEMP%\exehead.tmp" 'upx.exe -9 --best --ultra-brute "$%TEMP%\exehead.tmp"'
|
||||||
|
!endif
|
||||||
|
|
||||||
;Setting the compression
|
;Setting the compression
|
||||||
SetCompressor /SOLID LZMA
|
SetCompressor /SOLID LZMA
|
||||||
SetCompressorDictSize 64
|
SetCompressorDictSize 64
|
||||||
XPStyle on
|
XPStyle on
|
||||||
|
|
||||||
;Uncomment when packaging 64bit qbittorrent
|
!include "MUI2.nsh"
|
||||||
;!define APP64BIT
|
|
||||||
|
|
||||||
!include "MUI.nsh"
|
|
||||||
!include "UAC.nsh"
|
!include "UAC.nsh"
|
||||||
!include "FileFunc.nsh"
|
!include "FileFunc.nsh"
|
||||||
!include "WinVer.nsh"
|
!include "WinVer.nsh"
|
||||||
!ifdef APP64BIT
|
!ifdef QBT_IS_X64
|
||||||
!include "x64.nsh"
|
!include "x64.nsh"
|
||||||
!endif
|
!endif
|
||||||
|
!include "3rdparty\VersionCompleteXXXX.nsi"
|
||||||
|
|
||||||
;For the file association
|
;For the file association
|
||||||
!define SHCNE_ASSOCCHANGED 0x8000000
|
!define SHCNE_ASSOCCHANGED 0x8000000
|
||||||
@@ -27,41 +99,33 @@ XPStyle on
|
|||||||
!define CSIDL_APPDATA '0x1A' ;Application Data path
|
!define CSIDL_APPDATA '0x1A' ;Application Data path
|
||||||
!define CSIDL_LOCALAPPDATA '0x1C' ;Local Application Data path
|
!define CSIDL_LOCALAPPDATA '0x1C' ;Local Application Data path
|
||||||
|
|
||||||
; Program specific
|
|
||||||
!define PROG_VERSION "4.4.3"
|
|
||||||
|
|
||||||
!define MUI_FINISHPAGE_RUN
|
!define MUI_FINISHPAGE_RUN
|
||||||
!define MUI_FINISHPAGE_RUN_FUNCTION PageFinishRun
|
!define MUI_FINISHPAGE_RUN_FUNCTION PageFinishRun
|
||||||
!define MUI_FINISHPAGE_RUN_TEXT $(launch_qbt)
|
!define MUI_FINISHPAGE_RUN_TEXT $(launch_qbt)
|
||||||
|
|
||||||
!ifndef APP64BIT
|
; The name of the installer
|
||||||
; The name of the installer
|
Name "qBittorrent ${QBT_INSTALLER_WINDOWNAME}"
|
||||||
Name "qBittorrent ${PROG_VERSION}"
|
|
||||||
|
|
||||||
; The file to write
|
; The file to write
|
||||||
OutFile "qbittorrent_${PROG_VERSION}_setup.exe"
|
OutFile "qbittorrent_${QBT_INSTALLER_FILENAME}_setup.exe"
|
||||||
!else
|
|
||||||
; The name of the installer
|
|
||||||
Name "qBittorrent ${PROG_VERSION} x64"
|
|
||||||
|
|
||||||
; The file to write
|
|
||||||
OutFile "qbittorrent_${PROG_VERSION}_x64_setup.exe"
|
|
||||||
!endif
|
|
||||||
|
|
||||||
;Installer Version Information
|
;Installer Version Information
|
||||||
VIAddVersionKey "ProductName" "qBittorrent"
|
VIAddVersionKey "ProductName" "qBittorrent"
|
||||||
VIAddVersionKey "CompanyName" "The qBittorrent project"
|
VIAddVersionKey "CompanyName" "The qBittorrent project"
|
||||||
VIAddVersionKey "LegalCopyright" "Copyright ©2006-2022 The qBittorrent project"
|
VIAddVersionKey "LegalCopyright" "Copyright ©2006-2022 The qBittorrent project"
|
||||||
VIAddVersionKey "FileDescription" "qBittorrent - A Bittorrent Client"
|
VIAddVersionKey "FileDescription" "qBittorrent - A Bittorrent Client"
|
||||||
VIAddVersionKey "FileVersion" "${PROG_VERSION}"
|
VIAddVersionKey "FileVersion" "${QBT_VERSION}"
|
||||||
|
|
||||||
VIProductVersion "${PROG_VERSION}.0"
|
; VIProductVersion needs a 4 part version.
|
||||||
|
; If QBT_VERSION contains less than 4 parts then VersionCompleteXXXX, will extend it with zeroes.
|
||||||
|
${VersionCompleteXXXX} ${QBT_VERSION} VERSION_4_PART
|
||||||
|
VIProductVersion "${VERSION_4_PART}"
|
||||||
|
|
||||||
; The default installation directory. It changes depending if we install in the 64bit dir or not.
|
; The default installation directory. It changes depending if we install in the 64bit dir or not.
|
||||||
; A caveat of this is if a user has installed a 32bit version and then runs the 64bit installer
|
; A caveat of this is if a user has installed a 32bit version and then runs the 64bit installer
|
||||||
; (which in turn launches the 32bit uninstaller first) the value will still point to the 32bit location.
|
; (which in turn launches the 32bit uninstaller first) the value will still point to the 32bit location.
|
||||||
; The user has to manually uninstall the old version and THEN run the 64bit installer
|
; The user has to manually uninstall the old version and THEN run the 64bit installer
|
||||||
!ifndef APP64BIT
|
!ifndef QBT_IS_X64
|
||||||
InstallDir $PROGRAMFILES32\qBittorrent
|
InstallDir $PROGRAMFILES32\qBittorrent
|
||||||
!else
|
!else
|
||||||
InstallDir $PROGRAMFILES64\qBittorrent
|
InstallDir $PROGRAMFILES64\qBittorrent
|
||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_AFRIKAANS} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_AFRIKAANS} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_AFRIKAANS} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_AFRIKAANS} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_AFRIKAANS} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_AFRIKAANS} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_AFRIKAANS} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_AFRIKAANS} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ALBANIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ALBANIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_ALBANIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ALBANIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_ALBANIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ALBANIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ALBANIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ALBANIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ARABIC} "تشغيل البرنامج"
|
|||||||
LangString inst_requires_64bit ${LANG_ARABIC} "هذا المثبت يعمل فقط في نسخ ويندوز 64 بت"
|
LangString inst_requires_64bit ${LANG_ARABIC} "هذا المثبت يعمل فقط في نسخ ويندوز 64 بت"
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ARABIC} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_ARABIC} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ARABIC} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ARABIC} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ARABIC} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_BASQUE} "Abiarazi qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_BASQUE} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_BASQUE} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_BASQUE} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_BASQUE} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_BASQUE} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_BASQUE} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_BASQUE} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_BELARUSIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_BELARUSIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_BELARUSIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_BELARUSIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_BELARUSIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_BELARUSIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_BELARUSIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_BELARUSIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_BOSNIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_BOSNIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_BOSNIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_BOSNIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_BOSNIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_BOSNIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_BOSNIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_BOSNIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_BRETON} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_BRETON} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_BRETON} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_BRETON} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_BRETON} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_BRETON} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_BRETON} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_BRETON} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_BULGARIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_BULGARIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_BULGARIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_BULGARIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_BULGARIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_BULGARIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_BULGARIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_BULGARIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_CATALAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_CATALAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_CATALAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_CATALAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_CATALAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_CATALAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_CATALAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_CATALAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_CROATIAN} "Pokreni qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_CROATIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_CROATIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_CROATIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_CROATIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_CROATIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_CROATIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_CROATIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_CZECH} "Spustit qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_CZECH} "Tento instalátor funguje pouze v 64-bit Windows."
|
LangString inst_requires_64bit ${LANG_CZECH} "Tento instalátor funguje pouze v 64-bit Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_CZECH} "Tato verze qBittorrent vyžaduje minimálně Windows 7."
|
LangString inst_requires_win7 ${LANG_CZECH} "Tato verze qBittorrent vyžaduje minimálně Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_CZECH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_CZECH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_CZECH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_DANISH} "Start qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_DANISH} "Installationsprogrammet virker kun i Windows-versioner som er 64-bit."
|
LangString inst_requires_64bit ${LANG_DANISH} "Installationsprogrammet virker kun i Windows-versioner som er 64-bit."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_DANISH} "qBittorrent-versionen kræver mindst Windows 7."
|
LangString inst_requires_win7 ${LANG_DANISH} "qBittorrent-versionen kræver mindst Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_DANISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_DANISH} "Afinstaller qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_DANISH} "Afinstaller qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_DUTCH} "qBittorrent starten."
|
|||||||
LangString inst_requires_64bit ${LANG_DUTCH} "Dit installatieprogramma werkt alleen in 64-bit Windows-versies."
|
LangString inst_requires_64bit ${LANG_DUTCH} "Dit installatieprogramma werkt alleen in 64-bit Windows-versies."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_DUTCH} "Deze versie van qBittorrent vereist ten minste Windows 7."
|
LangString inst_requires_win7 ${LANG_DUTCH} "Deze versie van qBittorrent vereist ten minste Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_DUTCH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_DUTCH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_DUTCH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ESPERANTO} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ESPERANTO} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_ESPERANTO} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ESPERANTO} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_ESPERANTO} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ESPERANTO} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ESPERANTO} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ESPERANTO} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ESTONIAN} "Käivita qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ESTONIAN} "See installer töötab ainult 64-bit Windowsi versioonides."
|
LangString inst_requires_64bit ${LANG_ESTONIAN} "See installer töötab ainult 64-bit Windowsi versioonides."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ESTONIAN} "Selle qBittorrenti versiooni jaoks on vajalik vähemalt Windows 7."
|
LangString inst_requires_win7 ${LANG_ESTONIAN} "Selle qBittorrenti versiooni jaoks on vajalik vähemalt Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ESTONIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ESTONIAN} "Desinstalli qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ESTONIAN} "Desinstalli qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_FARSI} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_FARSI} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_FARSI} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_FARSI} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_FARSI} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_FARSI} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_FARSI} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_FARSI} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_FINNISH} "Käynnistä qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_FINNISH} "Tämä asennusohjelma toimii vain 64-bittisellä Windowsin versiolla."
|
LangString inst_requires_64bit ${LANG_FINNISH} "Tämä asennusohjelma toimii vain 64-bittisellä Windowsin versiolla."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_FINNISH} "Tämä qBittorrent versio tarvitsee vähintään Windows 7:n."
|
LangString inst_requires_win7 ${LANG_FINNISH} "Tämä qBittorrent versio tarvitsee vähintään Windows 7:n."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_FINNISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_FINNISH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_FINNISH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_FRENCH} "Lancer qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_FRENCH} "Cet installateur ne fonctionne que dans les versions 64 bits de Windows."
|
LangString inst_requires_64bit ${LANG_FRENCH} "Cet installateur ne fonctionne que dans les versions 64 bits de Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_FRENCH} "Cette version de qBittorrent nécessite au moins Windows 7."
|
LangString inst_requires_win7 ${LANG_FRENCH} "Cette version de qBittorrent nécessite au moins Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_FRENCH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_FRENCH} "Désinstaller qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_FRENCH} "Désinstaller qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_GALICIAN} "Iniciar qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_GALICIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_GALICIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_GALICIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_GALICIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_GALICIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_GALICIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_GALICIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_GERMAN} "Starte qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_GERMAN} "Diese Installation funktioniert nur mit einer 64-bit Version von Windows."
|
LangString inst_requires_64bit ${LANG_GERMAN} "Diese Installation funktioniert nur mit einer 64-bit Version von Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_GERMAN} "Diese Version von qBittorrent erfordert mindestens Windows 7."
|
LangString inst_requires_win7 ${LANG_GERMAN} "Diese Version von qBittorrent erfordert mindestens Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_GERMAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_GERMAN} "qBittorrent deinstallieren"
|
LangString inst_uninstall_link_description ${LANG_GERMAN} "qBittorrent deinstallieren"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_GREEK} "Εκκίνηση του qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_GREEK} "Αυτό το αρχείο εγκατάστασης λειτουργεί μόνο σε 64-bit εκδόσεις των Windows."
|
LangString inst_requires_64bit ${LANG_GREEK} "Αυτό το αρχείο εγκατάστασης λειτουργεί μόνο σε 64-bit εκδόσεις των Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_GREEK} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_GREEK} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_GREEK} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_GREEK} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_GREEK} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_HEBREW} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_HEBREW} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_HEBREW} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_HEBREW} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_HEBREW} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_HEBREW} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_HEBREW} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_HEBREW} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_HUNGARIAN} "qBittorrent indítása."
|
|||||||
LangString inst_requires_64bit ${LANG_HUNGARIAN} "A telepítő csak 64-bites Windows verziókon működik."
|
LangString inst_requires_64bit ${LANG_HUNGARIAN} "A telepítő csak 64-bites Windows verziókon működik."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_HUNGARIAN} "A qBittorrent ezen verziójához minimum Windows 7 szükséges."
|
LangString inst_requires_win7 ${LANG_HUNGARIAN} "A qBittorrent ezen verziójához minimum Windows 7 szükséges."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_HUNGARIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_HUNGARIAN} "qBittorrent eltávolítása"
|
LangString inst_uninstall_link_description ${LANG_HUNGARIAN} "qBittorrent eltávolítása"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ICELANDIC} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ICELANDIC} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_ICELANDIC} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ICELANDIC} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_ICELANDIC} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ICELANDIC} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ICELANDIC} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ICELANDIC} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_INDONESIAN} "Buka qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_INDONESIAN} "Aplikasi ini hanya berjalan pada versi Windows 64-bit."
|
LangString inst_requires_64bit ${LANG_INDONESIAN} "Aplikasi ini hanya berjalan pada versi Windows 64-bit."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_INDONESIAN} "Versi qBittorrent ini membutuhkan setidaknya Windows 7."
|
LangString inst_requires_win7 ${LANG_INDONESIAN} "Versi qBittorrent ini membutuhkan setidaknya Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_INDONESIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_INDONESIAN} "Copot qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_INDONESIAN} "Copot qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_IRISH} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_IRISH} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_IRISH} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_IRISH} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_IRISH} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_IRISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_IRISH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_IRISH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
12
dist/windows/installer-translations/italian.nsi
vendored
12
dist/windows/installer-translations/italian.nsi
vendored
@@ -19,9 +19,9 @@ LangString inst_pathlimit ${LANG_ITALIAN} "Disabilita limite lunghezza percorsi
|
|||||||
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
||||||
LangString inst_firewallinfo ${LANG_ITALIAN} "Aggiunta regola al firewall di Windows"
|
LangString inst_firewallinfo ${LANG_ITALIAN} "Aggiunta regola al firewall di Windows"
|
||||||
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
||||||
LangString inst_warning ${LANG_ITALIAN} "qBittorrent è in esecuzione. Chiudilo prima di procedere con l'installazione."
|
LangString inst_warning ${LANG_ITALIAN} "qBittorrent è in esecuzione.$\r$\nChiudilo prima di procedere con l'installazione."
|
||||||
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
||||||
LangString inst_uninstall_question ${LANG_ITALIAN} "La versione attuale verrà disinstallata. Le impostazioni utente e i torrent rimarranno invariati."
|
LangString inst_uninstall_question ${LANG_ITALIAN} "La versione attuale verrà disinstallata.$\r$\nLe impostazioni utente e i torrent rimarranno invariati."
|
||||||
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
||||||
LangString inst_unist ${LANG_ITALIAN} "Disinstallazione versione precedente."
|
LangString inst_unist ${LANG_ITALIAN} "Disinstallazione versione precedente."
|
||||||
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ITALIAN} "Esegui qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ITALIAN} "Questo installer funziona solo con versioni di Windows a 64bit."
|
LangString inst_requires_64bit ${LANG_ITALIAN} "Questo installer funziona solo con versioni di Windows a 64bit."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ITALIAN} "Questa versione di qBittorrent richiede Windows 7 o versioni successive."
|
LangString inst_requires_win7 ${LANG_ITALIAN} "Questa versione di qBittorrent richiede Windows 7 o versioni successive."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ITALIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ITALIAN} "Disinstalla qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ITALIAN} "Disinstalla qBittorrent"
|
||||||
|
|
||||||
@@ -53,8 +55,8 @@ LangString remove_firewallinfo ${LANG_ITALIAN} "Rimozione regola dal firewall di
|
|||||||
;LangString remove_cache ${LANG_ENGLISH} "Remove torrents and cached data"
|
;LangString remove_cache ${LANG_ENGLISH} "Remove torrents and cached data"
|
||||||
LangString remove_cache ${LANG_ITALIAN} "Rimuovi torrent e dati nella cache"
|
LangString remove_cache ${LANG_ITALIAN} "Rimuovi torrent e dati nella cache"
|
||||||
;LangString uninst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before uninstalling."
|
;LangString uninst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before uninstalling."
|
||||||
LangString uninst_warning ${LANG_ITALIAN} "qBittorrent è in esecuzione. Chiudilo prima di procedere con la disinstallazione."
|
LangString uninst_warning ${LANG_ITALIAN} "qBittorrent è in esecuzione.$\r$\nChiudilo prima di procedere con la disinstallazione."
|
||||||
;LangString uninst_tor_warn ${LANG_ENGLISH} "Not removing .torrent association. It is associated with:"
|
;LangString uninst_tor_warn ${LANG_ENGLISH} "Not removing .torrent association. It is associated with:"
|
||||||
LangString uninst_tor_warn ${LANG_ITALIAN} "Associazione file .torrent non rimossa. File associati con:"
|
LangString uninst_tor_warn ${LANG_ITALIAN} "Associazione file .torrent non rimossa.$\r$\nFile associati con:"
|
||||||
;LangString uninst_mag_warn ${LANG_ENGLISH} "Not removing magnet association. It is associated with:"
|
;LangString uninst_mag_warn ${LANG_ENGLISH} "Not removing magnet association. It is associated with:"
|
||||||
LangString uninst_mag_warn ${LANG_ITALIAN} "Associazione file magnet non rimossa. File associati con:"
|
LangString uninst_mag_warn ${LANG_ITALIAN} "Associazione file magnet non rimossa.$\r$\nFile associati con:"
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_JAPANESE} "qBittorrent を起動"
|
|||||||
LangString inst_requires_64bit ${LANG_JAPANESE} "このインストーラーは 64 ビット版の Windows でのみ実行できます。"
|
LangString inst_requires_64bit ${LANG_JAPANESE} "このインストーラーは 64 ビット版の Windows でのみ実行できます。"
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_JAPANESE} "このバージョンの qBittorrent には Windows 7 以降が必要です。"
|
LangString inst_requires_win7 ${LANG_JAPANESE} "このバージョンの qBittorrent には Windows 7 以降が必要です。"
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_JAPANESE} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_JAPANESE} "qBittorrent をアンインストール"
|
LangString inst_uninstall_link_description ${LANG_JAPANESE} "qBittorrent をアンインストール"
|
||||||
|
|
||||||
|
|||||||
20
dist/windows/installer-translations/korean.nsi
vendored
20
dist/windows/installer-translations/korean.nsi
vendored
@@ -1,11 +1,11 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_KOREAN} "qBittorrent (필요함)"
|
LangString inst_qbt_req ${LANG_KOREAN} "qBittorrent (필요)"
|
||||||
;LangString inst_dekstop ${LANG_ENGLISH} "Create Desktop Shortcut"
|
;LangString inst_dekstop ${LANG_ENGLISH} "Create Desktop Shortcut"
|
||||||
LangString inst_dekstop ${LANG_KOREAN} "바탕화면 바로가기 만들기"
|
LangString inst_dekstop ${LANG_KOREAN} "바탕화면 바로 가기 만들기"
|
||||||
;LangString inst_startmenu ${LANG_ENGLISH} "Create Start Menu Shortcut"
|
;LangString inst_startmenu ${LANG_ENGLISH} "Create Start Menu Shortcut"
|
||||||
LangString inst_startmenu ${LANG_KOREAN} "시작 메뉴 바로가기 만들기"
|
LangString inst_startmenu ${LANG_KOREAN} "시작 메뉴 바로 가기 만들기"
|
||||||
;LangString inst_startup ${LANG_ENGLISH} "Start qBittorrent on Windows start up"
|
;LangString inst_startup ${LANG_ENGLISH} "Start qBittorrent on Windows start up"
|
||||||
LangString inst_startup ${LANG_KOREAN} "Windows 시작 시 qBittorrent 시작"
|
LangString inst_startup ${LANG_KOREAN} "Windows 시작 시 qBittorrent 시작"
|
||||||
;LangString inst_torrent ${LANG_ENGLISH} "Open .torrent files with qBittorrent"
|
;LangString inst_torrent ${LANG_ENGLISH} "Open .torrent files with qBittorrent"
|
||||||
@@ -15,23 +15,25 @@ LangString inst_magnet ${LANG_KOREAN} "qBittorrent로 자석 링크 열기"
|
|||||||
;LangString inst_firewall ${LANG_ENGLISH} "Add Windows Firewall rule"
|
;LangString inst_firewall ${LANG_ENGLISH} "Add Windows Firewall rule"
|
||||||
LangString inst_firewall ${LANG_KOREAN} "Windows 방화벽 규칙 추가"
|
LangString inst_firewall ${LANG_KOREAN} "Windows 방화벽 규칙 추가"
|
||||||
;LangString inst_pathlimit ${LANG_ENGLISH} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
;LangString inst_pathlimit ${LANG_ENGLISH} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
||||||
LangString inst_pathlimit ${LANG_KOREAN} "Windows 경로 길이 제한 비활성화(260자 MAX_PATH 제한, Windows 10 1607 이상 필요)"
|
LangString inst_pathlimit ${LANG_KOREAN} "Windows 경로 길이 제한 비활성화 (260자 MAX_PATH 제한, Windows 10 1607 이상 필요)"
|
||||||
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
||||||
LangString inst_firewallinfo ${LANG_KOREAN} "Windows 방화벽 규칙 추가하는 중"
|
LangString inst_firewallinfo ${LANG_KOREAN} "Windows 방화벽 규칙 추가하는 중"
|
||||||
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
||||||
LangString inst_warning ${LANG_KOREAN} "qBittorrent가 실행 중입니다. 설치하기 전에 응용 프로그램을 닫으십시오."
|
LangString inst_warning ${LANG_KOREAN} "qBittorrent가 실행 중입니다. 설치하기 전에 응용 프로그램을 닫으십시오."
|
||||||
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
||||||
LangString inst_uninstall_question ${LANG_KOREAN} "현재 버전이 삭제됩니다. 사용자 설정과 토렌트는 그대로 유지됩니다."
|
LangString inst_uninstall_question ${LANG_KOREAN} "현재 버전이 제거됩니다. 사용자 설정과 토렌트는 그대로 유지됩니다."
|
||||||
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
||||||
LangString inst_unist ${LANG_KOREAN} "이전 버전을 삭제하는 중입니다."
|
LangString inst_unist ${LANG_KOREAN} "이전 버전을 제거하는 중입니다."
|
||||||
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
||||||
LangString launch_qbt ${LANG_KOREAN} "qBittorrent를 실행합니다."
|
LangString launch_qbt ${LANG_KOREAN} "qBittorrent를 실행합니다."
|
||||||
;LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
;LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
||||||
LangString inst_requires_64bit ${LANG_KOREAN} "이 설치 프로그램은 64비트 윈도우즈 버전에서만 작동합니다."
|
LangString inst_requires_64bit ${LANG_KOREAN} "이 설치 프로그램은 64비트 Windows 버전에서만 작동합니다."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_KOREAN} "이 qBittorrent 버전에는 Windows 7 이상이 필요합니다."
|
LangString inst_requires_win7 ${LANG_KOREAN} "이 qBittorrent 버전에는 Windows 7 이상이 필요합니다."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_KOREAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_KOREAN} "qBittorrent 삭제"
|
LangString inst_uninstall_link_description ${LANG_KOREAN} "qBittorrent 제거"
|
||||||
|
|
||||||
;------------------------------------
|
;------------------------------------
|
||||||
;Uninstaller strings
|
;Uninstaller strings
|
||||||
@@ -39,7 +41,7 @@ LangString inst_uninstall_link_description ${LANG_KOREAN} "qBittorrent 삭제"
|
|||||||
;LangString remove_files ${LANG_ENGLISH} "Remove files"
|
;LangString remove_files ${LANG_ENGLISH} "Remove files"
|
||||||
LangString remove_files ${LANG_KOREAN} "파일 제거"
|
LangString remove_files ${LANG_KOREAN} "파일 제거"
|
||||||
;LangString remove_shortcuts ${LANG_ENGLISH} "Remove shortcuts"
|
;LangString remove_shortcuts ${LANG_ENGLISH} "Remove shortcuts"
|
||||||
LangString remove_shortcuts ${LANG_KOREAN} "바로가기 제거"
|
LangString remove_shortcuts ${LANG_KOREAN} "바로 가기 제거"
|
||||||
;LangString remove_associations ${LANG_ENGLISH} "Remove file associations"
|
;LangString remove_associations ${LANG_ENGLISH} "Remove file associations"
|
||||||
LangString remove_associations ${LANG_KOREAN} "파일 연결 제거"
|
LangString remove_associations ${LANG_KOREAN} "파일 연결 제거"
|
||||||
;LangString remove_registry ${LANG_ENGLISH} "Remove registry keys"
|
;LangString remove_registry ${LANG_ENGLISH} "Remove registry keys"
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_KURDISH} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_KURDISH} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_KURDISH} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_KURDISH} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_KURDISH} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_KURDISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_KURDISH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_KURDISH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
56
dist/windows/installer-translations/latvian.nsi
vendored
56
dist/windows/installer-translations/latvian.nsi
vendored
@@ -1,60 +1,62 @@
|
|||||||
;Installer strings
|
;Installer strings
|
||||||
|
|
||||||
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
;LangString inst_qbt_req ${LANG_ENGLISH} "qBittorrent (required)"
|
||||||
LangString inst_qbt_req ${LANG_LATVIAN} "qBittorrent (required)"
|
LangString inst_qbt_req ${LANG_LATVIAN} "qBittorrent (nepieciešams)"
|
||||||
;LangString inst_dekstop ${LANG_ENGLISH} "Create Desktop Shortcut"
|
;LangString inst_dekstop ${LANG_ENGLISH} "Create Desktop Shortcut"
|
||||||
LangString inst_dekstop ${LANG_LATVIAN} "Create Desktop Shortcut"
|
LangString inst_dekstop ${LANG_LATVIAN} "Izveidot saīsni uz darbvirsmas"
|
||||||
;LangString inst_startmenu ${LANG_ENGLISH} "Create Start Menu Shortcut"
|
;LangString inst_startmenu ${LANG_ENGLISH} "Create Start Menu Shortcut"
|
||||||
LangString inst_startmenu ${LANG_LATVIAN} "Create Start Menu Shortcut"
|
LangString inst_startmenu ${LANG_LATVIAN} "Izveidot izvēlnes Sākt saīsnes"
|
||||||
;LangString inst_startup ${LANG_ENGLISH} "Start qBittorrent on Windows start up"
|
;LangString inst_startup ${LANG_ENGLISH} "Start qBittorrent on Windows start up"
|
||||||
LangString inst_startup ${LANG_LATVIAN} "Start qBittorrent on Windows start up"
|
LangString inst_startup ${LANG_LATVIAN} "Startēt qBittorrent Windows startēšanas laikā"
|
||||||
;LangString inst_torrent ${LANG_ENGLISH} "Open .torrent files with qBittorrent"
|
;LangString inst_torrent ${LANG_ENGLISH} "Open .torrent files with qBittorrent"
|
||||||
LangString inst_torrent ${LANG_LATVIAN} "Open .torrent files with qBittorrent"
|
LangString inst_torrent ${LANG_LATVIAN} "Atvērt .torrent failus ar qBittorrent"
|
||||||
;LangString inst_magnet ${LANG_ENGLISH} "Open magnet links with qBittorrent"
|
;LangString inst_magnet ${LANG_ENGLISH} "Open magnet links with qBittorrent"
|
||||||
LangString inst_magnet ${LANG_LATVIAN} "Open magnet links with qBittorrent"
|
LangString inst_magnet ${LANG_LATVIAN} "Atvērt magnētu saites ar qBittorrent"
|
||||||
;LangString inst_firewall ${LANG_ENGLISH} "Add Windows Firewall rule"
|
;LangString inst_firewall ${LANG_ENGLISH} "Add Windows Firewall rule"
|
||||||
LangString inst_firewall ${LANG_LATVIAN} "Add Windows Firewall rule"
|
LangString inst_firewall ${LANG_LATVIAN} "Pievienot Windows ugunsmūra noteikumu"
|
||||||
;LangString inst_pathlimit ${LANG_ENGLISH} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
;LangString inst_pathlimit ${LANG_ENGLISH} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
||||||
LangString inst_pathlimit ${LANG_LATVIAN} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
LangString inst_pathlimit ${LANG_LATVIAN} "Atspējot Windows ceļa garuma ierobežojumu (260 rakstzīmju MAX_PATH ierobežojums, nepieciešams Windows 10 1607 vai jaunāka versija)"
|
||||||
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
||||||
LangString inst_firewallinfo ${LANG_LATVIAN} "Adding Windows Firewall rule"
|
LangString inst_firewallinfo ${LANG_LATVIAN} "Windows ugunsmūra noteikumu pievienošana"
|
||||||
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
||||||
LangString inst_warning ${LANG_LATVIAN} "qBittorrent is running. Please close the application before installing."
|
LangString inst_warning ${LANG_LATVIAN} "qBittorrent darbojas. Lūdzu, aizveriet programmu pirms instalēšanas."
|
||||||
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
||||||
LangString inst_uninstall_question ${LANG_LATVIAN} "Current version will be uninstalled. User settings and torrents will remain intact."
|
LangString inst_uninstall_question ${LANG_LATVIAN} "Pašreizējā versija tiks atinstalēta. Lietotāju iestatījumi un torrenti paliks neskarti."
|
||||||
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
||||||
LangString inst_unist ${LANG_LATVIAN} "Uninstalling previous version."
|
LangString inst_unist ${LANG_LATVIAN} "Iepriekšējās versijas atinstalēšana."
|
||||||
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
||||||
LangString launch_qbt ${LANG_LATVIAN} "Launch qBittorrent."
|
LangString launch_qbt ${LANG_LATVIAN} "Palaist qBittorrent."
|
||||||
;LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
;LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
||||||
LangString inst_requires_64bit ${LANG_LATVIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_LATVIAN} "Šī instalēšanas programma darbojas tikai 64 bitu Windows versijās."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_LATVIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_LATVIAN} "Šai qBittorrent versijai ir nepieciešama vismaz Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_LATVIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_LATVIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_LATVIAN} "Atinstalēt qBittorrent"
|
||||||
|
|
||||||
;------------------------------------
|
;------------------------------------
|
||||||
;Uninstaller strings
|
;Uninstaller strings
|
||||||
|
|
||||||
;LangString remove_files ${LANG_ENGLISH} "Remove files"
|
;LangString remove_files ${LANG_ENGLISH} "Remove files"
|
||||||
LangString remove_files ${LANG_LATVIAN} "Remove files"
|
LangString remove_files ${LANG_LATVIAN} "Dzēš failus"
|
||||||
;LangString remove_shortcuts ${LANG_ENGLISH} "Remove shortcuts"
|
;LangString remove_shortcuts ${LANG_ENGLISH} "Remove shortcuts"
|
||||||
LangString remove_shortcuts ${LANG_LATVIAN} "Remove shortcuts"
|
LangString remove_shortcuts ${LANG_LATVIAN} "Dzēš saīsnes"
|
||||||
;LangString remove_associations ${LANG_ENGLISH} "Remove file associations"
|
;LangString remove_associations ${LANG_ENGLISH} "Remove file associations"
|
||||||
LangString remove_associations ${LANG_LATVIAN} "Remove file associations"
|
LangString remove_associations ${LANG_LATVIAN} "Noņem failu asociācijas"
|
||||||
;LangString remove_registry ${LANG_ENGLISH} "Remove registry keys"
|
;LangString remove_registry ${LANG_ENGLISH} "Remove registry keys"
|
||||||
LangString remove_registry ${LANG_LATVIAN} "Remove registry keys"
|
LangString remove_registry ${LANG_LATVIAN} "Dzēš reģistra atslēgas"
|
||||||
;LangString remove_conf ${LANG_ENGLISH} "Remove configuration files"
|
;LangString remove_conf ${LANG_ENGLISH} "Remove configuration files"
|
||||||
LangString remove_conf ${LANG_LATVIAN} "Remove configuration files"
|
LangString remove_conf ${LANG_LATVIAN} "Dzēš konfigurācijas failus"
|
||||||
;LangString remove_firewall ${LANG_ENGLISH} "Remove Windows Firewall rule"
|
;LangString remove_firewall ${LANG_ENGLISH} "Remove Windows Firewall rule"
|
||||||
LangString remove_firewall ${LANG_LATVIAN} "Remove Windows Firewall rule"
|
LangString remove_firewall ${LANG_LATVIAN} "Dzēst Windows ugunsmūra noteikumu"
|
||||||
;LangString remove_firewallinfo ${LANG_ENGLISH} "Removing Windows Firewall rule"
|
;LangString remove_firewallinfo ${LANG_ENGLISH} "Removing Windows Firewall rule"
|
||||||
LangString remove_firewallinfo ${LANG_LATVIAN} "Removing Windows Firewall rule"
|
LangString remove_firewallinfo ${LANG_LATVIAN} "Dzēš Windows ugunsmūra noteikumu"
|
||||||
;LangString remove_cache ${LANG_ENGLISH} "Remove torrents and cached data"
|
;LangString remove_cache ${LANG_ENGLISH} "Remove torrents and cached data"
|
||||||
LangString remove_cache ${LANG_LATVIAN} "Remove torrents and cached data"
|
LangString remove_cache ${LANG_LATVIAN} "Dzēš torrentus un kešatmiņas datus"
|
||||||
;LangString uninst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before uninstalling."
|
;LangString uninst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before uninstalling."
|
||||||
LangString uninst_warning ${LANG_LATVIAN} "qBittorrent is running. Please close the application before uninstalling."
|
LangString uninst_warning ${LANG_LATVIAN} "qBittorrent darbojas. Lūdzu, aizveriet programmu pirms atinstalēšanas."
|
||||||
;LangString uninst_tor_warn ${LANG_ENGLISH} "Not removing .torrent association. It is associated with:"
|
;LangString uninst_tor_warn ${LANG_ENGLISH} "Not removing .torrent association. It is associated with:"
|
||||||
LangString uninst_tor_warn ${LANG_LATVIAN} "Not removing .torrent association. It is associated with:"
|
LangString uninst_tor_warn ${LANG_LATVIAN} "Netiek dzēsta .torrent asociācija. Tā ir saistīta ar:"
|
||||||
;LangString uninst_mag_warn ${LANG_ENGLISH} "Not removing magnet association. It is associated with:"
|
;LangString uninst_mag_warn ${LANG_ENGLISH} "Not removing magnet association. It is associated with:"
|
||||||
LangString uninst_mag_warn ${LANG_LATVIAN} "Not removing magnet association. It is associated with:"
|
LangString uninst_mag_warn ${LANG_LATVIAN} "Netiek dzēsta magnēta asociācija. Tā ir saistīta ar:"
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_LITHUANIAN} "Paleisti qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_LITHUANIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_LITHUANIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_LITHUANIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_LITHUANIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_LITHUANIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_LITHUANIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_LITHUANIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_LUXEMBOURGISH} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_LUXEMBOURGISH} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_LUXEMBOURGISH} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_LUXEMBOURGISH} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_LUXEMBOURGISH} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_LUXEMBOURGISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_LUXEMBOURGISH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_LUXEMBOURGISH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_MACEDONIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_MACEDONIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_MACEDONIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_MACEDONIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_MACEDONIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_MACEDONIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_MACEDONIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_MACEDONIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_MALAY} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_MALAY} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_MALAY} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_MALAY} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_MALAY} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_MALAY} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_MALAY} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_MALAY} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_MONGOLIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_MONGOLIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_MONGOLIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_MONGOLIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_MONGOLIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_MONGOLIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_MONGOLIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_MONGOLIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_NORWEGIAN} "Sett i gang qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_NORWEGIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_NORWEGIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_NORWEGIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_NORWEGIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_NORWEGIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_NORWEGIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_NORWEGIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_NORWEGIANNYNORSK} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_NORWEGIANNYNORSK} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_NORWEGIANNYNORSK} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_NORWEGIANNYNORSK} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_NORWEGIANNYNORSK} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_NORWEGIANNYNORSK} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_NORWEGIANNYNORSK} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_NORWEGIANNYNORSK} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_POLISH} "Uruchom qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_POLISH} "Ten instalator działa tylko w 64-bitowych wersjach systemu Windows."
|
LangString inst_requires_64bit ${LANG_POLISH} "Ten instalator działa tylko w 64-bitowych wersjach systemu Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_POLISH} "Ta wersja qBittorrent wymaga co najmniej systemu Windows 7."
|
LangString inst_requires_win7 ${LANG_POLISH} "Ta wersja qBittorrent wymaga co najmniej systemu Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_POLISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_POLISH} "Odinstaluj qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_POLISH} "Odinstaluj qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -15,23 +15,25 @@ LangString inst_magnet ${LANG_PORTUGUESE} "Abrir ligações magnet com o qBittor
|
|||||||
;LangString inst_firewall ${LANG_ENGLISH} "Add Windows Firewall rule"
|
;LangString inst_firewall ${LANG_ENGLISH} "Add Windows Firewall rule"
|
||||||
LangString inst_firewall ${LANG_PORTUGUESE} "Adicionar regra à firewall do Windows"
|
LangString inst_firewall ${LANG_PORTUGUESE} "Adicionar regra à firewall do Windows"
|
||||||
;LangString inst_pathlimit ${LANG_ENGLISH} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
;LangString inst_pathlimit ${LANG_ENGLISH} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
||||||
LangString inst_pathlimit ${LANG_PORTUGUESE} "Disable Windows path length limit (260 character MAX_PATH limitation, requires Windows 10 1607 or later)"
|
LangString inst_pathlimit ${LANG_PORTUGUESE} "Desativar o limite do tamanho do caminho do Windows (limitação de MAX_PATH de 260 caracteres, requer o Windows 10 1607 ou superior)"
|
||||||
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
;LangString inst_firewallinfo ${LANG_ENGLISH} "Adding Windows Firewall rule"
|
||||||
LangString inst_firewallinfo ${LANG_PORTUGUESE} "Adicionando regra à firewall do Windows"
|
LangString inst_firewallinfo ${LANG_PORTUGUESE} "A adicionar regra à firewall do Windows"
|
||||||
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
;LangString inst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before installing."
|
||||||
LangString inst_warning ${LANG_PORTUGUESE} "O qBittorrent está a ser executado. Feche a aplicação antes de instalar esta versão."
|
LangString inst_warning ${LANG_PORTUGUESE} "O qBittorrent está a ser executado. Por favor, feche a aplicação antes de instalar esta versão."
|
||||||
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
;LangString inst_uninstall_question ${LANG_ENGLISH} "Current version will be uninstalled. User settings and torrents will remain intact."
|
||||||
LangString inst_uninstall_question ${LANG_PORTUGUESE} "Uma antiga instalação foi encontrada.Essa mesma será desinstalada sem apagar as definições do usuário."
|
LangString inst_uninstall_question ${LANG_PORTUGUESE} "A versão atual será desinstalada. As definições do utilizador e os torrents permanecerão intactas."
|
||||||
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
;LangString inst_unist ${LANG_ENGLISH} "Uninstalling previous version."
|
||||||
LangString inst_unist ${LANG_PORTUGUESE} "A desinstalar versão anterior."
|
LangString inst_unist ${LANG_PORTUGUESE} "A desinstalar versão anterior."
|
||||||
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
;LangString launch_qbt ${LANG_ENGLISH} "Launch qBittorrent."
|
||||||
LangString launch_qbt ${LANG_PORTUGUESE} "Iniciar qBittorrent."
|
LangString launch_qbt ${LANG_PORTUGUESE} "Iniciar qBittorrent."
|
||||||
;LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
;LangString inst_requires_64bit ${LANG_ENGLISH} "This installer works only in 64-bit Windows versions."
|
||||||
LangString inst_requires_64bit ${LANG_PORTUGUESE} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_PORTUGUESE} "Este instalador funciona apenas em versões Windows de 64 bits."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_PORTUGUESE} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_PORTUGUESE} "Esta versão qBittorrent requer pelo menos o Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_PORTUGUESE} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_PORTUGUESE} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_PORTUGUESE} "Desinstalar qBittorrent"
|
||||||
|
|
||||||
;------------------------------------
|
;------------------------------------
|
||||||
;Uninstaller strings
|
;Uninstaller strings
|
||||||
@@ -41,7 +43,7 @@ LangString remove_files ${LANG_PORTUGUESE} "Remover ficheiros"
|
|||||||
;LangString remove_shortcuts ${LANG_ENGLISH} "Remove shortcuts"
|
;LangString remove_shortcuts ${LANG_ENGLISH} "Remove shortcuts"
|
||||||
LangString remove_shortcuts ${LANG_PORTUGUESE} "Remover atalhos"
|
LangString remove_shortcuts ${LANG_PORTUGUESE} "Remover atalhos"
|
||||||
;LangString remove_associations ${LANG_ENGLISH} "Remove file associations"
|
;LangString remove_associations ${LANG_ENGLISH} "Remove file associations"
|
||||||
LangString remove_associations ${LANG_PORTUGUESE} "Remove associação de ficheiros"
|
LangString remove_associations ${LANG_PORTUGUESE} "Remover associação de ficheiros"
|
||||||
;LangString remove_registry ${LANG_ENGLISH} "Remove registry keys"
|
;LangString remove_registry ${LANG_ENGLISH} "Remove registry keys"
|
||||||
LangString remove_registry ${LANG_PORTUGUESE} "Remover chaves de registo"
|
LangString remove_registry ${LANG_PORTUGUESE} "Remover chaves de registo"
|
||||||
;LangString remove_conf ${LANG_ENGLISH} "Remove configuration files"
|
;LangString remove_conf ${LANG_ENGLISH} "Remove configuration files"
|
||||||
@@ -49,12 +51,12 @@ LangString remove_conf ${LANG_PORTUGUESE} "Remover ficheiros de configuração"
|
|||||||
;LangString remove_firewall ${LANG_ENGLISH} "Remove Windows Firewall rule"
|
;LangString remove_firewall ${LANG_ENGLISH} "Remove Windows Firewall rule"
|
||||||
LangString remove_firewall ${LANG_PORTUGUESE} "Remover regra da firewall do Windows"
|
LangString remove_firewall ${LANG_PORTUGUESE} "Remover regra da firewall do Windows"
|
||||||
;LangString remove_firewallinfo ${LANG_ENGLISH} "Removing Windows Firewall rule"
|
;LangString remove_firewallinfo ${LANG_ENGLISH} "Removing Windows Firewall rule"
|
||||||
LangString remove_firewallinfo ${LANG_PORTUGUESE} "Removendo regra da firewall do Windows"
|
LangString remove_firewallinfo ${LANG_PORTUGUESE} "A remover regra da firewall do Windows"
|
||||||
;LangString remove_cache ${LANG_ENGLISH} "Remove torrents and cached data"
|
;LangString remove_cache ${LANG_ENGLISH} "Remove torrents and cached data"
|
||||||
LangString remove_cache ${LANG_PORTUGUESE} "Remover torrents e dados guardados"
|
LangString remove_cache ${LANG_PORTUGUESE} "Remover torrents e dados guardados"
|
||||||
;LangString uninst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before uninstalling."
|
;LangString uninst_warning ${LANG_ENGLISH} "qBittorrent is running. Please close the application before uninstalling."
|
||||||
LangString uninst_warning ${LANG_PORTUGUESE} "O qBittorrent está a ser executado. Feche a aplicação antes de desinstalar esta versão."
|
LangString uninst_warning ${LANG_PORTUGUESE} "O qBittorrent está a ser executado. Por favor, feche a aplicação antes de desinstalar esta versão."
|
||||||
;LangString uninst_tor_warn ${LANG_ENGLISH} "Not removing .torrent association. It is associated with:"
|
;LangString uninst_tor_warn ${LANG_ENGLISH} "Not removing .torrent association. It is associated with:"
|
||||||
LangString uninst_tor_warn ${LANG_PORTUGUESE} "Associação .torrent não removida. Ficheiros associados a:"
|
LangString uninst_tor_warn ${LANG_PORTUGUESE} "Não pode remover a associação do .torrent. Está associado a:"
|
||||||
;LangString uninst_mag_warn ${LANG_ENGLISH} "Not removing magnet association. It is associated with:"
|
;LangString uninst_mag_warn ${LANG_ENGLISH} "Not removing magnet association. It is associated with:"
|
||||||
LangString uninst_mag_warn ${LANG_PORTUGUESE} "Associação magnet nã removida. Ligações associadas a:"
|
LangString uninst_mag_warn ${LANG_PORTUGUESE} "Não pode remover a associação do magnet. Está associado a:"
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_PORTUGUESEBR} "Executar o qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_PORTUGUESEBR} "Este instalador só funciona nas versões 64 bits do Windows."
|
LangString inst_requires_64bit ${LANG_PORTUGUESEBR} "Este instalador só funciona nas versões 64 bits do Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_PORTUGUESEBR} "Esta versão do qBittorrent requer no mínimo o Windows 7."
|
LangString inst_requires_win7 ${LANG_PORTUGUESEBR} "Esta versão do qBittorrent requer no mínimo o Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_PORTUGUESEBR} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_PORTUGUESEBR} "Desinstalar o qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_PORTUGUESEBR} "Desinstalar o qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_ROMANIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_ROMANIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_ROMANIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_ROMANIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_ROMANIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_ROMANIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_ROMANIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_ROMANIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_RUSSIAN} "Запустить qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_RUSSIAN} "Этот установщик работает только на 64-битных версиях Windows."
|
LangString inst_requires_64bit ${LANG_RUSSIAN} "Этот установщик работает только на 64-битных версиях Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_RUSSIAN} "Для работы этой версии qBittorrent требуется Windows 7 или выше."
|
LangString inst_requires_win7 ${LANG_RUSSIAN} "Для работы этой версии qBittorrent требуется Windows 7 или выше."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_RUSSIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_RUSSIAN} "Удалить qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_RUSSIAN} "Удалить qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SERBIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SERBIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_SERBIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SERBIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_SERBIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SERBIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SERBIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SERBIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SERBIANLATIN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SERBIANLATIN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_SERBIANLATIN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SERBIANLATIN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_SERBIANLATIN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SERBIANLATIN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SERBIANLATIN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SERBIANLATIN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SIMPCHINESE} "启动 qBittorrent。"
|
|||||||
LangString inst_requires_64bit ${LANG_SIMPCHINESE} "此安装程序仅支持 64 位 Windows 系统。"
|
LangString inst_requires_64bit ${LANG_SIMPCHINESE} "此安装程序仅支持 64 位 Windows 系统。"
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SIMPCHINESE} "这个版本的 qBittorrent 仅支持 Windows 7 及更新的系统。"
|
LangString inst_requires_win7 ${LANG_SIMPCHINESE} "这个版本的 qBittorrent 仅支持 Windows 7 及更新的系统。"
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SIMPCHINESE} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SIMPCHINESE} "卸载 qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SIMPCHINESE} "卸载 qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SLOVAK} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SLOVAK} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_SLOVAK} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SLOVAK} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_SLOVAK} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SLOVAK} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SLOVAK} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SLOVAK} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SLOVENIAN} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SLOVENIAN} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_SLOVENIAN} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SLOVENIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_SLOVENIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SLOVENIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SLOVENIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SLOVENIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SPANISH} "Iniciar qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SPANISH} "Este instalador solo funciona en versiones de 64-bit de Windows."
|
LangString inst_requires_64bit ${LANG_SPANISH} "Este instalador solo funciona en versiones de 64-bit de Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SPANISH} "Esta versión de qBittorrent requiere Windows 7 o superior."
|
LangString inst_requires_win7 ${LANG_SPANISH} "Esta versión de qBittorrent requiere Windows 7 o superior."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SPANISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SPANISH} "Desinstalar qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SPANISH} "Desinstalar qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SPANISHINTERNATIONAL} "Iniciar qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SPANISHINTERNATIONAL} "Este instalador solo funciona en versiones de 64-bit de Windows."
|
LangString inst_requires_64bit ${LANG_SPANISHINTERNATIONAL} "Este instalador solo funciona en versiones de 64-bit de Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SPANISHINTERNATIONAL} "Esta versión de qBittorrent requiere Windows 7 o superior."
|
LangString inst_requires_win7 ${LANG_SPANISHINTERNATIONAL} "Esta versión de qBittorrent requiere Windows 7 o superior."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SPANISHINTERNATIONAL} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SPANISHINTERNATIONAL} "Desinstalar qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SPANISHINTERNATIONAL} "Desinstalar qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_SWEDISH} "Kör qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_SWEDISH} "Installationsprogrammet fungerar endast i 64-bitars Windows-versioner."
|
LangString inst_requires_64bit ${LANG_SWEDISH} "Installationsprogrammet fungerar endast i 64-bitars Windows-versioner."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_SWEDISH} "Den här qBittorrent-versionen kräver minst Windows 7."
|
LangString inst_requires_win7 ${LANG_SWEDISH} "Den här qBittorrent-versionen kräver minst Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_SWEDISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_SWEDISH} "Avinstallera qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_SWEDISH} "Avinstallera qBittorrent"
|
||||||
|
|
||||||
|
|||||||
2
dist/windows/installer-translations/thai.nsi
vendored
2
dist/windows/installer-translations/thai.nsi
vendored
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_THAI} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_THAI} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_THAI} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_THAI} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_THAI} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_THAI} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_THAI} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_THAI} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_TRADCHINESE} "啟動 qBittorrent"
|
|||||||
LangString inst_requires_64bit ${LANG_TRADCHINESE} "此安裝程式僅支援 64 位元版本的 Windows。"
|
LangString inst_requires_64bit ${LANG_TRADCHINESE} "此安裝程式僅支援 64 位元版本的 Windows。"
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_TRADCHINESE} "此 qBittorrent 版本僅支援 Windows 7 以上的系統。"
|
LangString inst_requires_win7 ${LANG_TRADCHINESE} "此 qBittorrent 版本僅支援 Windows 7 以上的系統。"
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_TRADCHINESE} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_TRADCHINESE} "移除 qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_TRADCHINESE} "移除 qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_TURKISH} "qBittorrent'i başlat"
|
|||||||
LangString inst_requires_64bit ${LANG_TURKISH} "Bu yükleyici sadece 64-bit Windows sürümlerinde çalışır."
|
LangString inst_requires_64bit ${LANG_TURKISH} "Bu yükleyici sadece 64-bit Windows sürümlerinde çalışır."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_TURKISH} "Bu qBittorrent sürümü en az Windows 7 gerektirir."
|
LangString inst_requires_win7 ${LANG_TURKISH} "Bu qBittorrent sürümü en az Windows 7 gerektirir."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_TURKISH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_TURKISH} "qBittorrent'i kaldır"
|
LangString inst_uninstall_link_description ${LANG_TURKISH} "qBittorrent'i kaldır"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_UKRAINIAN} "Запустити qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_UKRAINIAN} "Ця програма установки працює тільки в 64-розрядних версіях Windows."
|
LangString inst_requires_64bit ${LANG_UKRAINIAN} "Ця програма установки працює тільки в 64-розрядних версіях Windows."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_UKRAINIAN} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_UKRAINIAN} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_UKRAINIAN} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_UKRAINIAN} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_UKRAINIAN} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_UZBEK} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_UZBEK} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_UZBEK} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_UZBEK} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_UZBEK} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_UZBEK} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_UZBEK} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_UZBEK} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,8 @@ LangString launch_qbt ${LANG_WELSH} "Launch qBittorrent."
|
|||||||
LangString inst_requires_64bit ${LANG_WELSH} "This installer works only in 64-bit Windows versions."
|
LangString inst_requires_64bit ${LANG_WELSH} "This installer works only in 64-bit Windows versions."
|
||||||
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
;LangString inst_requires_win7 ${LANG_ENGLISH} "This qBittorrent version requires at least Windows 7."
|
||||||
LangString inst_requires_win7 ${LANG_WELSH} "This qBittorrent version requires at least Windows 7."
|
LangString inst_requires_win7 ${LANG_WELSH} "This qBittorrent version requires at least Windows 7."
|
||||||
|
;LangString inst_requires_win10 ${LANG_ENGLISH} "This installer requires at least Windows 10 1809."
|
||||||
|
LangString inst_requires_win10 ${LANG_WELSH} "This installer requires at least Windows 10 1809."
|
||||||
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
;LangString inst_uninstall_link_description ${LANG_ENGLISH} "Uninstall qBittorrent"
|
||||||
LangString inst_uninstall_link_description ${LANG_WELSH} "Uninstall qBittorrent"
|
LangString inst_uninstall_link_description ${LANG_WELSH} "Uninstall qBittorrent"
|
||||||
|
|
||||||
|
|||||||
42
dist/windows/installer.nsi
vendored
42
dist/windows/installer.nsi
vendored
@@ -24,33 +24,28 @@ Section $(inst_qbt_req) ;"qBittorrent (required)"
|
|||||||
|
|
||||||
; Set output path to the installation directory.
|
; Set output path to the installation directory.
|
||||||
SetOutPath $INSTDIR
|
SetOutPath $INSTDIR
|
||||||
|
; Put files there
|
||||||
;Create 'translations' directory
|
|
||||||
CreateDirectory $INSTDIR\translations
|
|
||||||
|
|
||||||
; Put file there
|
|
||||||
File "qbittorrent.exe"
|
File "qbittorrent.exe"
|
||||||
File "qbittorrent.pdb"
|
File "qbittorrent.pdb"
|
||||||
File "qt.conf"
|
File "qt.conf"
|
||||||
File /r "qtbase_*.qm" ; omit translations folder path to preserve folder structure
|
|
||||||
File /oname=translations\qt_fa.qm "translations\qt_fa.qm"
|
;Create 'translations' directory
|
||||||
File /oname=translations\qt_gl.qm "translations\qt_gl.qm"
|
CreateDirectory $INSTDIR\translations
|
||||||
File /oname=translations\qt_lt.qm "translations\qt_lt.qm"
|
; Set output path to the installation\translations directory.
|
||||||
File /oname=translations\qt_pt.qm "translations\qt_pt.qm"
|
SetOutPath "$INSTDIR\translations"
|
||||||
File /oname=translations\qt_sl.qm "translations\qt_sl.qm"
|
; Put files there
|
||||||
File /oname=translations\qt_sv.qm "translations\qt_sv.qm"
|
File /r "translations\qt*.qm"
|
||||||
File /oname=translations\qt_zh_CN.qm "translations\qt_zh_CN.qm"
|
|
||||||
|
|
||||||
; Write the installation path into the registry
|
; Write the installation path into the registry
|
||||||
WriteRegStr HKLM "Software\qBittorrent" "InstallLocation" "$INSTDIR"
|
WriteRegStr HKLM "Software\qBittorrent" "InstallLocation" "$INSTDIR"
|
||||||
|
|
||||||
; Write the uninstall keys for Windows
|
; Write the uninstall keys for Windows
|
||||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "DisplayName" "qBittorrent ${PROG_VERSION}"
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "DisplayName" "qBittorrent"
|
||||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "UninstallString" '"$INSTDIR\uninst.exe"'
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "UninstallString" '"$INSTDIR\uninst.exe"'
|
||||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "DisplayIcon" '"$INSTDIR\qbittorrent.exe",0'
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "DisplayIcon" '"$INSTDIR\qbittorrent.exe",0'
|
||||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "Publisher" "The qBittorrent project"
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "Publisher" "The qBittorrent project"
|
||||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "URLInfoAbout" "https://www.qbittorrent.org"
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "URLInfoAbout" "https://www.qbittorrent.org"
|
||||||
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "DisplayVersion" "${PROG_VERSION}"
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "DisplayVersion" "${QBT_VERSION}"
|
||||||
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "NoModify" 1
|
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "NoModify" 1
|
||||||
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "NoRepair" 1
|
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\qBittorrent" "NoRepair" 1
|
||||||
WriteUninstaller "uninst.exe"
|
WriteUninstaller "uninst.exe"
|
||||||
@@ -180,12 +175,19 @@ Function .onInit
|
|||||||
!insertmacro Init "installer"
|
!insertmacro Init "installer"
|
||||||
!insertmacro MUI_LANGDLL_DISPLAY
|
!insertmacro MUI_LANGDLL_DISPLAY
|
||||||
|
|
||||||
${IfNot} ${AtLeastWin7}
|
!ifndef QBT_USES_QT6
|
||||||
MessageBox MB_OK|MB_ICONEXCLAMATION $(inst_requires_win7)
|
${IfNot} ${AtLeastWin7}
|
||||||
Abort
|
MessageBox MB_OK|MB_ICONEXCLAMATION $(inst_requires_win7)
|
||||||
${EndIf}
|
Abort
|
||||||
|
${EndIf}
|
||||||
|
!else
|
||||||
|
${IfNot} ${AtLeastWaaS} 1809 ; Windows 10 1809. Min supported version by Qt6
|
||||||
|
MessageBox MB_OK|MB_ICONEXCLAMATION $(inst_requires_win10)
|
||||||
|
Abort
|
||||||
|
${EndIf}
|
||||||
|
!endif
|
||||||
|
|
||||||
!ifdef APP64BIT
|
!ifdef QBT_IS_X64
|
||||||
${IfNot} ${RunningX64}
|
${IfNot} ${RunningX64}
|
||||||
MessageBox MB_OK|MB_ICONEXCLAMATION $(inst_requires_64bit)
|
MessageBox MB_OK|MB_ICONEXCLAMATION $(inst_requires_64bit)
|
||||||
Abort
|
Abort
|
||||||
|
|||||||
2
dist/windows/qbittorrent.nsi
vendored
2
dist/windows/qbittorrent.nsi
vendored
@@ -1,4 +1,4 @@
|
|||||||
!include options.nsi
|
!include config.nsi
|
||||||
!include translations.nsi
|
!include translations.nsi
|
||||||
!include installer.nsi
|
!include installer.nsi
|
||||||
!include uninstaller.nsi
|
!include uninstaller.nsi
|
||||||
|
|||||||
@@ -220,7 +220,9 @@ void Application::setMemoryWorkingSetLimit(const int size)
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
m_storeMemoryWorkingSetLimit = size;
|
m_storeMemoryWorkingSetLimit = size;
|
||||||
|
#ifdef QBT_USES_LIBTORRENT2
|
||||||
applyMemoryWorkingSetLimit();
|
applyMemoryWorkingSetLimit();
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -621,7 +623,7 @@ void Application::processParams(const QStringList ¶ms)
|
|||||||
|
|
||||||
int Application::exec(const QStringList ¶ms)
|
int Application::exec(const QStringList ¶ms)
|
||||||
{
|
{
|
||||||
#ifdef Q_OS_WIN
|
#if (defined(Q_OS_WIN) && defined(QBT_USES_LIBTORRENT2))
|
||||||
applyMemoryWorkingSetLimit();
|
applyMemoryWorkingSetLimit();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -794,7 +796,7 @@ void Application::shutdownCleanup(QSessionManager &manager)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef Q_OS_WIN
|
#if (defined(Q_OS_WIN) && defined(QBT_USES_LIBTORRENT2))
|
||||||
void Application::applyMemoryWorkingSetLimit()
|
void Application::applyMemoryWorkingSetLimit()
|
||||||
{
|
{
|
||||||
const SIZE_T UNIT_SIZE = 1024 * 1024; // MiB
|
const SIZE_T UNIT_SIZE = 1024 * 1024; // MiB
|
||||||
|
|||||||
@@ -126,7 +126,7 @@ private slots:
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
private:
|
private:
|
||||||
#ifdef Q_OS_WIN
|
#if (defined(Q_OS_WIN) && defined(QBT_USES_LIBTORRENT2))
|
||||||
void applyMemoryWorkingSetLimit();
|
void applyMemoryWorkingSetLimit();
|
||||||
#endif
|
#endif
|
||||||
void initializeTranslation();
|
void initializeTranslation();
|
||||||
|
|||||||
@@ -1335,7 +1335,7 @@ void Session::loadLTSettings(lt::settings_pack &settingsPack)
|
|||||||
|
|
||||||
// Outgoing ports
|
// Outgoing ports
|
||||||
settingsPack.set_int(lt::settings_pack::outgoing_port, outgoingPortsMin());
|
settingsPack.set_int(lt::settings_pack::outgoing_port, outgoingPortsMin());
|
||||||
settingsPack.set_int(lt::settings_pack::num_outgoing_ports, outgoingPortsMax() - outgoingPortsMin() + 1);
|
settingsPack.set_int(lt::settings_pack::num_outgoing_ports, (outgoingPortsMax() - outgoingPortsMin()));
|
||||||
// UPnP lease duration
|
// UPnP lease duration
|
||||||
settingsPack.set_int(lt::settings_pack::upnp_lease_duration, UPnPLeaseDuration());
|
settingsPack.set_int(lt::settings_pack::upnp_lease_duration, UPnPLeaseDuration());
|
||||||
// Type of service
|
// Type of service
|
||||||
@@ -3061,6 +3061,11 @@ void Session::applyOSMemoryPriority() const
|
|||||||
if (!setProcessInformation) // only available on Windows >= 8
|
if (!setProcessInformation) // only available on Windows >= 8
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
using SETTHREADINFORMATION = BOOL (WINAPI *)(HANDLE, THREAD_INFORMATION_CLASS, LPVOID, DWORD);
|
||||||
|
const auto setThreadInformation = Utils::Misc::loadWinAPI<SETTHREADINFORMATION>("Kernel32.dll", "SetThreadInformation");
|
||||||
|
if (!setThreadInformation) // only available on Windows >= 8
|
||||||
|
return;
|
||||||
|
|
||||||
#if (_WIN32_WINNT < _WIN32_WINNT_WIN8)
|
#if (_WIN32_WINNT < _WIN32_WINNT_WIN8)
|
||||||
// this dummy struct is required to compile successfully when targeting older Windows version
|
// this dummy struct is required to compile successfully when targeting older Windows version
|
||||||
struct MEMORY_PRIORITY_INFORMATION
|
struct MEMORY_PRIORITY_INFORMATION
|
||||||
@@ -3097,6 +3102,11 @@ void Session::applyOSMemoryPriority() const
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
setProcessInformation(::GetCurrentProcess(), ProcessMemoryPriority, &prioInfo, sizeof(prioInfo));
|
setProcessInformation(::GetCurrentProcess(), ProcessMemoryPriority, &prioInfo, sizeof(prioInfo));
|
||||||
|
|
||||||
|
// To avoid thrashing/sluggishness of the app, set "main event loop" thread to normal memory priority
|
||||||
|
// which is higher/equal than other threads
|
||||||
|
prioInfo.MemoryPriority = MEMORY_PRIORITY_NORMAL;
|
||||||
|
setThreadInformation(::GetCurrentThread(), ThreadMemoryPriority, &prioInfo, sizeof(prioInfo));
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -4527,6 +4537,24 @@ void Session::startUpTorrents()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Algorithm::removeIf(resumeData.tags, [this, &torrentID](const QString &tag)
|
||||||
|
{
|
||||||
|
if (hasTag(tag))
|
||||||
|
return false;
|
||||||
|
|
||||||
|
if (addTag(tag))
|
||||||
|
{
|
||||||
|
LogMsg(tr("Detected inconsistent data: tag is missing from the configuration file."
|
||||||
|
" Tag will be recovered."
|
||||||
|
" Torrent: \"%1\". Tag: \"%2\"").arg(torrentID.toString(), tag), Log::WARNING);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
LogMsg(tr("Detected inconsistent data: invalid tag. Torrent: \"%1\". Tag: \"%2\"")
|
||||||
|
.arg(torrentID.toString(), tag), Log::WARNING);
|
||||||
|
return true;
|
||||||
|
});
|
||||||
|
|
||||||
qDebug() << "Starting up torrent" << torrentID.toString() << "...";
|
qDebug() << "Starting up torrent" << torrentID.toString() << "...";
|
||||||
if (!loadTorrent(resumeData))
|
if (!loadTorrent(resumeData))
|
||||||
{
|
{
|
||||||
@@ -4887,7 +4915,14 @@ void Session::handleMetadataReceivedAlert(const lt::metadata_received_alert *p)
|
|||||||
|
|
||||||
if (downloadedMetadataIter != m_downloadedMetadata.end())
|
if (downloadedMetadataIter != m_downloadedMetadata.end())
|
||||||
{
|
{
|
||||||
|
#if LIBTORRENT_VERSION_NUM >= 20007
|
||||||
|
lt::torrent_info nativeInfo = *p->handle.torrent_file();
|
||||||
|
for (const lt::announce_entry &announceEntry : p->handle.trackers())
|
||||||
|
nativeInfo.add_tracker(announceEntry.url, announceEntry.tier);
|
||||||
|
const TorrentInfo metadata {nativeInfo};
|
||||||
|
#else
|
||||||
const TorrentInfo metadata {*p->handle.torrent_file()};
|
const TorrentInfo metadata {*p->handle.torrent_file()};
|
||||||
|
#endif
|
||||||
|
|
||||||
m_downloadedMetadata.erase(downloadedMetadataIter);
|
m_downloadedMetadata.erase(downloadedMetadataIter);
|
||||||
--m_extraLimit;
|
--m_extraLimit;
|
||||||
|
|||||||
@@ -501,6 +501,9 @@ void TorrentImpl::setAutoTMMEnabled(bool enabled)
|
|||||||
|
|
||||||
QString TorrentImpl::actualStorageLocation() const
|
QString TorrentImpl::actualStorageLocation() const
|
||||||
{
|
{
|
||||||
|
if (!hasMetadata())
|
||||||
|
return {};
|
||||||
|
|
||||||
return Utils::Fs::toUniformPath(QString::fromStdString(m_nativeStatus.save_path));
|
return Utils::Fs::toUniformPath(QString::fromStdString(m_nativeStatus.save_path));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1634,6 +1637,12 @@ void TorrentImpl::resume(const TorrentOperatingMode mode)
|
|||||||
|
|
||||||
void TorrentImpl::moveStorage(const QString &newPath, const MoveStorageMode mode)
|
void TorrentImpl::moveStorage(const QString &newPath, const MoveStorageMode mode)
|
||||||
{
|
{
|
||||||
|
if (!hasMetadata())
|
||||||
|
{
|
||||||
|
m_session->handleTorrentSavePathChanged(this);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (m_session->addMoveTorrentStorageJob(this, Utils::Fs::toNativePath(newPath), mode))
|
if (m_session->addMoveTorrentStorageJob(this, Utils::Fs::toNativePath(newPath), mode))
|
||||||
{
|
{
|
||||||
m_storageIsMoving = true;
|
m_storageIsMoving = true;
|
||||||
|
|||||||
@@ -34,10 +34,13 @@
|
|||||||
|
|
||||||
#include "base/3rdparty/expected.hpp"
|
#include "base/3rdparty/expected.hpp"
|
||||||
#include "base/utils/fs.h"
|
#include "base/utils/fs.h"
|
||||||
#include "base/utils/gzip.h"
|
|
||||||
#include "base/utils/io.h"
|
#include "base/utils/io.h"
|
||||||
#include "base/utils/misc.h"
|
#include "base/utils/misc.h"
|
||||||
|
|
||||||
|
#ifdef QT_NO_COMPRESS
|
||||||
|
#include "base/utils/gzip.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
const int MAX_REDIRECTIONS = 20; // the common value for web browsers
|
const int MAX_REDIRECTIONS = 20; // the common value for web browsers
|
||||||
|
|
||||||
namespace
|
namespace
|
||||||
@@ -121,9 +124,13 @@ void DownloadHandlerImpl::processFinishedDownload()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Success
|
// Success
|
||||||
|
#ifdef QT_NO_COMPRESS
|
||||||
m_result.data = (m_reply->rawHeader("Content-Encoding") == "gzip")
|
m_result.data = (m_reply->rawHeader("Content-Encoding") == "gzip")
|
||||||
? Utils::Gzip::decompress(m_reply->readAll())
|
? Utils::Gzip::decompress(m_reply->readAll())
|
||||||
: m_reply->readAll();
|
: m_reply->readAll();
|
||||||
|
#else
|
||||||
|
m_result.data = m_reply->readAll();
|
||||||
|
#endif
|
||||||
|
|
||||||
if (m_downloadRequest.saveToFile())
|
if (m_downloadRequest.saveToFile())
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -123,8 +123,12 @@ namespace
|
|||||||
|
|
||||||
// Spoof HTTP Referer to allow adding torrent link from Torcache/KickAssTorrents
|
// Spoof HTTP Referer to allow adding torrent link from Torcache/KickAssTorrents
|
||||||
request.setRawHeader("Referer", request.url().toEncoded().data());
|
request.setRawHeader("Referer", request.url().toEncoded().data());
|
||||||
// Accept gzip
|
#ifdef QT_NO_COMPRESS
|
||||||
|
// The macro "QT_NO_COMPRESS" defined in QT will disable the zlib releated features
|
||||||
|
// and reply data auto-decompression in QT will also be disabled. But we can support
|
||||||
|
// gzip encoding and manually decompress the reply data.
|
||||||
request.setRawHeader("Accept-Encoding", "gzip");
|
request.setRawHeader("Accept-Encoding", "gzip");
|
||||||
|
#endif
|
||||||
// Qt doesn't support Magnet protocol so we need to handle redirections manually
|
// Qt doesn't support Magnet protocol so we need to handle redirections manually
|
||||||
request.setAttribute(QNetworkRequest::RedirectPolicyAttribute, QNetworkRequest::ManualRedirectPolicy);
|
request.setAttribute(QNetworkRequest::RedirectPolicyAttribute, QNetworkRequest::ManualRedirectPolicy);
|
||||||
|
|
||||||
|
|||||||
@@ -556,7 +556,7 @@ void Parser::parse(const QByteArray &feedData)
|
|||||||
// read and create items from a rss document
|
// read and create items from a rss document
|
||||||
void Parser::parse_impl(const QByteArray &feedData)
|
void Parser::parse_impl(const QByteArray &feedData)
|
||||||
{
|
{
|
||||||
QXmlStreamReader xml(feedData);
|
QXmlStreamReader xml {feedData};
|
||||||
XmlStreamEntityResolver resolver;
|
XmlStreamEntityResolver resolver;
|
||||||
xml.setEntityResolver(&resolver);
|
xml.setEntityResolver(&resolver);
|
||||||
bool foundChannel = false;
|
bool foundChannel = false;
|
||||||
@@ -603,7 +603,8 @@ void Parser::parse_impl(const QByteArray &feedData)
|
|||||||
}
|
}
|
||||||
|
|
||||||
emit finished(m_result);
|
emit finished(m_result);
|
||||||
m_result.articles.clear(); // clear articles only
|
m_result.articles.clear();
|
||||||
|
m_result.error.clear();
|
||||||
m_articleIDs.clear();
|
m_articleIDs.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
#define QBT_VERSION_MAJOR 4
|
#define QBT_VERSION_MAJOR 4
|
||||||
#define QBT_VERSION_MINOR 4
|
#define QBT_VERSION_MINOR 4
|
||||||
#define QBT_VERSION_BUGFIX 3
|
#define QBT_VERSION_BUGFIX 5
|
||||||
#define QBT_VERSION_BUILD 0
|
#define QBT_VERSION_BUILD 0
|
||||||
#define QBT_VERSION_STATUS "" // Should be empty for stable releases!
|
#define QBT_VERSION_STATUS "" // Should be empty for stable releases!
|
||||||
|
|
||||||
|
|||||||
@@ -204,8 +204,10 @@ target_link_libraries(qbt_gui
|
|||||||
|
|
||||||
if (DBUS)
|
if (DBUS)
|
||||||
target_sources(qbt_gui PRIVATE
|
target_sources(qbt_gui PRIVATE
|
||||||
qtnotify/notifications.h
|
notifications/dbusnotifier.h
|
||||||
qtnotify/notifications.cpp
|
notifications/dbusnotifier.cpp
|
||||||
|
notifications/dbusnotificationsinterface.h
|
||||||
|
notifications/dbusnotificationsinterface.cpp
|
||||||
powermanagement/powermanagement_x11.h
|
powermanagement/powermanagement_x11.h
|
||||||
powermanagement/powermanagement_x11.cpp
|
powermanagement/powermanagement_x11.cpp
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -62,9 +62,11 @@ namespace
|
|||||||
// qBittorrent section
|
// qBittorrent section
|
||||||
QBITTORRENT_HEADER,
|
QBITTORRENT_HEADER,
|
||||||
RESUME_DATA_STORAGE,
|
RESUME_DATA_STORAGE,
|
||||||
|
#if (defined(Q_OS_WIN) && defined(QBT_USES_LIBTORRENT2))
|
||||||
|
MEMORY_WORKING_SET_LIMIT,
|
||||||
|
#endif
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
OS_MEMORY_PRIORITY,
|
OS_MEMORY_PRIORITY,
|
||||||
MEMORY_WORKING_SET_LIMIT,
|
|
||||||
#endif
|
#endif
|
||||||
// network interface
|
// network interface
|
||||||
NETWORK_IFACE,
|
NETWORK_IFACE,
|
||||||
@@ -198,7 +200,9 @@ void AdvancedSettings::saveAdvancedSettings()
|
|||||||
}
|
}
|
||||||
session->setOSMemoryPriority(prio);
|
session->setOSMemoryPriority(prio);
|
||||||
|
|
||||||
|
#ifdef QBT_USES_LIBTORRENT2
|
||||||
static_cast<Application *>(QCoreApplication::instance())->setMemoryWorkingSetLimit(m_spinBoxMemoryWorkingSetLimit.value());
|
static_cast<Application *>(QCoreApplication::instance())->setMemoryWorkingSetLimit(m_spinBoxMemoryWorkingSetLimit.value());
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
// Async IO threads
|
// Async IO threads
|
||||||
session->setAsyncIOThreads(m_spinBoxAsyncIOThreads.value());
|
session->setAsyncIOThreads(m_spinBoxAsyncIOThreads.value());
|
||||||
@@ -443,6 +447,7 @@ void AdvancedSettings::loadAdvancedSettings()
|
|||||||
+ ' ' + makeLink("https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/ns-processthreadsapi-memory_priority_information", "(?)"))
|
+ ' ' + makeLink("https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/ns-processthreadsapi-memory_priority_information", "(?)"))
|
||||||
, &m_comboBoxOSMemoryPriority);
|
, &m_comboBoxOSMemoryPriority);
|
||||||
|
|
||||||
|
#ifdef QBT_USES_LIBTORRENT2
|
||||||
m_spinBoxMemoryWorkingSetLimit.setMinimum(1);
|
m_spinBoxMemoryWorkingSetLimit.setMinimum(1);
|
||||||
m_spinBoxMemoryWorkingSetLimit.setMaximum(std::numeric_limits<int>::max());
|
m_spinBoxMemoryWorkingSetLimit.setMaximum(std::numeric_limits<int>::max());
|
||||||
m_spinBoxMemoryWorkingSetLimit.setSuffix(tr(" MiB"));
|
m_spinBoxMemoryWorkingSetLimit.setSuffix(tr(" MiB"));
|
||||||
@@ -451,6 +456,7 @@ void AdvancedSettings::loadAdvancedSettings()
|
|||||||
addRow(MEMORY_WORKING_SET_LIMIT, (tr("Physical memory (RAM) usage limit")
|
addRow(MEMORY_WORKING_SET_LIMIT, (tr("Physical memory (RAM) usage limit")
|
||||||
+ ' ' + makeLink("https://wikipedia.org/wiki/Working_set", "(?)"))
|
+ ' ' + makeLink("https://wikipedia.org/wiki/Working_set", "(?)"))
|
||||||
, &m_spinBoxMemoryWorkingSetLimit);
|
, &m_spinBoxMemoryWorkingSetLimit);
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Async IO threads
|
// Async IO threads
|
||||||
|
|||||||
@@ -82,8 +82,10 @@ private:
|
|||||||
// OS dependent settings
|
// OS dependent settings
|
||||||
#if defined(Q_OS_WIN)
|
#if defined(Q_OS_WIN)
|
||||||
QComboBox m_comboBoxOSMemoryPriority;
|
QComboBox m_comboBoxOSMemoryPriority;
|
||||||
|
#ifdef QBT_USES_LIBTORRENT2
|
||||||
QSpinBox m_spinBoxMemoryWorkingSetLimit;
|
QSpinBox m_spinBoxMemoryWorkingSetLimit;
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifndef Q_OS_MACOS
|
#ifndef Q_OS_MACOS
|
||||||
QCheckBox m_checkBoxIconsInMenusEnabled;
|
QCheckBox m_checkBoxIconsInMenusEnabled;
|
||||||
|
|||||||
@@ -169,12 +169,14 @@ win32|macx {
|
|||||||
|
|
||||||
unix:!macx:dbus {
|
unix:!macx:dbus {
|
||||||
HEADERS += \
|
HEADERS += \
|
||||||
$$PWD/powermanagement/powermanagement_x11.h \
|
$$PWD/notifications/dbusnotifier.h \
|
||||||
$$PWD/qtnotify/notifications.h
|
$$PWD/notifications/dbusnotificationsinterface.h \
|
||||||
|
$$PWD/powermanagement/powermanagement_x11.h
|
||||||
|
|
||||||
SOURCES += \
|
SOURCES += \
|
||||||
$$PWD/powermanagement/powermanagement_x11.cpp \
|
$$PWD/notifications/dbusnotifier.cpp \
|
||||||
$$PWD/qtnotify/notifications.cpp
|
$$PWD/notifications/dbusnotificationsinterface.cpp \
|
||||||
|
$$PWD/powermanagement/powermanagement_x11.cpp
|
||||||
}
|
}
|
||||||
|
|
||||||
macx {
|
macx {
|
||||||
|
|||||||
@@ -104,7 +104,15 @@ namespace MacUtils
|
|||||||
for (const auto &path : pathsList)
|
for (const auto &path : pathsList)
|
||||||
[pathURLs addObject:[NSURL fileURLWithPath:path.toNSString()]];
|
[pathURLs addObject:[NSURL fileURLWithPath:path.toNSString()]];
|
||||||
|
|
||||||
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:pathURLs];
|
// In some unknown way, the next line affects Qt's main loop causing the crash
|
||||||
|
// in QApplication::exec() on processing next event after this 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 it in another thread (aka in background) solves the issue.
|
||||||
|
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^
|
||||||
|
{
|
||||||
|
[[NSWorkspace sharedWorkspace] activateFileViewerSelectingURLs:pathURLs];
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -48,9 +48,8 @@
|
|||||||
#include <QtGlobal>
|
#include <QtGlobal>
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
|
|
||||||
#if (defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)) && defined(QT_DBUS_LIB)
|
#ifdef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
#include <QDBusConnection>
|
#include "notifications/dbusnotifier.h"
|
||||||
#include "qtnotify/notifications.h"
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#include "base/bittorrent/session.h"
|
#include "base/bittorrent/session.h"
|
||||||
@@ -128,7 +127,7 @@ MainWindow::MainWindow(QWidget *parent)
|
|||||||
, m_storeNotificationEnabled(NOTIFICATIONS_SETTINGS_KEY("Enabled"))
|
, m_storeNotificationEnabled(NOTIFICATIONS_SETTINGS_KEY("Enabled"))
|
||||||
, m_storeNotificationTorrentAdded(NOTIFICATIONS_SETTINGS_KEY("TorrentAdded"))
|
, m_storeNotificationTorrentAdded(NOTIFICATIONS_SETTINGS_KEY("TorrentAdded"))
|
||||||
, m_storeExecutionLogTypes(EXECUTIONLOG_SETTINGS_KEY("Types"), Log::MsgType::ALL)
|
, m_storeExecutionLogTypes(EXECUTIONLOG_SETTINGS_KEY("Types"), Log::MsgType::ALL)
|
||||||
#if (defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)) && defined(QT_DBUS_LIB)
|
#ifdef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
, m_storeNotificationTimeOut(NOTIFICATIONS_SETTINGS_KEY("Timeout"))
|
, m_storeNotificationTimeOut(NOTIFICATIONS_SETTINGS_KEY("Timeout"))
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
@@ -182,6 +181,14 @@ MainWindow::MainWindow(QWidget *parent)
|
|||||||
m_ui->actionLock->setVisible(true);
|
m_ui->actionLock->setVisible(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
#ifdef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
|
if (isNotificationsEnabled())
|
||||||
|
{
|
||||||
|
m_notifier = new DBusNotifier(this);
|
||||||
|
connect(m_notifier, &DBusNotifier::messageClicked, this, &MainWindow::balloonClicked);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// Creating Bittorrent session
|
// Creating Bittorrent session
|
||||||
updateAltSpeedsBtn(BitTorrent::Session::instance()->isAltGlobalSpeedLimitEnabled());
|
updateAltSpeedsBtn(BitTorrent::Session::instance()->isAltGlobalSpeedLimitEnabled());
|
||||||
|
|
||||||
@@ -508,9 +515,25 @@ bool MainWindow::isNotificationsEnabled() const
|
|||||||
return m_storeNotificationEnabled.get(true);
|
return m_storeNotificationEnabled.get(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::setNotificationsEnabled(bool value)
|
void MainWindow::setNotificationsEnabled(const bool value)
|
||||||
{
|
{
|
||||||
|
if (m_storeNotificationEnabled == value)
|
||||||
|
return;
|
||||||
|
|
||||||
m_storeNotificationEnabled = value;
|
m_storeNotificationEnabled = value;
|
||||||
|
|
||||||
|
#ifdef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
|
if (value)
|
||||||
|
{
|
||||||
|
m_notifier = new DBusNotifier(this);
|
||||||
|
connect(m_notifier, &DBusNotifier::messageClicked, this, &MainWindow::balloonClicked);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
delete m_notifier;
|
||||||
|
m_notifier = nullptr;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
bool MainWindow::isTorrentAddedNotificationsEnabled() const
|
bool MainWindow::isTorrentAddedNotificationsEnabled() const
|
||||||
@@ -1646,27 +1669,8 @@ void MainWindow::showNotificationBalloon(const QString &title, const QString &ms
|
|||||||
if (!isNotificationsEnabled())
|
if (!isNotificationsEnabled())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
#if (defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)) && defined(QT_DBUS_LIB)
|
#ifdef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
OrgFreedesktopNotificationsInterface notifications(QLatin1String("org.freedesktop.Notifications")
|
m_notifier->showMessage(title, msg, getNotificationTimeout());
|
||||||
, QLatin1String("/org/freedesktop/Notifications")
|
|
||||||
, QDBusConnection::sessionBus());
|
|
||||||
|
|
||||||
// Testing for 'notifications.isValid()' isn't helpful here.
|
|
||||||
// If the notification daemon is configured to run 'as needed'
|
|
||||||
// the above check can be false if the daemon wasn't started
|
|
||||||
// by another application. In this case DBus will be able to
|
|
||||||
// start the notification daemon and complete our request. Such
|
|
||||||
// a daemon is xfce4-notifyd, DBus autostarts it and after
|
|
||||||
// some inactivity shuts it down. Other DEs, like GNOME, choose
|
|
||||||
// to start their daemons at the session startup and have it sit
|
|
||||||
// idling for the whole session.
|
|
||||||
const QVariantMap hints {{QLatin1String("desktop-entry"), QLatin1String("org.qbittorrent.qBittorrent")}};
|
|
||||||
QDBusPendingReply<uint> reply = notifications.Notify(QLatin1String("qBittorrent"), 0
|
|
||||||
, QLatin1String("qbittorrent"), title, msg, {}, hints, getNotificationTimeout());
|
|
||||||
|
|
||||||
reply.waitForFinished();
|
|
||||||
if (!reply.isError())
|
|
||||||
return;
|
|
||||||
#elif defined(Q_OS_MACOS)
|
#elif defined(Q_OS_MACOS)
|
||||||
MacUtils::displayNotification(title, msg);
|
MacUtils::displayNotification(title, msg);
|
||||||
#else
|
#else
|
||||||
@@ -1713,7 +1717,9 @@ void MainWindow::createTrayIcon(const int retries)
|
|||||||
m_systrayIcon->setContextMenu(m_trayIconMenu);
|
m_systrayIcon->setContextMenu(m_trayIconMenu);
|
||||||
|
|
||||||
connect(m_systrayIcon, &QSystemTrayIcon::activated, this, &MainWindow::toggleVisibility);
|
connect(m_systrayIcon, &QSystemTrayIcon::activated, this, &MainWindow::toggleVisibility);
|
||||||
|
#ifndef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
connect(m_systrayIcon, &QSystemTrayIcon::messageClicked, this, &MainWindow::balloonClicked);
|
connect(m_systrayIcon, &QSystemTrayIcon::messageClicked, this, &MainWindow::balloonClicked);
|
||||||
|
#endif
|
||||||
|
|
||||||
m_systrayIcon->show();
|
m_systrayIcon->show();
|
||||||
emit systemTrayIconCreated();
|
emit systemTrayIconCreated();
|
||||||
|
|||||||
@@ -71,6 +71,11 @@ namespace Ui
|
|||||||
class MainWindow;
|
class MainWindow;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if (defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)) && defined(QT_DBUS_LIB)
|
||||||
|
#define QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
|
class DBusNotifier;
|
||||||
|
#endif
|
||||||
|
|
||||||
class MainWindow final : public QMainWindow
|
class MainWindow final : public QMainWindow
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
@@ -261,8 +266,9 @@ private:
|
|||||||
SettingValue<bool> m_storeNotificationTorrentAdded;
|
SettingValue<bool> m_storeNotificationTorrentAdded;
|
||||||
CachedSettingValue<Log::MsgTypes> m_storeExecutionLogTypes;
|
CachedSettingValue<Log::MsgTypes> m_storeExecutionLogTypes;
|
||||||
|
|
||||||
#if (defined(Q_OS_UNIX) && !defined(Q_OS_MACOS)) && defined(QT_DBUS_LIB)
|
#ifdef QBT_USES_CUSTOMDBUSNOTIFICATIONS
|
||||||
SettingValue<int> m_storeNotificationTimeOut;
|
SettingValue<int> m_storeNotificationTimeOut;
|
||||||
|
DBusNotifier *m_notifier = nullptr;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(Q_OS_WIN) || defined(Q_OS_MACOS)
|
#if defined(Q_OS_WIN) || defined(Q_OS_MACOS)
|
||||||
|
|||||||
74
src/gui/notifications/dbusnotificationsinterface.cpp
Normal file
74
src/gui/notifications/dbusnotificationsinterface.cpp
Normal file
@@ -0,0 +1,74 @@
|
|||||||
|
/*
|
||||||
|
* Bittorrent Client using Qt and libtorrent.
|
||||||
|
* Copyright (C) 2022 Vladimir Golovnev <glassez@yandex.ru>
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "dbusnotificationsinterface.h"
|
||||||
|
|
||||||
|
#include <QDBusConnection>
|
||||||
|
#include <QString>
|
||||||
|
#include <QVariant>
|
||||||
|
|
||||||
|
DBusNotificationsInterface::DBusNotificationsInterface(const QString &service
|
||||||
|
, const QString &path, const QDBusConnection &connection, QObject *parent)
|
||||||
|
: QDBusAbstractInterface(service, path, DBUS_INTERFACE_NAME, connection, parent)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
QDBusPendingReply<QStringList> DBusNotificationsInterface::getCapabilities()
|
||||||
|
{
|
||||||
|
return asyncCall(QLatin1String("GetCapabilities"));
|
||||||
|
}
|
||||||
|
|
||||||
|
QDBusPendingReply<QString, QString, QString, QString> DBusNotificationsInterface::getServerInformation()
|
||||||
|
{
|
||||||
|
return asyncCall(QLatin1String("GetServerInformation"));
|
||||||
|
}
|
||||||
|
|
||||||
|
QDBusReply<QString> DBusNotificationsInterface::getServerInformation(QString &vendor, QString &version, QString &specVersion)
|
||||||
|
{
|
||||||
|
const QDBusMessage reply = call(QDBus::Block, QLatin1String("GetServerInformation"));
|
||||||
|
if ((reply.type() == QDBusMessage::ReplyMessage) && (reply.arguments().count() == 4))
|
||||||
|
{
|
||||||
|
vendor = qdbus_cast<QString>(reply.arguments().at(1));
|
||||||
|
version = qdbus_cast<QString>(reply.arguments().at(2));
|
||||||
|
specVersion = qdbus_cast<QString>(reply.arguments().at(3));
|
||||||
|
}
|
||||||
|
|
||||||
|
return reply;
|
||||||
|
}
|
||||||
|
|
||||||
|
QDBusPendingReply<uint> DBusNotificationsInterface::notify(const QString &appName
|
||||||
|
, const uint id, const QString &icon, const QString &summary, const QString &body
|
||||||
|
, const QStringList &actions, const QVariantMap &hints, const int timeout)
|
||||||
|
{
|
||||||
|
return asyncCall(QLatin1String("Notify"), appName, id, icon, summary, body, actions, hints, timeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
QDBusPendingReply<> DBusNotificationsInterface::closeNotification(const uint id)
|
||||||
|
{
|
||||||
|
return asyncCall(QLatin1String("CloseNotification"), id);
|
||||||
|
}
|
||||||
64
src/gui/notifications/dbusnotificationsinterface.h
Normal file
64
src/gui/notifications/dbusnotificationsinterface.h
Normal file
@@ -0,0 +1,64 @@
|
|||||||
|
/*
|
||||||
|
* Bittorrent Client using Qt and libtorrent.
|
||||||
|
* Copyright (C) 2022 Vladimir Golovnev <glassez@yandex.ru>
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <QDBusAbstractInterface>
|
||||||
|
#include <QDBusPendingReply>
|
||||||
|
#include <QDBusReply>
|
||||||
|
#include <QStringList>
|
||||||
|
|
||||||
|
class QDBusConnection;
|
||||||
|
class QString;
|
||||||
|
class QVariant;
|
||||||
|
|
||||||
|
class DBusNotificationsInterface final : public QDBusAbstractInterface
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
Q_DISABLE_COPY_MOVE(DBusNotificationsInterface)
|
||||||
|
|
||||||
|
public:
|
||||||
|
inline static const char DBUS_INTERFACE_NAME[] = "org.freedesktop.Notifications";
|
||||||
|
|
||||||
|
DBusNotificationsInterface(const QString &service, const QString &path
|
||||||
|
, const QDBusConnection &connection, QObject *parent = nullptr);
|
||||||
|
|
||||||
|
public slots:
|
||||||
|
QDBusPendingReply<QStringList> getCapabilities();
|
||||||
|
QDBusPendingReply<QString, QString, QString, QString> getServerInformation();
|
||||||
|
QDBusReply<QString> getServerInformation(QString &vendor, QString &version, QString &specVersion);
|
||||||
|
QDBusPendingReply<uint> notify(const QString &appName
|
||||||
|
, uint id, const QString &icon, const QString &summary, const QString &body
|
||||||
|
, const QStringList &actions, const QVariantMap &hints, int timeout);
|
||||||
|
QDBusPendingReply<> closeNotification(uint id);
|
||||||
|
|
||||||
|
signals:
|
||||||
|
// Signal names must exactly match the ones from corresponding D-Bus interface
|
||||||
|
void ActionInvoked(uint id, const QString &action);
|
||||||
|
void NotificationClosed(uint id, uint reason);
|
||||||
|
};
|
||||||
93
src/gui/notifications/dbusnotifier.cpp
Normal file
93
src/gui/notifications/dbusnotifier.cpp
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
/*
|
||||||
|
* Bittorrent Client using Qt and libtorrent.
|
||||||
|
* Copyright (C) 2022 Vladimir Golovnev <glassez@yandex.ru>
|
||||||
|
* Copyright (C) 2006 Christophe Dumez <chris@qbittorrent.org>
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "dbusnotifier.h"
|
||||||
|
|
||||||
|
#include <QDBusConnection>
|
||||||
|
#include <QDBusPendingCallWatcher>
|
||||||
|
#include <QDBusPendingReply>
|
||||||
|
|
||||||
|
#include "dbusnotificationsinterface.h"
|
||||||
|
|
||||||
|
DBusNotifier::DBusNotifier(QObject *parent)
|
||||||
|
: QObject(parent)
|
||||||
|
, m_notificationsInterface {new DBusNotificationsInterface(QLatin1String("org.freedesktop.Notifications")
|
||||||
|
, QLatin1String("/org/freedesktop/Notifications"), QDBusConnection::sessionBus(), this)}
|
||||||
|
{
|
||||||
|
// Testing for 'DBusNotificationsInterface::isValid()' isn't helpful here.
|
||||||
|
// If the notification daemon is configured to run 'as needed'
|
||||||
|
// the above check can be false if the daemon wasn't started
|
||||||
|
// by another application. In this case DBus will be able to
|
||||||
|
// start the notification daemon and complete our request. Such
|
||||||
|
// a daemon is xfce4-notifyd, DBus autostarts it and after
|
||||||
|
// some inactivity shuts it down. Other DEs, like GNOME, choose
|
||||||
|
// to start their daemons at the session startup and have it sit
|
||||||
|
// idling for the whole session.
|
||||||
|
|
||||||
|
connect(m_notificationsInterface, &DBusNotificationsInterface::ActionInvoked, this, &DBusNotifier::onActionInvoked);
|
||||||
|
connect(m_notificationsInterface, &DBusNotificationsInterface::NotificationClosed, this, &DBusNotifier::onNotificationClosed);
|
||||||
|
}
|
||||||
|
|
||||||
|
void DBusNotifier::showMessage(const QString &title, const QString &message, const int timeout)
|
||||||
|
{
|
||||||
|
// Assign "default" action to notification to make it clickable
|
||||||
|
const QStringList actions {QLatin1String("default"), {}};
|
||||||
|
const QVariantMap hints {{QLatin1String("desktop-entry"), QLatin1String("org.qbittorrent.qBittorrent")}};
|
||||||
|
const QDBusPendingReply<uint> reply = m_notificationsInterface->notify(QLatin1String("qBittorrent"), 0
|
||||||
|
, QLatin1String("qbittorrent"), title, message, actions, hints, timeout);
|
||||||
|
auto *watcher = new QDBusPendingCallWatcher(reply, this);
|
||||||
|
connect(watcher, &QDBusPendingCallWatcher::finished, this, [this](QDBusPendingCallWatcher *self)
|
||||||
|
{
|
||||||
|
const QDBusPendingReply<uint> reply = *self;
|
||||||
|
if (!reply.isError())
|
||||||
|
{
|
||||||
|
const uint messageID = reply.value();
|
||||||
|
m_activeMessages.insert(messageID);
|
||||||
|
}
|
||||||
|
|
||||||
|
self->deleteLater();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
void DBusNotifier::onActionInvoked(const uint messageID, const QString &action)
|
||||||
|
{
|
||||||
|
Q_UNUSED(action);
|
||||||
|
|
||||||
|
// Check whether the notification is sent by qBittorrent
|
||||||
|
// to avoid reacting to unrelated notifictions
|
||||||
|
if (m_activeMessages.contains(messageID))
|
||||||
|
emit messageClicked();
|
||||||
|
}
|
||||||
|
|
||||||
|
void DBusNotifier::onNotificationClosed(const uint messageID, const uint reason)
|
||||||
|
{
|
||||||
|
Q_UNUSED(reason);
|
||||||
|
|
||||||
|
m_activeMessages.remove(messageID);
|
||||||
|
}
|
||||||
56
src/gui/notifications/dbusnotifier.h
Normal file
56
src/gui/notifications/dbusnotifier.h
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
/*
|
||||||
|
* Bittorrent Client using Qt and libtorrent.
|
||||||
|
* Copyright (C) 2022 Vladimir Golovnev <glassez@yandex.ru>
|
||||||
|
* Copyright (C) 2006 Christophe Dumez <chris@qbittorrent.org>
|
||||||
|
*
|
||||||
|
* 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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <QObject>
|
||||||
|
#include <QSet>
|
||||||
|
|
||||||
|
class DBusNotificationsInterface;
|
||||||
|
|
||||||
|
class DBusNotifier final : public QObject
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
Q_DISABLE_COPY_MOVE(DBusNotifier)
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit DBusNotifier(QObject *parent = nullptr);
|
||||||
|
|
||||||
|
void showMessage(const QString &title, const QString &message, int timeout);
|
||||||
|
|
||||||
|
signals:
|
||||||
|
void messageClicked();
|
||||||
|
|
||||||
|
private:
|
||||||
|
void onActionInvoked(uint messageID, const QString &action);
|
||||||
|
void onNotificationClosed(uint messageID, uint reason);
|
||||||
|
|
||||||
|
DBusNotificationsInterface *m_notificationsInterface = nullptr;
|
||||||
|
QSet<uint> m_activeMessages;
|
||||||
|
};
|
||||||
@@ -282,7 +282,7 @@ void PiecesBar::showToolTip(const QHelpEvent *e)
|
|||||||
|
|
||||||
for (int f : files)
|
for (int f : files)
|
||||||
{
|
{
|
||||||
const QString filePath {torrentInfo.filePath(f)};
|
const QString filePath {m_torrent->filePath(f)};
|
||||||
renderer(Utils::Misc::friendlyUnit(torrentInfo.fileSize(f)), filePath);
|
renderer(Utils::Misc::friendlyUnit(torrentInfo.fileSize(f)), filePath);
|
||||||
}
|
}
|
||||||
stream << "</body></html>";
|
stream << "</body></html>";
|
||||||
|
|||||||
@@ -1,25 +0,0 @@
|
|||||||
/*
|
|
||||||
* This file was generated by qdbusxml2cpp version 0.8
|
|
||||||
* Command line was: qdbusxml2cpp -p notifications.h:notifications.cpp notifications.xml
|
|
||||||
*
|
|
||||||
* qdbusxml2cpp is Copyright (C) 2020 The Qt Company Ltd.
|
|
||||||
*
|
|
||||||
* This is an auto-generated file.
|
|
||||||
* This file may have been hand-edited. Look for HAND-EDIT comments
|
|
||||||
* before re-generating it.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "notifications.h"
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Implementation of interface class OrgFreedesktopNotificationsInterface
|
|
||||||
*/
|
|
||||||
|
|
||||||
OrgFreedesktopNotificationsInterface::OrgFreedesktopNotificationsInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent)
|
|
||||||
: QDBusAbstractInterface(service, path, staticInterfaceName(), connection, parent)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
OrgFreedesktopNotificationsInterface::~OrgFreedesktopNotificationsInterface()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
/*
|
|
||||||
* This file was generated by qdbusxml2cpp version 0.8
|
|
||||||
* Command line was: qdbusxml2cpp -p notifications.h:notifications.cpp notifications.xml
|
|
||||||
*
|
|
||||||
* qdbusxml2cpp is Copyright (C) 2020 The Qt Company Ltd.
|
|
||||||
*
|
|
||||||
* This is an auto-generated file.
|
|
||||||
* Do not edit! All changes made to it will be lost.
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef NOTIFICATIONS_H
|
|
||||||
#define NOTIFICATIONS_H
|
|
||||||
|
|
||||||
#include <QtCore/QObject>
|
|
||||||
#include <QtCore/QByteArray>
|
|
||||||
#include <QtCore/QList>
|
|
||||||
#include <QtCore/QMap>
|
|
||||||
#include <QtCore/QString>
|
|
||||||
#include <QtCore/QStringList>
|
|
||||||
#include <QtCore/QVariant>
|
|
||||||
#include <QtDBus/QtDBus>
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Proxy class for interface org.freedesktop.Notifications
|
|
||||||
*/
|
|
||||||
class OrgFreedesktopNotificationsInterface: public QDBusAbstractInterface
|
|
||||||
{
|
|
||||||
Q_OBJECT
|
|
||||||
public:
|
|
||||||
static inline const char *staticInterfaceName()
|
|
||||||
{ return "org.freedesktop.Notifications"; }
|
|
||||||
|
|
||||||
public:
|
|
||||||
OrgFreedesktopNotificationsInterface(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr);
|
|
||||||
|
|
||||||
~OrgFreedesktopNotificationsInterface();
|
|
||||||
|
|
||||||
public Q_SLOTS: // METHODS
|
|
||||||
inline QDBusPendingReply<> CloseNotification(uint id)
|
|
||||||
{
|
|
||||||
QList<QVariant> argumentList;
|
|
||||||
argumentList << QVariant::fromValue(id);
|
|
||||||
return asyncCallWithArgumentList(QStringLiteral("CloseNotification"), argumentList);
|
|
||||||
}
|
|
||||||
|
|
||||||
inline QDBusPendingReply<QStringList> GetCapabilities()
|
|
||||||
{
|
|
||||||
QList<QVariant> argumentList;
|
|
||||||
return asyncCallWithArgumentList(QStringLiteral("GetCapabilities"), argumentList);
|
|
||||||
}
|
|
||||||
|
|
||||||
inline QDBusPendingReply<QString, QString, QString, QString> GetServerInformation()
|
|
||||||
{
|
|
||||||
QList<QVariant> argumentList;
|
|
||||||
return asyncCallWithArgumentList(QStringLiteral("GetServerInformation"), argumentList);
|
|
||||||
}
|
|
||||||
inline QDBusReply<QString> GetServerInformation(QString &return_vendor, QString &return_version, QString &return_spec_version)
|
|
||||||
{
|
|
||||||
QList<QVariant> argumentList;
|
|
||||||
QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("GetServerInformation"), argumentList);
|
|
||||||
if (reply.type() == QDBusMessage::ReplyMessage && reply.arguments().count() == 4) {
|
|
||||||
return_vendor = qdbus_cast<QString>(reply.arguments().at(1));
|
|
||||||
return_version = qdbus_cast<QString>(reply.arguments().at(2));
|
|
||||||
return_spec_version = qdbus_cast<QString>(reply.arguments().at(3));
|
|
||||||
}
|
|
||||||
return reply;
|
|
||||||
}
|
|
||||||
|
|
||||||
inline QDBusPendingReply<uint> Notify(const QString &app_name, uint id, const QString &icon, const QString &summary, const QString &body, const QStringList &actions, const QVariantMap &hints, int timeout)
|
|
||||||
{
|
|
||||||
QList<QVariant> argumentList;
|
|
||||||
argumentList << QVariant::fromValue(app_name) << QVariant::fromValue(id) << QVariant::fromValue(icon) << QVariant::fromValue(summary) << QVariant::fromValue(body) << QVariant::fromValue(actions) << QVariant::fromValue(hints) << QVariant::fromValue(timeout);
|
|
||||||
return asyncCallWithArgumentList(QStringLiteral("Notify"), argumentList);
|
|
||||||
}
|
|
||||||
|
|
||||||
Q_SIGNALS: // SIGNALS
|
|
||||||
};
|
|
||||||
|
|
||||||
namespace org {
|
|
||||||
namespace freedesktop {
|
|
||||||
typedef ::OrgFreedesktopNotificationsInterface Notifications;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
@@ -1,30 +0,0 @@
|
|||||||
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
|
|
||||||
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
||||||
<node>
|
|
||||||
<interface name="org.freedesktop.Notifications">
|
|
||||||
<method name="GetServerInformation">
|
|
||||||
<arg name="return_name" type="s" direction="out"/>
|
|
||||||
<arg name="return_vendor" type="s" direction="out"/>
|
|
||||||
<arg name="return_version" type="s" direction="out"/>
|
|
||||||
<arg name="return_spec_version" type="s" direction="out"/>
|
|
||||||
</method>
|
|
||||||
<method name="GetCapabilities">
|
|
||||||
<arg name="return_caps" type="as" direction="out"/>
|
|
||||||
</method>
|
|
||||||
<method name="CloseNotification">
|
|
||||||
<arg name="id" type="u" direction="in"/>
|
|
||||||
</method>
|
|
||||||
<method name="Notify">
|
|
||||||
<arg name="app_name" type="s" direction="in"/>
|
|
||||||
<arg name="id" type="u" direction="in"/>
|
|
||||||
<arg name="icon" type="s" direction="in"/>
|
|
||||||
<arg name="summary" type="s" direction="in"/>
|
|
||||||
<arg name="body" type="s" direction="in"/>
|
|
||||||
<arg name="actions" type="as" direction="in"/>
|
|
||||||
<arg name="hints" type="a{sv}" direction="in"/>
|
|
||||||
<annotation name="org.qtproject.QtDBus.QtTypeName.In6" value="QVariantMap"/>
|
|
||||||
<arg name="timeout" type="i" direction="in"/>
|
|
||||||
<arg name="return_id" type="u" direction="out"/>
|
|
||||||
</method>
|
|
||||||
</interface>
|
|
||||||
</node>
|
|
||||||
@@ -110,17 +110,13 @@ bool TorrentContentFilterModel::lessThan(const QModelIndex &left, const QModelIn
|
|||||||
void TorrentContentFilterModel::selectAll()
|
void TorrentContentFilterModel::selectAll()
|
||||||
{
|
{
|
||||||
for (int i = 0; i < rowCount(); ++i)
|
for (int i = 0; i < rowCount(); ++i)
|
||||||
setData(index(i, 0), Qt::Checked, Qt::CheckStateRole);
|
setData(index(i, TorrentContentModelItem::COL_NAME), Qt::Checked, Qt::CheckStateRole);
|
||||||
|
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void TorrentContentFilterModel::selectNone()
|
void TorrentContentFilterModel::selectNone()
|
||||||
{
|
{
|
||||||
for (int i = 0; i < rowCount(); ++i)
|
for (int i = 0; i < rowCount(); ++i)
|
||||||
setData(index(i, 0), Qt::Unchecked, Qt::CheckStateRole);
|
setData(index(i, TorrentContentModelItem::COL_NAME), Qt::Unchecked, Qt::CheckStateRole);
|
||||||
|
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TorrentContentFilterModel::hasFiltered(const QModelIndex &folder) const
|
bool TorrentContentFilterModel::hasFiltered(const QModelIndex &folder) const
|
||||||
|
|||||||
@@ -220,7 +220,12 @@ void TorrentContentModel::updateFilesProgress(const QVector<qreal> &fp)
|
|||||||
// Update folders progress in the tree
|
// Update folders progress in the tree
|
||||||
m_rootItem->recalculateProgress();
|
m_rootItem->recalculateProgress();
|
||||||
m_rootItem->recalculateAvailability();
|
m_rootItem->recalculateAvailability();
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
|
const QVector<ColumnInterval> columns =
|
||||||
|
{
|
||||||
|
{TorrentContentModelItem::COL_PROGRESS, TorrentContentModelItem::COL_PROGRESS}
|
||||||
|
};
|
||||||
|
notifySubtreeUpdated(index(0, 0), columns);
|
||||||
}
|
}
|
||||||
|
|
||||||
void TorrentContentModel::updateFilesPriorities(const QVector<BitTorrent::DownloadPriority> &fprio)
|
void TorrentContentModel::updateFilesPriorities(const QVector<BitTorrent::DownloadPriority> &fprio)
|
||||||
@@ -233,7 +238,13 @@ void TorrentContentModel::updateFilesPriorities(const QVector<BitTorrent::Downlo
|
|||||||
emit layoutAboutToBeChanged();
|
emit layoutAboutToBeChanged();
|
||||||
for (int i = 0; i < fprio.size(); ++i)
|
for (int i = 0; i < fprio.size(); ++i)
|
||||||
m_filesIndex[i]->setPriority(static_cast<BitTorrent::DownloadPriority>(fprio[i]));
|
m_filesIndex[i]->setPriority(static_cast<BitTorrent::DownloadPriority>(fprio[i]));
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
|
const QVector<ColumnInterval> columns =
|
||||||
|
{
|
||||||
|
{TorrentContentModelItem::COL_NAME, TorrentContentModelItem::COL_NAME},
|
||||||
|
{TorrentContentModelItem::COL_PRIO, TorrentContentModelItem::COL_PRIO}
|
||||||
|
};
|
||||||
|
notifySubtreeUpdated(index(0, 0), columns);
|
||||||
}
|
}
|
||||||
|
|
||||||
void TorrentContentModel::updateFilesAvailability(const QVector<qreal> &fa)
|
void TorrentContentModel::updateFilesAvailability(const QVector<qreal> &fa)
|
||||||
@@ -247,7 +258,12 @@ void TorrentContentModel::updateFilesAvailability(const QVector<qreal> &fa)
|
|||||||
m_filesIndex[i]->setAvailability(fa[i]);
|
m_filesIndex[i]->setAvailability(fa[i]);
|
||||||
// Update folders progress in the tree
|
// Update folders progress in the tree
|
||||||
m_rootItem->recalculateProgress();
|
m_rootItem->recalculateProgress();
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
|
const QVector<ColumnInterval> columns =
|
||||||
|
{
|
||||||
|
{TorrentContentModelItem::COL_AVAILABILITY, TorrentContentModelItem::COL_AVAILABILITY}
|
||||||
|
};
|
||||||
|
notifySubtreeUpdated(index(0, 0), columns);
|
||||||
}
|
}
|
||||||
|
|
||||||
QVector<BitTorrent::DownloadPriority> TorrentContentModel::getFilePriorities() const
|
QVector<BitTorrent::DownloadPriority> TorrentContentModel::getFilePriorities() const
|
||||||
@@ -269,66 +285,94 @@ bool TorrentContentModel::allFiltered() const
|
|||||||
|
|
||||||
int TorrentContentModel::columnCount(const QModelIndex &parent) const
|
int TorrentContentModel::columnCount(const QModelIndex &parent) const
|
||||||
{
|
{
|
||||||
if (parent.isValid())
|
Q_UNUSED(parent);
|
||||||
return static_cast<TorrentContentModelItem*>(parent.internalPointer())->columnCount();
|
return TorrentContentModelItem::NB_COL;
|
||||||
|
|
||||||
return m_rootItem->columnCount();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool TorrentContentModel::setData(const QModelIndex &index, const QVariant &value, int role)
|
bool TorrentContentModel::setData(const QModelIndex &index, const QVariant &value, const int role)
|
||||||
{
|
{
|
||||||
if (!index.isValid())
|
if (!index.isValid())
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if ((index.column() == TorrentContentModelItem::COL_NAME) && (role == Qt::CheckStateRole))
|
if ((index.column() == TorrentContentModelItem::COL_NAME) && (role == Qt::CheckStateRole))
|
||||||
{
|
{
|
||||||
auto *item = static_cast<TorrentContentModelItem*>(index.internalPointer());
|
auto *item = static_cast<TorrentContentModelItem *>(index.internalPointer());
|
||||||
qDebug("setData(%s, %d)", qUtf8Printable(item->name()), value.toInt());
|
|
||||||
|
|
||||||
BitTorrent::DownloadPriority prio = BitTorrent::DownloadPriority::Normal;
|
const BitTorrent::DownloadPriority currentPrio = item->priority();
|
||||||
if (value.toInt() == Qt::PartiallyChecked)
|
const auto checkState = static_cast<Qt::CheckState>(value.toInt());
|
||||||
prio = BitTorrent::DownloadPriority::Mixed;
|
const BitTorrent::DownloadPriority newPrio = (checkState == Qt::PartiallyChecked)
|
||||||
else if (value.toInt() == Qt::Unchecked)
|
? BitTorrent::DownloadPriority::Mixed
|
||||||
prio = BitTorrent::DownloadPriority::Ignored;
|
: ((checkState == Qt::Unchecked)
|
||||||
|
? BitTorrent::DownloadPriority::Ignored
|
||||||
|
: BitTorrent::DownloadPriority::Normal);
|
||||||
|
|
||||||
if (item->priority() != prio)
|
if (currentPrio != newPrio)
|
||||||
{
|
{
|
||||||
item->setPriority(prio);
|
item->setPriority(newPrio);
|
||||||
// Update folders progress in the tree
|
// Update folders progress in the tree
|
||||||
m_rootItem->recalculateProgress();
|
m_rootItem->recalculateProgress();
|
||||||
m_rootItem->recalculateAvailability();
|
m_rootItem->recalculateAvailability();
|
||||||
emit dataChanged(this->index(0, 0), this->index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
|
const QVector<ColumnInterval> columns =
|
||||||
|
{
|
||||||
|
{TorrentContentModelItem::COL_NAME, TorrentContentModelItem::COL_NAME},
|
||||||
|
{TorrentContentModelItem::COL_PRIO, TorrentContentModelItem::COL_PRIO}
|
||||||
|
};
|
||||||
|
notifySubtreeUpdated(index, columns);
|
||||||
emit filteredFilesChanged();
|
emit filteredFilesChanged();
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (role == Qt::EditRole)
|
if (role == Qt::EditRole)
|
||||||
{
|
{
|
||||||
Q_ASSERT(index.isValid());
|
auto *item = static_cast<TorrentContentModelItem *>(index.internalPointer());
|
||||||
auto *item = static_cast<TorrentContentModelItem*>(index.internalPointer());
|
|
||||||
switch (index.column())
|
switch (index.column())
|
||||||
{
|
{
|
||||||
case TorrentContentModelItem::COL_NAME:
|
case TorrentContentModelItem::COL_NAME:
|
||||||
item->setName(value.toString());
|
|
||||||
break;
|
|
||||||
case TorrentContentModelItem::COL_PRIO:
|
|
||||||
{
|
{
|
||||||
const BitTorrent::DownloadPriority previousPrio = item->priority();
|
const QString currentName = item->name();
|
||||||
const auto newPrio = static_cast<BitTorrent::DownloadPriority>(value.toInt());
|
const QString newName = value.toString();
|
||||||
item->setPriority(newPrio);
|
if (currentName != newName)
|
||||||
if ((newPrio != previousPrio) && ((newPrio == BitTorrent::DownloadPriority::Ignored)
|
|
||||||
|| (previousPrio == BitTorrent::DownloadPriority::Ignored)))
|
|
||||||
{
|
{
|
||||||
emit filteredFilesChanged();
|
item->setName(newName);
|
||||||
|
emit dataChanged(index, index);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case TorrentContentModelItem::COL_PRIO:
|
||||||
|
{
|
||||||
|
const BitTorrent::DownloadPriority currentPrio = item->priority();
|
||||||
|
const auto newPrio = static_cast<BitTorrent::DownloadPriority>(value.toInt());
|
||||||
|
if (currentPrio != newPrio)
|
||||||
|
{
|
||||||
|
item->setPriority(newPrio);
|
||||||
|
|
||||||
|
const QVector<ColumnInterval> columns =
|
||||||
|
{
|
||||||
|
{TorrentContentModelItem::COL_NAME, TorrentContentModelItem::COL_NAME},
|
||||||
|
{TorrentContentModelItem::COL_PRIO, TorrentContentModelItem::COL_PRIO}
|
||||||
|
};
|
||||||
|
notifySubtreeUpdated(index, columns);
|
||||||
|
|
||||||
|
if ((newPrio == BitTorrent::DownloadPriority::Ignored)
|
||||||
|
|| (currentPrio == BitTorrent::DownloadPriority::Ignored))
|
||||||
|
{
|
||||||
|
emit filteredFilesChanged();
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return false;
|
break;
|
||||||
}
|
}
|
||||||
emit dataChanged(index, index);
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
@@ -336,14 +380,14 @@ bool TorrentContentModel::setData(const QModelIndex &index, const QVariant &valu
|
|||||||
|
|
||||||
TorrentContentModelItem::ItemType TorrentContentModel::itemType(const QModelIndex &index) const
|
TorrentContentModelItem::ItemType TorrentContentModel::itemType(const QModelIndex &index) const
|
||||||
{
|
{
|
||||||
return static_cast<const TorrentContentModelItem*>(index.internalPointer())->itemType();
|
return static_cast<const TorrentContentModelItem *>(index.internalPointer())->itemType();
|
||||||
}
|
}
|
||||||
|
|
||||||
int TorrentContentModel::getFileIndex(const QModelIndex &index)
|
int TorrentContentModel::getFileIndex(const QModelIndex &index)
|
||||||
{
|
{
|
||||||
auto *item = static_cast<TorrentContentModelItem*>(index.internalPointer());
|
auto *item = static_cast<TorrentContentModelItem *>(index.internalPointer());
|
||||||
if (item->itemType() == TorrentContentModelItem::FileType)
|
if (item->itemType() == TorrentContentModelItem::FileType)
|
||||||
return static_cast<TorrentContentModelFile*>(item)->fileIndex();
|
return static_cast<TorrentContentModelFile *>(item)->fileIndex();
|
||||||
|
|
||||||
Q_ASSERT(item->itemType() == TorrentContentModelItem::FileType);
|
Q_ASSERT(item->itemType() == TorrentContentModelItem::FileType);
|
||||||
return -1;
|
return -1;
|
||||||
@@ -354,7 +398,7 @@ QVariant TorrentContentModel::data(const QModelIndex &index, const int role) con
|
|||||||
if (!index.isValid())
|
if (!index.isValid())
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
auto *item = static_cast<TorrentContentModelItem*>(index.internalPointer());
|
auto *item = static_cast<TorrentContentModelItem *>(index.internalPointer());
|
||||||
|
|
||||||
switch (role)
|
switch (role)
|
||||||
{
|
{
|
||||||
@@ -392,8 +436,10 @@ QVariant TorrentContentModel::data(const QModelIndex &index, const int role) con
|
|||||||
return item->underlyingData(index.column());
|
return item->underlyingData(index.column());
|
||||||
|
|
||||||
default:
|
default:
|
||||||
return {};
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
Qt::ItemFlags TorrentContentModel::flags(const QModelIndex &index) const
|
Qt::ItemFlags TorrentContentModel::flags(const QModelIndex &index) const
|
||||||
@@ -431,19 +477,14 @@ QVariant TorrentContentModel::headerData(int section, Qt::Orientation orientatio
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
QModelIndex TorrentContentModel::index(int row, int column, const QModelIndex &parent) const
|
QModelIndex TorrentContentModel::index(const int row, const int column, const QModelIndex &parent) const
|
||||||
{
|
{
|
||||||
if (parent.isValid() && (parent.column() != 0))
|
if (column >= columnCount())
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
if (column >= TorrentContentModelItem::NB_COL)
|
const TorrentContentModelFolder *parentItem = parent.isValid()
|
||||||
return {};
|
? static_cast<TorrentContentModelFolder *>(parent.internalPointer())
|
||||||
|
: m_rootItem;
|
||||||
TorrentContentModelFolder *parentItem;
|
|
||||||
if (!parent.isValid())
|
|
||||||
parentItem = m_rootItem;
|
|
||||||
else
|
|
||||||
parentItem = static_cast<TorrentContentModelFolder*>(parent.internalPointer());
|
|
||||||
Q_ASSERT(parentItem);
|
Q_ASSERT(parentItem);
|
||||||
|
|
||||||
if (row >= parentItem->childCount())
|
if (row >= parentItem->childCount())
|
||||||
@@ -452,6 +493,7 @@ QModelIndex TorrentContentModel::index(int row, int column, const QModelIndex &p
|
|||||||
TorrentContentModelItem *childItem = parentItem->child(row);
|
TorrentContentModelItem *childItem = parentItem->child(row);
|
||||||
if (childItem)
|
if (childItem)
|
||||||
return createIndex(row, column, childItem);
|
return createIndex(row, column, childItem);
|
||||||
|
|
||||||
return {};
|
return {};
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -460,28 +502,26 @@ QModelIndex TorrentContentModel::parent(const QModelIndex &index) const
|
|||||||
if (!index.isValid())
|
if (!index.isValid())
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
auto *childItem = static_cast<TorrentContentModelItem*>(index.internalPointer());
|
const auto *item = static_cast<TorrentContentModelItem *>(index.internalPointer());
|
||||||
if (!childItem)
|
if (!item)
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
TorrentContentModelItem *parentItem = childItem->parent();
|
TorrentContentModelItem *parentItem = item->parent();
|
||||||
if (parentItem == m_rootItem)
|
if (parentItem == m_rootItem)
|
||||||
return {};
|
return {};
|
||||||
|
|
||||||
|
// From https://doc.qt.io/qt-6/qabstractitemmodel.html#parent:
|
||||||
|
// A common convention used in models that expose tree data structures is that only items
|
||||||
|
// in the first column have children. For that case, when reimplementing this function in
|
||||||
|
// a subclass the column of the returned QModelIndex would be 0.
|
||||||
return createIndex(parentItem->row(), 0, parentItem);
|
return createIndex(parentItem->row(), 0, parentItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
int TorrentContentModel::rowCount(const QModelIndex &parent) const
|
int TorrentContentModel::rowCount(const QModelIndex &parent) const
|
||||||
{
|
{
|
||||||
if (parent.column() > 0)
|
const TorrentContentModelFolder *parentItem = parent.isValid()
|
||||||
return 0;
|
? dynamic_cast<TorrentContentModelFolder *>(static_cast<TorrentContentModelItem *>(parent.internalPointer()))
|
||||||
|
: m_rootItem;
|
||||||
TorrentContentModelFolder *parentItem;
|
|
||||||
if (!parent.isValid())
|
|
||||||
parentItem = m_rootItem;
|
|
||||||
else
|
|
||||||
parentItem = dynamic_cast<TorrentContentModelFolder*>(static_cast<TorrentContentModelItem*>(parent.internalPointer()));
|
|
||||||
|
|
||||||
return parentItem ? parentItem->childCount() : 0;
|
return parentItem ? parentItem->childCount() : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -537,20 +577,53 @@ void TorrentContentModel::setupModelData(const BitTorrent::AbstractFileStorage &
|
|||||||
emit layoutChanged();
|
emit layoutChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
void TorrentContentModel::selectAll()
|
void TorrentContentModel::notifySubtreeUpdated(const QModelIndex &index, const QVector<ColumnInterval> &columns)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < m_rootItem->childCount(); ++i)
|
// For best performance, `columns` entries should be arranged from left to right
|
||||||
{
|
|
||||||
TorrentContentModelItem* child = m_rootItem->child(i);
|
|
||||||
if (child->priority() == BitTorrent::DownloadPriority::Ignored)
|
|
||||||
child->setPriority(BitTorrent::DownloadPriority::Normal);
|
|
||||||
}
|
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
|
||||||
}
|
|
||||||
|
|
||||||
void TorrentContentModel::selectNone()
|
Q_ASSERT(index.isValid());
|
||||||
{
|
|
||||||
for (int i = 0; i < m_rootItem->childCount(); ++i)
|
// emit itself
|
||||||
m_rootItem->child(i)->setPriority(BitTorrent::DownloadPriority::Ignored);
|
for (const ColumnInterval &column : columns)
|
||||||
emit dataChanged(index(0, 0), index((rowCount() - 1), (columnCount() - 1)));
|
emit dataChanged(index.siblingAtColumn(column.first()), index.siblingAtColumn(column.last()));
|
||||||
|
|
||||||
|
// propagate up the model
|
||||||
|
QModelIndex parentIndex = parent(index);
|
||||||
|
while (parentIndex.isValid())
|
||||||
|
{
|
||||||
|
for (const ColumnInterval &column : columns)
|
||||||
|
emit dataChanged(parentIndex.siblingAtColumn(column.first()), parentIndex.siblingAtColumn(column.last()));
|
||||||
|
parentIndex = parent(parentIndex);
|
||||||
|
}
|
||||||
|
|
||||||
|
// propagate down the model
|
||||||
|
QVector<QModelIndex> parentIndexes;
|
||||||
|
|
||||||
|
if (hasChildren(index))
|
||||||
|
parentIndexes.push_back(index);
|
||||||
|
|
||||||
|
while (!parentIndexes.isEmpty())
|
||||||
|
{
|
||||||
|
const QModelIndex parent = parentIndexes.takeLast();
|
||||||
|
|
||||||
|
const int childCount = rowCount(parent);
|
||||||
|
const QModelIndex child = this->index(0, 0, parent);
|
||||||
|
|
||||||
|
// emit this generation
|
||||||
|
for (const ColumnInterval &column : columns)
|
||||||
|
{
|
||||||
|
const QModelIndex childTopLeft = child.siblingAtColumn(column.first());
|
||||||
|
const QModelIndex childBottomRight = child.sibling((childCount - 1), column.last());
|
||||||
|
emit dataChanged(childTopLeft, childBottomRight);
|
||||||
|
}
|
||||||
|
|
||||||
|
// check generations further down
|
||||||
|
parentIndexes.reserve(childCount);
|
||||||
|
for (int i = 0; i < childCount; ++i)
|
||||||
|
{
|
||||||
|
const QModelIndex sibling = child.siblingAtRow(i);
|
||||||
|
if (hasChildren(sibling))
|
||||||
|
parentIndexes.push_back(sibling);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,7 @@
|
|||||||
#include <QAbstractItemModel>
|
#include <QAbstractItemModel>
|
||||||
#include <QVector>
|
#include <QVector>
|
||||||
|
|
||||||
|
#include "base/indexrange.h"
|
||||||
#include "torrentcontentmodelitem.h"
|
#include "torrentcontentmodelitem.h"
|
||||||
|
|
||||||
class QFileIconProvider;
|
class QFileIconProvider;
|
||||||
@@ -79,12 +80,12 @@ public:
|
|||||||
signals:
|
signals:
|
||||||
void filteredFilesChanged();
|
void filteredFilesChanged();
|
||||||
|
|
||||||
public slots:
|
|
||||||
void selectAll();
|
|
||||||
void selectNone();
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
TorrentContentModelFolder *m_rootItem;
|
using ColumnInterval = IndexInterval<int>;
|
||||||
|
|
||||||
|
void notifySubtreeUpdated(const QModelIndex &index, const QVector<ColumnInterval> &columns);
|
||||||
|
|
||||||
|
TorrentContentModelFolder *m_rootItem = nullptr;
|
||||||
QVector<TorrentContentModelFile *> m_filesIndex;
|
QVector<TorrentContentModelFile *> m_filesIndex;
|
||||||
QFileIconProvider *m_fileIconProvider;
|
QFileIconProvider *m_fileIconProvider;
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -72,11 +72,14 @@ namespace
|
|||||||
return scheme;
|
return scheme;
|
||||||
}
|
}
|
||||||
|
|
||||||
QString getHost(const QString &tracker)
|
QString getHost(const QString &url)
|
||||||
{
|
{
|
||||||
// We want the domain + tld. Subdomains should be disregarded
|
// We want the domain + tld. Subdomains should be disregarded
|
||||||
const QUrl url {tracker};
|
// If failed to parse the domain or IP address, original input should be returned
|
||||||
const QString host {url.host()};
|
|
||||||
|
const QString host = QUrl(url).host();
|
||||||
|
if (host.isEmpty())
|
||||||
|
return url;
|
||||||
|
|
||||||
// host is in IP format
|
// host is in IP format
|
||||||
if (!QHostAddress(host).isNull())
|
if (!QHostAddress(host).isNull())
|
||||||
@@ -388,10 +391,8 @@ void TrackerFiltersList::addItem(const QString &tracker, const BitTorrent::Torre
|
|||||||
void TrackerFiltersList::removeItem(const QString &tracker, const BitTorrent::TorrentID &id)
|
void TrackerFiltersList::removeItem(const QString &tracker, const BitTorrent::TorrentID &id)
|
||||||
{
|
{
|
||||||
const QString host = getHost(tracker);
|
const QString host = getHost(tracker);
|
||||||
QSet<BitTorrent::TorrentID> torrentIDs = m_trackers.value(host);
|
|
||||||
|
|
||||||
if (torrentIDs.empty())
|
QSet<BitTorrent::TorrentID> torrentIDs = m_trackers.value(host);
|
||||||
return;
|
|
||||||
torrentIDs.remove(id);
|
torrentIDs.remove(id);
|
||||||
|
|
||||||
int row = 0;
|
int row = 0;
|
||||||
|
|||||||
@@ -52,11 +52,11 @@ WatchedFolderOptionsDialog::WatchedFolderOptionsDialog(
|
|||||||
m_ui->savePath->setMode(FileSystemPathEdit::Mode::DirectorySave);
|
m_ui->savePath->setMode(FileSystemPathEdit::Mode::DirectorySave);
|
||||||
m_ui->savePath->setDialogCaption(tr("Choose save path"));
|
m_ui->savePath->setDialogCaption(tr("Choose save path"));
|
||||||
|
|
||||||
const auto *session = BitTorrent::Session::instance();
|
|
||||||
|
|
||||||
m_ui->downloadPath->setMode(FileSystemPathEdit::Mode::DirectorySave);
|
m_ui->downloadPath->setMode(FileSystemPathEdit::Mode::DirectorySave);
|
||||||
m_ui->downloadPath->setDialogCaption(tr("Choose save path"));
|
m_ui->downloadPath->setDialogCaption(tr("Choose save path"));
|
||||||
m_ui->groupBoxDownloadPath->setChecked(watchedFolderOptions.addTorrentParams.useDownloadPath.value_or(session->isDownloadPathEnabled()));
|
|
||||||
|
const auto *session = BitTorrent::Session::instance();
|
||||||
|
m_useDownloadPath = watchedFolderOptions.addTorrentParams.useDownloadPath.value_or(session->isDownloadPathEnabled());
|
||||||
|
|
||||||
connect(m_ui->comboTTM, qOverload<int>(&QComboBox::currentIndexChanged), this, &WatchedFolderOptionsDialog::onTMMChanged);
|
connect(m_ui->comboTTM, qOverload<int>(&QComboBox::currentIndexChanged), this, &WatchedFolderOptionsDialog::onTMMChanged);
|
||||||
connect(m_ui->categoryComboBox, qOverload<int>(&QComboBox::currentIndexChanged), this, &WatchedFolderOptionsDialog::onCategoryChanged);
|
connect(m_ui->categoryComboBox, qOverload<int>(&QComboBox::currentIndexChanged), this, &WatchedFolderOptionsDialog::onCategoryChanged);
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user