You've already forked qBittorrent
mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-10-23 22:32:16 +02:00
Compare commits
192 Commits
release-2.
...
release-2.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
51c01a7f24 | ||
|
|
3e27595cf1 | ||
|
|
44ab905131 | ||
|
|
2a04ac55de | ||
|
|
45ad494a3e | ||
|
|
78fe44ec01 | ||
|
|
536bd85fd0 | ||
|
|
84705489fc | ||
|
|
ff085e955e | ||
|
|
4b62c24e54 | ||
|
|
c7658e2e96 | ||
|
|
9fe693630c | ||
|
|
3bba7578af | ||
|
|
53b6a25442 | ||
|
|
5e7de313fc | ||
|
|
8c91e9d4e2 | ||
|
|
078ee59b4e | ||
|
|
438e277c42 | ||
|
|
a4c1b93a42 | ||
|
|
82877a9afa | ||
|
|
6bee757652 | ||
|
|
d8cdc3094a | ||
|
|
db455c9832 | ||
|
|
b6c931905a | ||
|
|
6647973391 | ||
|
|
4c85ea678d | ||
|
|
dc27b5e976 | ||
|
|
4828f6190e | ||
|
|
84a0f92546 | ||
|
|
e3a9194010 | ||
|
|
727e212b8e | ||
|
|
df64ede724 | ||
|
|
8a07e01181 | ||
|
|
d67d4a38ce | ||
|
|
3b898c52d3 | ||
|
|
4e79411d9f | ||
|
|
524875e458 | ||
|
|
3c75774cfb | ||
|
|
596737ba2f | ||
|
|
e142aafea1 | ||
|
|
09da69918e | ||
|
|
e0c2e3dd2c | ||
|
|
5dc79e67fc | ||
|
|
14341f3be2 | ||
|
|
2acf90d813 | ||
|
|
ae1d6492d0 | ||
|
|
0a0579bc8b | ||
|
|
ead93baa21 | ||
|
|
39bad79f5a | ||
|
|
f25b198516 | ||
|
|
15d3b07f34 | ||
|
|
feeecbf395 | ||
|
|
e7abeb9bd4 | ||
|
|
879a010c3d | ||
|
|
89e64a212e | ||
|
|
82c7c02611 | ||
|
|
b6c3189fe3 | ||
|
|
82e41f36ee | ||
|
|
4b1eade157 | ||
|
|
b79ed40e32 | ||
|
|
d06e0b639e | ||
|
|
d1cfb4f066 | ||
|
|
efa1f4ebb4 | ||
|
|
fa4eda9c87 | ||
|
|
1efb122d9c | ||
|
|
c2e5ecaaa0 | ||
|
|
313dfd6475 | ||
|
|
8dd753ce46 | ||
|
|
435d0e1019 | ||
|
|
37cd9c5b7b | ||
|
|
8b9971003d | ||
|
|
79cdad47f1 | ||
|
|
8f1276350e | ||
|
|
c05e6ba580 | ||
|
|
2da5e03741 | ||
|
|
a9ce197d04 | ||
|
|
1bce5b7837 | ||
|
|
74718bc568 | ||
|
|
217937217d | ||
|
|
af1dfd41ab | ||
|
|
54c6ccc087 | ||
|
|
d9e15e40f4 | ||
|
|
12d1e852f4 | ||
|
|
802d262776 | ||
|
|
04b63829d7 | ||
|
|
8568b29cc1 | ||
|
|
b1471c2a45 | ||
|
|
a86b87244d | ||
|
|
e431b96ca1 | ||
|
|
ce5cdd0eea | ||
|
|
c5a831b8ec | ||
|
|
872002b730 | ||
|
|
cb6fad87de | ||
|
|
0f1473e212 | ||
|
|
b45171ba43 | ||
|
|
28b8f36f16 | ||
|
|
35c1389794 | ||
|
|
6ae7db4afb | ||
|
|
7b646018ea | ||
|
|
4c7a5633da | ||
|
|
76d3e9033d | ||
|
|
c9d5370dc4 | ||
|
|
7cdbe8ef34 | ||
|
|
8b819d7e9e | ||
|
|
7f0c8dde24 | ||
|
|
74c32a0ecd | ||
|
|
87174ef3a4 | ||
|
|
462c821df9 | ||
|
|
42d7e20c1d | ||
|
|
933b924766 | ||
|
|
be15e6d34c | ||
|
|
d6997e7833 | ||
|
|
e94769b58b | ||
|
|
7616c22897 | ||
|
|
138cd90736 | ||
|
|
9aae8040ef | ||
|
|
2d5612435c | ||
|
|
2b1e4912f2 | ||
|
|
b1fe50e056 | ||
|
|
09a45abd92 | ||
|
|
adf615d0cc | ||
|
|
954e010493 | ||
|
|
86b4db75be | ||
|
|
587c4f3b14 | ||
|
|
8238c13dc0 | ||
|
|
5c8dd9f0fb | ||
|
|
dfcdb18b41 | ||
|
|
e402674092 | ||
|
|
783004ae58 | ||
|
|
6ff7c6ed06 | ||
|
|
a0ecbe01a1 | ||
|
|
47c2f2e30a | ||
|
|
721fa821f7 | ||
|
|
6580d23263 | ||
|
|
0b874d9c42 | ||
|
|
679c91435d | ||
|
|
d68b7fc9cb | ||
|
|
02722dc3c9 | ||
|
|
844bd52c67 | ||
|
|
51bc67042e | ||
|
|
a8978b2ae4 | ||
|
|
fcf3b8e14a | ||
|
|
015bdc7930 | ||
|
|
370b986ab1 | ||
|
|
9d7591fc84 | ||
|
|
9b6b357c9e | ||
|
|
8fd7b86f45 | ||
|
|
35a4e4aa1c | ||
|
|
d24abc3088 | ||
|
|
615e08b74f | ||
|
|
4644b5cf15 | ||
|
|
cb719e2bf5 | ||
|
|
ab8e35b6b4 | ||
|
|
76ea7525e3 | ||
|
|
64615adc23 | ||
|
|
a205591178 | ||
|
|
25e27f4614 | ||
|
|
4a66c33a2c | ||
|
|
16be6fe474 | ||
|
|
e170d9c3a8 | ||
|
|
3adc58bb87 | ||
|
|
55aa6c36ee | ||
|
|
350bf0ffd4 | ||
|
|
a9565e363a | ||
|
|
378e24411c | ||
|
|
22c785b951 | ||
|
|
eb0053fe48 | ||
|
|
6996ccc2c8 | ||
|
|
fcef304427 | ||
|
|
bf5c1951ba | ||
|
|
e931209860 | ||
|
|
db4520a13b | ||
|
|
4305e6b1e0 | ||
|
|
b173458814 | ||
|
|
833750513b | ||
|
|
9e63a0babb | ||
|
|
e48909dea4 | ||
|
|
f306d02ac9 | ||
|
|
f9f3642116 | ||
|
|
1537c70988 | ||
|
|
847a6c75d7 | ||
|
|
ecffc5e550 | ||
|
|
65e9401c5d | ||
|
|
ae3632e5c1 | ||
|
|
9ba3862be1 | ||
|
|
793c1be9bd | ||
|
|
1ce6f4a7c3 | ||
|
|
816cfefbac | ||
|
|
0eec718354 | ||
|
|
b80148c7e4 | ||
|
|
3bc946bfb9 | ||
|
|
a62169001e |
7
AUTHORS
7
AUTHORS
@@ -50,6 +50,10 @@ Images Authors:
|
|||||||
copyright: Greg Houston <gregory.houston@gmail.com>
|
copyright: Greg Houston <gregory.houston@gmail.com>
|
||||||
license: MIT
|
license: MIT
|
||||||
|
|
||||||
|
* file: src/Icons/skin/qbittorrent_mono.svg
|
||||||
|
copyright: Daniel Eguren <deguren@gmail.com>
|
||||||
|
license: LGPL
|
||||||
|
|
||||||
* file: src/search_engine/engines/btjunkie.png
|
* file: src/search_engine/engines/btjunkie.png
|
||||||
copyright: Downloaded from btjunkie.org
|
copyright: Downloaded from btjunkie.org
|
||||||
|
|
||||||
@@ -89,7 +93,8 @@ Translations authors:
|
|||||||
- Italian: Matteo Sechi (bu17714@gmail.com)
|
- Italian: Matteo Sechi (bu17714@gmail.com)
|
||||||
- Japanese: Nardog (alphisation@gmail.com)
|
- Japanese: Nardog (alphisation@gmail.com)
|
||||||
- Korean: Jin Woo Sin (jin828sin@users.sourceforge.net)
|
- Korean: Jin Woo Sin (jin828sin@users.sourceforge.net)
|
||||||
- Norwegian: Lars-Erik Labori (hamil@users.sourceforge.net)
|
- Lithuanian: Naglis Jonaitis (njonaitis@gmail.com)
|
||||||
|
- Norwegian: Tomaso
|
||||||
- Polish: Mariusz Fik (fisiu@opensuse.org)
|
- Polish: Mariusz Fik (fisiu@opensuse.org)
|
||||||
- Portuguese: Nick Marinho (nickmarinho@gmail.com)
|
- Portuguese: Nick Marinho (nickmarinho@gmail.com)
|
||||||
- Romanian: Obada Denis (obadadenis@users.sourceforge.net)
|
- Romanian: Obada Denis (obadadenis@users.sourceforge.net)
|
||||||
|
|||||||
51
Changelog
51
Changelog
@@ -1,39 +1,18 @@
|
|||||||
* Sun Jan 23 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.6.4
|
* Sun Mar 20 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.7.0
|
||||||
- BUGFIX: Added unicode support to email notification
|
- FEATURE: Added search field for torrent content
|
||||||
- BUGFIX: Improved compatibility with various SMTP servers
|
- FEATURE: Added auto-shutdown confirmation dialog
|
||||||
- BUGFIX: Fix Labeling in RSS downloader
|
- FEATURE: Added option to skip torrent deletion confirmation (Ville Kiiskinen)
|
||||||
- BUGFIX: Avoid main window flashing on startup (closes #703984)
|
- FEATURE: IP address reported to trackers is now customizable
|
||||||
- BUGFIX: Improved hostname resolution code
|
- FEATURE: Inhibit system sleep when torrents are active (Vladimir Golovnev)
|
||||||
- BUGFIX: Dropped dependency on libboost-thread
|
- FEATURE: Added option to bypass Web UI authentication for localhost
|
||||||
- BUGFIX: Display legal notice on screen center
|
- FEATURE: Added option to disable program exit confirmation
|
||||||
- BUGFIX: Fix renaming of single-file torrents (by Vladimir Golovnev)
|
- FEATURE: Added per-torrent ratio limiting (Christian Kandeler)
|
||||||
- I18N: More dialog buttons are now translated (by Vladimir Golovnev)
|
- FEATURE: Torrent content list is now sortable
|
||||||
- I18N: Fix translation of size units (by Vladimir Golovnev)
|
- BUGFIX: Fix compilation with namespaced Qt (Christian Kandeler)
|
||||||
|
- BUGFIX: Added length restriction on UI lock password
|
||||||
* Sat Jan 15 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.6.3
|
- COSMETIC: Added monochrome tray icon
|
||||||
- BUGFIX: Fix possible crashes in full allocation mode
|
- COSMETIC: Improved status bar's style
|
||||||
- BUGFIX: Fix icon size issues (Linux, icon theme)
|
- OTHER: Make QtDBus dependency optional (X11)
|
||||||
- BUGFIX: Fixed file priority context menu
|
|
||||||
- BUGFIX: Remove dbus dependency in nox mode
|
|
||||||
- BUGFIX: Fix compilation on FreeBSD
|
|
||||||
- I18N: Improve Web UI translation
|
|
||||||
- I18N: Updated Polish translation
|
|
||||||
|
|
||||||
* Wed Jan 12 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.6.2
|
|
||||||
- BUGFIX: Do not report PeX as being disabled when DHT is
|
|
||||||
- BUGFIX: Fix possible crash on adding magnet links
|
|
||||||
- BUGFIX: Fix torrent import (was not working)
|
|
||||||
- I18N: Updated Greek, Croatian, Russian, Unkrainian and Bulgarian translations
|
|
||||||
- I18N: Added Armenian translation (New)
|
|
||||||
- I18N: Remove country flags from program preferences (language selection)
|
|
||||||
- I18N: Translate locale names (language selection)
|
|
||||||
|
|
||||||
* Mon Jan 10 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.6.1
|
|
||||||
- BUGFIX: Really disable torrent addition dialog by default
|
|
||||||
- BUGFIX: Fix some missing icons in the Web UI
|
|
||||||
- BUGFIX: Fix magnet torrent name update problem
|
|
||||||
- COSMETIC: Use 24px size for toolbar icons and reduce spacing
|
|
||||||
- COSMETIC: Move transfer list filter on the right side of the toolbar
|
|
||||||
|
|
||||||
* Sun Jan 9 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.6.0
|
* Sun Jan 9 2011 - Christophe Dumez <chris@qbittorrent.org> - v2.6.0
|
||||||
- FEATURE: Use system icons (Linux, Qt >= 4.6)
|
- FEATURE: Use system icons (Linux, Qt >= 4.6)
|
||||||
|
|||||||
86
configure
vendored
86
configure
vendored
@@ -22,6 +22,8 @@ Dependency options:
|
|||||||
--disable-gui Disable qBittorrent
|
--disable-gui Disable qBittorrent
|
||||||
Graphical user interface for
|
Graphical user interface for
|
||||||
headless running
|
headless running
|
||||||
|
--disable-qt-dbus Disable use of qt-dbus
|
||||||
|
--disable-qt-svg Disable use of qt-svg
|
||||||
--with-libboost-inc=[path] Path to libboost include
|
--with-libboost-inc=[path] Path to libboost include
|
||||||
files
|
files
|
||||||
--with-libboost-lib=[path] Path to libboost library
|
--with-libboost-lib=[path] Path to libboost library
|
||||||
@@ -162,6 +164,16 @@ while [ $# -gt 0 ]; do
|
|||||||
shift
|
shift
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
--disable-qt-dbus)
|
||||||
|
QC_DISABLE_qt_dbus="Y"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
|
--disable-qt-svg)
|
||||||
|
QC_DISABLE_qt_svg="Y"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
|
||||||
--with-libboost-inc=*)
|
--with-libboost-inc=*)
|
||||||
QC_WITH_LIBBOOST_INC=$optarg
|
QC_WITH_LIBBOOST_INC=$optarg
|
||||||
shift
|
shift
|
||||||
@@ -215,6 +227,8 @@ echo DATADIR=$DATADIR
|
|||||||
echo EX_QTDIR=$EX_QTDIR
|
echo EX_QTDIR=$EX_QTDIR
|
||||||
echo QC_ENABLE_DEBUG=$QC_ENABLE_DEBUG
|
echo QC_ENABLE_DEBUG=$QC_ENABLE_DEBUG
|
||||||
echo QC_DISABLE_GUI=$QC_DISABLE_GUI
|
echo QC_DISABLE_GUI=$QC_DISABLE_GUI
|
||||||
|
echo QC_DISABLE_qt_dbus=$QC_DISABLE_qt_dbus
|
||||||
|
echo QC_DISABLE_qt_svg=$QC_DISABLE_qt_svg
|
||||||
echo QC_WITH_LIBBOOST_INC=$QC_WITH_LIBBOOST_INC
|
echo QC_WITH_LIBBOOST_INC=$QC_WITH_LIBBOOST_INC
|
||||||
echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB
|
echo QC_WITH_LIBBOOST_LIB=$QC_WITH_LIBBOOST_LIB
|
||||||
echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify
|
echo QC_DISABLE_libnotify=$QC_DISABLE_libnotify
|
||||||
@@ -355,6 +369,70 @@ public:
|
|||||||
return(QT_VERSION >= 0x040500);
|
return(QT_VERSION >= 0x040500);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
#line 1 "qt-dbus.qcm"
|
||||||
|
/*
|
||||||
|
-----BEGIN QCMOD-----
|
||||||
|
name: qt-dbus
|
||||||
|
-----END QCMOD-----
|
||||||
|
*/
|
||||||
|
// see Conf::findPkgConfig
|
||||||
|
class qc_qt_dbus : public ConfObj
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
qc_qt_dbus(Conf *c) : ConfObj(c) {}
|
||||||
|
QString name() const { return "QtDBus >= 4.5"; }
|
||||||
|
QString shortname() const { return "qt-dbus"; }
|
||||||
|
QString checkString() const {
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_dbus").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return "";
|
||||||
|
return ConfObj::checkString();
|
||||||
|
}
|
||||||
|
bool exec(){
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_dbus").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return false;
|
||||||
|
QStringList incs;
|
||||||
|
QString req_ver = "4.5.0";
|
||||||
|
QString version, libs, other;
|
||||||
|
VersionMode mode = VersionMin;
|
||||||
|
if(conf->findPkgConfig("QtDBus", mode, req_ver, &version, &incs, &libs, &other)) {
|
||||||
|
conf->addExtra("CONFIG += dbus");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
#line 1 "qt-svg.qcm"
|
||||||
|
/*
|
||||||
|
-----BEGIN QCMOD-----
|
||||||
|
name: qt-svg
|
||||||
|
-----END QCMOD-----
|
||||||
|
*/
|
||||||
|
// see Conf::findPkgConfig
|
||||||
|
class qc_qt_svg : public ConfObj
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
qc_qt_svg(Conf *c) : ConfObj(c) {}
|
||||||
|
QString name() const { return "QtSvg >= 4.5"; }
|
||||||
|
QString shortname() const { return "qt-svg"; }
|
||||||
|
QString checkString() const {
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_svg").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return "";
|
||||||
|
return ConfObj::checkString();
|
||||||
|
}
|
||||||
|
bool exec(){
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_svg").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return false;
|
||||||
|
QStringList incs;
|
||||||
|
QString req_ver = "4.5.0";
|
||||||
|
QString version, libs, other;
|
||||||
|
VersionMode mode = VersionMin;
|
||||||
|
if(conf->findPkgConfig("QtSvg", mode, req_ver, &version, &incs, &libs, &other)) {
|
||||||
|
conf->addExtra("CONFIG += svg");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
#line 1 "pkg-config.qcm"
|
#line 1 "pkg-config.qcm"
|
||||||
/*
|
/*
|
||||||
-----BEGIN QCMOD-----
|
-----BEGIN QCMOD-----
|
||||||
@@ -645,6 +723,12 @@ cat >$1/modules_new.cpp <<EOT
|
|||||||
o = new qc_qt4(conf);
|
o = new qc_qt4(conf);
|
||||||
o->required = true;
|
o->required = true;
|
||||||
o->disabled = false;
|
o->disabled = false;
|
||||||
|
o = new qc_qt_dbus(conf);
|
||||||
|
o->required = false;
|
||||||
|
o->disabled = false;
|
||||||
|
o = new qc_qt_svg(conf);
|
||||||
|
o->required = false;
|
||||||
|
o->disabled = false;
|
||||||
o = new qc_pkg_config(conf);
|
o = new qc_pkg_config(conf);
|
||||||
o->required = true;
|
o->required = true;
|
||||||
o->disabled = false;
|
o->disabled = false;
|
||||||
@@ -1610,6 +1694,8 @@ export DATADIR
|
|||||||
export EX_QTDIR
|
export EX_QTDIR
|
||||||
export QC_ENABLE_DEBUG
|
export QC_ENABLE_DEBUG
|
||||||
export QC_DISABLE_GUI
|
export QC_DISABLE_GUI
|
||||||
|
export QC_DISABLE_qt_dbus
|
||||||
|
export QC_DISABLE_qt_svg
|
||||||
export QC_WITH_LIBBOOST_INC
|
export QC_WITH_LIBBOOST_INC
|
||||||
export QC_WITH_LIBBOOST_LIB
|
export QC_WITH_LIBBOOST_LIB
|
||||||
export QC_DISABLE_libnotify
|
export QC_DISABLE_libnotify
|
||||||
|
|||||||
@@ -6,6 +6,10 @@
|
|||||||
<dep type='qt4'>
|
<dep type='qt4'>
|
||||||
<required/>
|
<required/>
|
||||||
</dep>
|
</dep>
|
||||||
|
<dep type='qt-dbus'>
|
||||||
|
</dep>
|
||||||
|
<dep type='qt-svg'>
|
||||||
|
</dep>
|
||||||
<dep type='pkg-config'>
|
<dep type='pkg-config'>
|
||||||
<required/>
|
<required/>
|
||||||
</dep>
|
</dep>
|
||||||
|
|||||||
31
qcm/qt-dbus.qcm
Normal file
31
qcm/qt-dbus.qcm
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
/*
|
||||||
|
-----BEGIN QCMOD-----
|
||||||
|
name: qt-dbus
|
||||||
|
-----END QCMOD-----
|
||||||
|
*/
|
||||||
|
// see Conf::findPkgConfig
|
||||||
|
class qc_qt_dbus : public ConfObj
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
qc_qt_dbus(Conf *c) : ConfObj(c) {}
|
||||||
|
QString name() const { return "QtDBus >= 4.5"; }
|
||||||
|
QString shortname() const { return "qt-dbus"; }
|
||||||
|
QString checkString() const {
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_dbus").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return "";
|
||||||
|
return ConfObj::checkString();
|
||||||
|
}
|
||||||
|
bool exec(){
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_dbus").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return false;
|
||||||
|
QStringList incs;
|
||||||
|
QString req_ver = "4.5.0";
|
||||||
|
QString version, libs, other;
|
||||||
|
VersionMode mode = VersionMin;
|
||||||
|
if(conf->findPkgConfig("QtDBus", mode, req_ver, &version, &incs, &libs, &other)) {
|
||||||
|
conf->addExtra("CONFIG += dbus");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
31
qcm/qt-svg.qcm
Normal file
31
qcm/qt-svg.qcm
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
/*
|
||||||
|
-----BEGIN QCMOD-----
|
||||||
|
name: qt-svg
|
||||||
|
-----END QCMOD-----
|
||||||
|
*/
|
||||||
|
// see Conf::findPkgConfig
|
||||||
|
class qc_qt_svg : public ConfObj
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
qc_qt_svg(Conf *c) : ConfObj(c) {}
|
||||||
|
QString name() const { return "QtSvg >= 4.5"; }
|
||||||
|
QString shortname() const { return "qt-svg"; }
|
||||||
|
QString checkString() const {
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_svg").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return "";
|
||||||
|
return ConfObj::checkString();
|
||||||
|
}
|
||||||
|
bool exec(){
|
||||||
|
if(!conf->getenv("QC_DISABLE_qt_svg").isEmpty() || !conf->getenv("QC_DISABLE_GUI").isEmpty())
|
||||||
|
return false;
|
||||||
|
QStringList incs;
|
||||||
|
QString req_ver = "4.5.0";
|
||||||
|
QString version, libs, other;
|
||||||
|
VersionMode mode = VersionMin;
|
||||||
|
if(conf->findPkgConfig("QtSvg", mode, req_ver, &version, &incs, &libs, &other)) {
|
||||||
|
conf->addExtra("CONFIG += svg");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 722 B |
@@ -1,36 +1,39 @@
|
|||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Categories=Qt;Network;P2P;
|
Categories=Network;FileTransfer;P2P;Qt;
|
||||||
Comment=V2.6.4
|
Exec=qbittorrent %U
|
||||||
Exec=qbittorrent %f
|
GenericName=BitTorrent client
|
||||||
GenericName=Bittorrent client
|
GenericName[ar]=العميل BitTorrent
|
||||||
GenericName[ar]=العميل Bittorrent
|
|
||||||
GenericName[bg]=Торент клиент
|
GenericName[bg]=Торент клиент
|
||||||
GenericName[cs]=Bittorrent klient
|
GenericName[cs]=BitTorrent klient
|
||||||
GenericName[de]=Bittorren Client
|
GenericName[de]=BitTorren Client
|
||||||
GenericName[el]=Bittorrent πελάτης
|
GenericName[el]=BitTorrent πελάτης
|
||||||
GenericName[es]=Cliente Bittorrent
|
GenericName[es]=Cliente BitTorrent
|
||||||
GenericName[fi]=Bittorrent-ohjelma
|
GenericName[fi]=BitTorrent-ohjelma
|
||||||
GenericName[fr]=Client Bittorrent
|
GenericName[fr]=Client BitTorrent
|
||||||
GenericName[hr]=Bittorrent klijent
|
GenericName[hr]=BitTorrent klijent
|
||||||
GenericName[hu]=Bittorrent kliens
|
GenericName[hu]=BitTorrent kliens
|
||||||
GenericName[it]=Client Bittorrent
|
GenericName[it]=Client BitTorrent
|
||||||
GenericName[ja]=Bittorrent クライアント
|
GenericName[ja]=BitTorrent クライアント
|
||||||
GenericName[ko]=비토렌트 클라이언트
|
GenericName[ko]=비토렌트 클라이언트
|
||||||
GenericName[nl]=Bittorrent-cliënt
|
GenericName[lt]=BitTorrent klientas
|
||||||
GenericName[pl]=Klient Bittorrent
|
GenericName[nl]=BitTorrent-cliënt
|
||||||
GenericName[pt]=Cliente Bittorrent
|
GenericName[pl]=Klient BitTorrent
|
||||||
GenericName[pt_BR]=Cliente Bittorrent
|
GenericName[pt]=Cliente BitTorrent
|
||||||
GenericName[ro]=Client Bittorrent
|
GenericName[pt_BR]=Cliente BitTorrent
|
||||||
GenericName[ru]=клиент Bittorrent
|
GenericName[ro]=Client BitTorrent
|
||||||
GenericName[sk]=Klient siete Bittorrent
|
GenericName[ru]=клиент BitTorrent
|
||||||
GenericName[sr]=Bittorrent-клијент
|
GenericName[sk]=Klient siete BitTorrent
|
||||||
GenericName[sv]=Bittorrent-klient
|
GenericName[sr]=BitTorrent-клијент
|
||||||
GenericName[tr]=Bittorrent istemcisi
|
GenericName[sv]=BitTorrent-klient
|
||||||
GenericName[uk]=Bittorrent-клієнт
|
GenericName[tr]=BitTorrent istemcisi
|
||||||
GenericName[zh]=Bittorrent之用户
|
GenericName[uk]=BitTorrent-клієнт
|
||||||
GenericName[zh_TW]=Bittorrent客戶端
|
GenericName[zh]=BitTorrent之用户
|
||||||
|
GenericName[zh_TW]=BitTorrent客戶端
|
||||||
|
Comment=Download and share files over BitTorrent
|
||||||
|
Comment[fr]=Télécharger et partager des fichiers avec BitTorrent
|
||||||
|
Comment[pl]=Dzielenie się plikami przez BitTorrent
|
||||||
Icon=qbittorrent
|
Icon=qbittorrent
|
||||||
MimeType=application/x-bittorrent;
|
MimeType=application/x-bittorrent;x-scheme-handler/magnet;
|
||||||
Name=qBittorrent
|
Name=qBittorrent
|
||||||
Name[ko]=큐비토런트
|
Name[ko]=큐비토런트
|
||||||
Terminal=false
|
Terminal=false
|
||||||
|
|||||||
83
src/Icons/skin/qbittorrent_mono.svg
Normal file
83
src/Icons/skin/qbittorrent_mono.svg
Normal file
File diff suppressed because one or more lines are too long
|
After Width: | Height: | Size: 4.8 KiB |
BIN
src/Icons/skin/ratio.png
Normal file
BIN
src/Icons/skin/ratio.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 483 B |
Binary file not shown.
|
Before Width: | Height: | Size: 787 B |
@@ -47,7 +47,7 @@
|
|||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleGetInfoString</key>
|
<key>CFBundleGetInfoString</key>
|
||||||
<string>2.6.4</string>
|
<string>2.7.0</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
|
|||||||
@@ -78,7 +78,8 @@ class about : public QDialog, private Ui::AboutDlg{
|
|||||||
<li><u>Italian:</u> Matteo Sechi (bu17714@gmail.com)</li>\
|
<li><u>Italian:</u> Matteo Sechi (bu17714@gmail.com)</li>\
|
||||||
<li><u>Japanese:</u> Nardog (alphisation@gmail.com)</li>\
|
<li><u>Japanese:</u> Nardog (alphisation@gmail.com)</li>\
|
||||||
<li><u>Korean:</u> Jin Woo Sin (jin828sin@users.sourceforge.net)</li>\
|
<li><u>Korean:</u> Jin Woo Sin (jin828sin@users.sourceforge.net)</li>\
|
||||||
<li><u>Norwegian:</u> Lars-Erik Labori (hamil@users.sourceforge.net)</li>\
|
<li><u>Lithuanian:</u> Naglis Jonaitis (njonaitis@gmail.com)</li>\
|
||||||
|
<li><u>Norwegian:</u> Tomaso</li>\
|
||||||
<li><u>Polish:</u> Mariusz Fik (fisiu@opensuse.org)</li>\
|
<li><u>Polish:</u> Mariusz Fik (fisiu@opensuse.org)</li>\
|
||||||
<li><u>Portuguese:</u> Nick Marinho (nickmarinho@gmail.com)</li>\
|
<li><u>Portuguese:</u> Nick Marinho (nickmarinho@gmail.com)</li>\
|
||||||
<li><u>Romanian:</u> Obada Denis (obadadenis@users.sourceforge.net)</li>\
|
<li><u>Romanian:</u> Obada Denis (obadadenis@users.sourceforge.net)</li>\
|
||||||
|
|||||||
@@ -38,71 +38,75 @@
|
|||||||
#include "downloadthread.h"
|
#include "downloadthread.h"
|
||||||
#include "preferences.h"
|
#include "preferences.h"
|
||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
#include "rsssettings.h"
|
#include "rsssettings.h"
|
||||||
#endif
|
#endif
|
||||||
#include "qinisettings.h"
|
#include "qinisettings.h"
|
||||||
|
|
||||||
/** Download Thread **/
|
/** Download Thread **/
|
||||||
|
|
||||||
downloadThread::downloadThread(QObject* parent) : QObject(parent) {
|
DownloadThread::DownloadThread(QObject* parent) : QObject(parent) {
|
||||||
connect(&m_networkManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(processDlFinished(QNetworkReply*)));
|
connect(&m_networkManager, SIGNAL(finished (QNetworkReply*)), this, SLOT(processDlFinished(QNetworkReply*)));
|
||||||
#ifndef QT_NO_OPENSSL
|
#ifndef QT_NO_OPENSSL
|
||||||
connect(&m_networkManager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), this, SLOT(ignoreSslErrors(QNetworkReply*,QList<QSslError>)));
|
connect(&m_networkManager, SIGNAL(sslErrors(QNetworkReply*,QList<QSslError>)), this, SLOT(ignoreSslErrors(QNetworkReply*,QList<QSslError>)));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void downloadThread::processDlFinished(QNetworkReply* reply) {
|
void DownloadThread::processDlFinished(QNetworkReply* reply) {
|
||||||
QString url = reply->url().toString();
|
QString url = reply->url().toString();
|
||||||
qDebug("Download finished: %s", qPrintable(url));
|
qDebug("Download finished: %s", qPrintable(url));
|
||||||
|
// Check if the request was successful
|
||||||
if(reply->error() != QNetworkReply::NoError) {
|
if(reply->error() != QNetworkReply::NoError) {
|
||||||
// Failure
|
// Failure
|
||||||
qDebug("Download failure (%s), reason: %s", qPrintable(url), qPrintable(errorCodeToString(reply->error())));
|
qDebug("Download failure (%s), reason: %s", qPrintable(url), qPrintable(errorCodeToString(reply->error())));
|
||||||
emit downloadFailure(url, errorCodeToString(reply->error()));
|
emit downloadFailure(url, errorCodeToString(reply->error()));
|
||||||
} else {
|
reply->deleteLater();
|
||||||
QVariant redirection = reply->attribute(QNetworkRequest::RedirectionTargetAttribute);
|
return;
|
||||||
|
}
|
||||||
|
// Check if the server ask us to redirect somewhere lese
|
||||||
|
const QVariant redirection = reply->attribute(QNetworkRequest::RedirectionTargetAttribute);
|
||||||
if(redirection.isValid()) {
|
if(redirection.isValid()) {
|
||||||
// We should redirect
|
// We should redirect
|
||||||
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(redirection.toUrl().toString()));
|
qDebug("Redirecting from %s to %s", qPrintable(url), qPrintable(redirection.toUrl().toString()));
|
||||||
m_redirectMapping.insert(redirection.toUrl().toString(), url);
|
m_redirectMapping.insert(redirection.toUrl().toString(), url);
|
||||||
downloadUrl(redirection.toUrl().toString());
|
downloadUrl(redirection.toUrl().toString());
|
||||||
|
reply->deleteLater();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// Checking if it was redirecting, restoring initial URL
|
// Checking if it was redirected, restoring initial URL
|
||||||
if(m_redirectMapping.contains(url)) {
|
if(m_redirectMapping.contains(url)) {
|
||||||
url = m_redirectMapping.take(url);
|
url = m_redirectMapping.take(url);
|
||||||
}
|
}
|
||||||
// Success
|
// Success
|
||||||
QString filePath;
|
|
||||||
QTemporaryFile *tmpfile = new QTemporaryFile;
|
QTemporaryFile *tmpfile = new QTemporaryFile;
|
||||||
tmpfile->setAutoRemove(false);
|
tmpfile->setAutoRemove(false);
|
||||||
if (tmpfile->open()) {
|
if (tmpfile->open()) {
|
||||||
filePath = tmpfile->fileName();
|
QString filePath = tmpfile->fileName();
|
||||||
qDebug("Temporary filename is: %s", qPrintable(filePath));
|
qDebug("Temporary filename is: %s", qPrintable(filePath));
|
||||||
if(reply->open(QIODevice::ReadOnly)) {
|
if(reply->isOpen() || reply->open(QIODevice::ReadOnly)) {
|
||||||
// TODO: Support GZIP compression
|
// TODO: Support GZIP compression
|
||||||
tmpfile->write(reply->readAll());
|
tmpfile->write(reply->readAll());
|
||||||
reply->close();
|
|
||||||
tmpfile->close();
|
tmpfile->close();
|
||||||
|
// XXX: For some reason, tmpfile has to be destroyed before
|
||||||
|
// the signal is sent or the file stays locked on Windows
|
||||||
|
// for some reason.
|
||||||
delete tmpfile;
|
delete tmpfile;
|
||||||
// Send finished signal
|
// Send finished signal
|
||||||
emit downloadFinished(url, filePath);
|
emit downloadFinished(url, filePath);
|
||||||
} else {
|
} else {
|
||||||
// Error when reading the request
|
|
||||||
tmpfile->close();
|
|
||||||
delete tmpfile;
|
delete tmpfile;
|
||||||
|
// Error when reading the request
|
||||||
emit downloadFailure(url, tr("I/O Error"));
|
emit downloadFailure(url, tr("I/O Error"));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
delete tmpfile;
|
delete tmpfile;
|
||||||
emit downloadFailure(url, tr("I/O Error"));
|
emit downloadFailure(url, tr("I/O Error"));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
// Clean up
|
// Clean up
|
||||||
reply->deleteLater();
|
reply->deleteLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
void downloadThread::loadCookies(const QString &host_name, QString url) {
|
void DownloadThread::loadCookies(const QString &host_name, QString url) {
|
||||||
const QList<QByteArray> raw_cookies = RssSettings().getHostNameCookies(host_name);
|
const QList<QByteArray> raw_cookies = RssSettings().getHostNameCookies(host_name);
|
||||||
QNetworkCookieJar *cookie_jar = m_networkManager.cookieJar();
|
QNetworkCookieJar *cookie_jar = m_networkManager.cookieJar();
|
||||||
QList<QNetworkCookie> cookies;
|
QList<QNetworkCookie> cookies;
|
||||||
@@ -119,30 +123,24 @@ void downloadThread::loadCookies(const QString &host_name, QString url) {
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void downloadThread::downloadTorrentUrl(QString url) {
|
void DownloadThread::downloadTorrentUrl(const QString &url) {
|
||||||
#ifndef DISABLE_GUI
|
|
||||||
// Load cookies
|
|
||||||
QString host_name = QUrl::fromEncoded(url.toLocal8Bit()).host();
|
|
||||||
if(!host_name.isEmpty())
|
|
||||||
loadCookies(host_name, url);
|
|
||||||
#endif
|
|
||||||
// Process request
|
// Process request
|
||||||
QNetworkReply *reply = downloadUrl(url);
|
QNetworkReply *reply = downloadUrl(url);
|
||||||
connect(reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(checkDownloadSize(qint64,qint64)));
|
connect(reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(checkDownloadSize(qint64,qint64)));
|
||||||
}
|
}
|
||||||
|
|
||||||
QNetworkReply* downloadThread::downloadUrl(QString url){
|
QNetworkReply* DownloadThread::downloadUrl(const QString &url){
|
||||||
// Update proxy settings
|
// Update proxy settings
|
||||||
applyProxySettings();
|
applyProxySettings();
|
||||||
#ifndef DISABLE_GUI
|
#ifndef DISABLE_GUI
|
||||||
// Load cookies
|
// Load cookies
|
||||||
QString host_name = QUrl::fromEncoded(url.toLocal8Bit()).host();
|
QString host_name = QUrl::fromEncoded(url.toUtf8()).host();
|
||||||
if(!host_name.isEmpty())
|
if(!host_name.isEmpty())
|
||||||
loadCookies(host_name, url);
|
loadCookies(host_name, url);
|
||||||
#endif
|
#endif
|
||||||
// Process download request
|
// Process download request
|
||||||
qDebug("url is %s", qPrintable(url));
|
qDebug("url is %s", qPrintable(url));
|
||||||
const QUrl qurl = QUrl::fromEncoded(url.toLocal8Bit());
|
const QUrl qurl = QUrl::fromEncoded(url.toUtf8());
|
||||||
QNetworkRequest request(qurl);
|
QNetworkRequest request(qurl);
|
||||||
// Spoof Firefox 3.5 user agent to avoid
|
// Spoof Firefox 3.5 user agent to avoid
|
||||||
// Web server banning
|
// Web server banning
|
||||||
@@ -156,26 +154,28 @@ QNetworkReply* downloadThread::downloadUrl(QString url){
|
|||||||
return m_networkManager.get(request);
|
return m_networkManager.get(request);
|
||||||
}
|
}
|
||||||
|
|
||||||
void downloadThread::checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal) {
|
void DownloadThread::checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal) {
|
||||||
|
QNetworkReply *reply = qobject_cast<QNetworkReply*>(sender());
|
||||||
|
if(!reply) return;
|
||||||
if(bytesTotal > 0) {
|
if(bytesTotal > 0) {
|
||||||
QNetworkReply *reply = static_cast<QNetworkReply*>(sender());
|
|
||||||
// Total number of bytes is available
|
// Total number of bytes is available
|
||||||
if(bytesTotal > 1048576) {
|
if(bytesTotal > 1048576) {
|
||||||
// More than 1MB, this is probably not a torrent file, aborting...
|
// More than 1MB, this is probably not a torrent file, aborting...
|
||||||
reply->abort();
|
reply->abort();
|
||||||
|
reply->deleteLater();
|
||||||
} else {
|
} else {
|
||||||
disconnect(reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(checkDownloadSize(qint64,qint64)));
|
disconnect(reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(checkDownloadSize(qint64,qint64)));
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if(bytesReceived > 1048576) {
|
if(bytesReceived > 1048576) {
|
||||||
// More than 1MB, this is probably not a torrent file, aborting...
|
// More than 1MB, this is probably not a torrent file, aborting...
|
||||||
QNetworkReply *reply = static_cast<QNetworkReply*>(sender());
|
|
||||||
reply->abort();
|
reply->abort();
|
||||||
|
reply->deleteLater();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void downloadThread::applyProxySettings() {
|
void DownloadThread::applyProxySettings() {
|
||||||
QNetworkProxy proxy;
|
QNetworkProxy proxy;
|
||||||
const Preferences pref;
|
const Preferences pref;
|
||||||
if(pref.isProxyEnabled()) {
|
if(pref.isProxyEnabled()) {
|
||||||
@@ -203,7 +203,7 @@ void downloadThread::applyProxySettings() {
|
|||||||
m_networkManager.setProxy(proxy);
|
m_networkManager.setProxy(proxy);
|
||||||
}
|
}
|
||||||
|
|
||||||
QString downloadThread::errorCodeToString(QNetworkReply::NetworkError status) {
|
QString DownloadThread::errorCodeToString(QNetworkReply::NetworkError status) {
|
||||||
switch(status){
|
switch(status){
|
||||||
case QNetworkReply::HostNotFoundError:
|
case QNetworkReply::HostNotFoundError:
|
||||||
return tr("The remote host name was not found (invalid hostname)");
|
return tr("The remote host name was not found (invalid hostname)");
|
||||||
@@ -253,7 +253,7 @@ QString downloadThread::errorCodeToString(QNetworkReply::NetworkError status) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifndef QT_NO_OPENSSL
|
#ifndef QT_NO_OPENSSL
|
||||||
void downloadThread::ignoreSslErrors(QNetworkReply* reply,QList<QSslError> errors) {
|
void DownloadThread::ignoreSslErrors(QNetworkReply* reply, const QList<QSslError> &errors) {
|
||||||
Q_UNUSED(errors)
|
Q_UNUSED(errors)
|
||||||
// Ignore all SSL errors
|
// Ignore all SSL errors
|
||||||
reply->ignoreSslErrors();
|
reply->ignoreSslErrors();
|
||||||
|
|||||||
@@ -36,26 +36,28 @@
|
|||||||
#include <QHash>
|
#include <QHash>
|
||||||
#include <QSslError>
|
#include <QSslError>
|
||||||
|
|
||||||
|
QT_BEGIN_NAMESPACE
|
||||||
class QNetworkAccessManager;
|
class QNetworkAccessManager;
|
||||||
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
class downloadThread : public QObject {
|
class DownloadThread : public QObject {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
public:
|
public:
|
||||||
downloadThread(QObject* parent = 0);
|
DownloadThread(QObject* parent = 0);
|
||||||
QNetworkReply* downloadUrl(QString url);
|
QNetworkReply* downloadUrl(const QString &url);
|
||||||
void downloadTorrentUrl(QString url);
|
void downloadTorrentUrl(const QString &url);
|
||||||
//void setProxy(QString IP, int port, QString username, QString password);
|
//void setProxy(QString IP, int port, QString username, QString password);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void downloadFinished(QString url, QString file_path);
|
void downloadFinished(const QString &url, const QString &file_path);
|
||||||
void downloadFailure(QString url, QString reason);
|
void downloadFailure(const QString &url, const QString &reason);
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void processDlFinished(QNetworkReply* reply);
|
void processDlFinished(QNetworkReply* reply);
|
||||||
void checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal);
|
void checkDownloadSize(qint64 bytesReceived, qint64 bytesTotal);
|
||||||
#ifndef QT_NO_OPENSSL
|
#ifndef QT_NO_OPENSSL
|
||||||
void ignoreSslErrors(QNetworkReply*,QList<QSslError>);
|
void ignoreSslErrors(QNetworkReply*,const QList<QSslError>&);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
@@ -3,9 +3,11 @@
|
|||||||
|
|
||||||
#include <QWidget>
|
#include <QWidget>
|
||||||
|
|
||||||
|
QT_BEGIN_NAMESPACE
|
||||||
namespace Ui {
|
namespace Ui {
|
||||||
class ExecutionLog;
|
class ExecutionLog;
|
||||||
}
|
}
|
||||||
|
QT_END_NAMESPACE
|
||||||
|
|
||||||
class ExecutionLog : public QWidget
|
class ExecutionLog : public QWidget
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -73,6 +73,10 @@ void IconProvider::useSystemIconTheme(bool enable)
|
|||||||
m_useSystemTheme = enable;
|
m_useSystemTheme = enable;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Makes sure the icon is at least available in 16px and 24px size
|
||||||
|
// It scales the icon from the theme if necessary
|
||||||
|
// Otherwise, the UI looks broken if the icon is not available
|
||||||
|
// in the correct size.
|
||||||
QIcon IconProvider::generateDifferentSizes(const QIcon &icon)
|
QIcon IconProvider::generateDifferentSizes(const QIcon &icon)
|
||||||
{
|
{
|
||||||
QIcon new_icon;
|
QIcon new_icon;
|
||||||
|
|||||||
@@ -3,9 +3,7 @@
|
|||||||
<file>Icons/url.png</file>
|
<file>Icons/url.png</file>
|
||||||
<file>Icons/loading.png</file>
|
<file>Icons/loading.png</file>
|
||||||
<file>Icons/3-state-checkbox.gif</file>
|
<file>Icons/3-state-checkbox.gif</file>
|
||||||
<file>Icons/uparrow.png</file>
|
|
||||||
<file>Icons/sphere.png</file>
|
<file>Icons/sphere.png</file>
|
||||||
<file>Icons/downarrow.png</file>
|
|
||||||
<file>Icons/slow_off.png</file>
|
<file>Icons/slow_off.png</file>
|
||||||
<file>Icons/sphere2.png</file>
|
<file>Icons/sphere2.png</file>
|
||||||
<file>Icons/magnet.png</file>
|
<file>Icons/magnet.png</file>
|
||||||
@@ -36,10 +34,12 @@
|
|||||||
<file>Icons/skin/firewalled.png</file>
|
<file>Icons/skin/firewalled.png</file>
|
||||||
<file>Icons/skin/downloading.png</file>
|
<file>Icons/skin/downloading.png</file>
|
||||||
<file>Icons/skin/toolbox-divider.gif</file>
|
<file>Icons/skin/toolbox-divider.gif</file>
|
||||||
|
<file>Icons/skin/qbittorrent_mono.svg</file>
|
||||||
<file>Icons/skin/stalledUP.png</file>
|
<file>Icons/skin/stalledUP.png</file>
|
||||||
<file>Icons/skin/filteractive.png</file>
|
<file>Icons/skin/filteractive.png</file>
|
||||||
<file>Icons/skin/bg-handle-horizontal.gif</file>
|
<file>Icons/skin/bg-handle-horizontal.gif</file>
|
||||||
<file>Icons/skin/download.png</file>
|
<file>Icons/skin/download.png</file>
|
||||||
|
<file>Icons/skin/ratio.png</file>
|
||||||
<file>Icons/flags/sm.png</file>
|
<file>Icons/flags/sm.png</file>
|
||||||
<file>Icons/flags/lt.png</file>
|
<file>Icons/flags/lt.png</file>
|
||||||
<file>Icons/flags/th.png</file>
|
<file>Icons/flags/th.png</file>
|
||||||
|
|||||||
@@ -15,6 +15,7 @@
|
|||||||
<file>lang/qbittorrent_fr.qm</file>
|
<file>lang/qbittorrent_fr.qm</file>
|
||||||
<file>lang/qbittorrent_uk.qm</file>
|
<file>lang/qbittorrent_uk.qm</file>
|
||||||
<file>lang/qbittorrent_zh.qm</file>
|
<file>lang/qbittorrent_zh.qm</file>
|
||||||
|
<file>lang/qbittorrent_lt.qm</file>
|
||||||
<file>lang/qbittorrent_ko.qm</file>
|
<file>lang/qbittorrent_ko.qm</file>
|
||||||
<file>lang/qbittorrent_nb.qm</file>
|
<file>lang/qbittorrent_nb.qm</file>
|
||||||
<file>lang/qbittorrent_sv.qm</file>
|
<file>lang/qbittorrent_sv.qm</file>
|
||||||
@@ -24,6 +25,7 @@
|
|||||||
<file>lang/qbittorrent_pt_BR.qm</file>
|
<file>lang/qbittorrent_pt_BR.qm</file>
|
||||||
<file>lang/qbittorrent_da.qm</file>
|
<file>lang/qbittorrent_da.qm</file>
|
||||||
<file>lang/qbittorrent_cs.qm</file>
|
<file>lang/qbittorrent_cs.qm</file>
|
||||||
|
<file>lang/qbittorrent_hy.qm</file>
|
||||||
<file>lang/qbittorrent_pl.qm</file>
|
<file>lang/qbittorrent_pl.qm</file>
|
||||||
<file>lang/qbittorrent_bg.qm</file>
|
<file>lang/qbittorrent_bg.qm</file>
|
||||||
<file>lang/qbittorrent_ar.qm</file>
|
<file>lang/qbittorrent_ar.qm</file>
|
||||||
@@ -31,6 +33,5 @@
|
|||||||
<file>lang/qbittorrent_en.qm</file>
|
<file>lang/qbittorrent_en.qm</file>
|
||||||
<file>lang/qbittorrent_hr.qm</file>
|
<file>lang/qbittorrent_hr.qm</file>
|
||||||
<file>lang/qbittorrent_ro.qm</file>
|
<file>lang/qbittorrent_ro.qm</file>
|
||||||
<file>lang/qbittorrent_hy.qm</file>
|
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user