diff --git a/src/base/bittorrent/session.cpp b/src/base/bittorrent/session.cpp index 1644e00aa..96a17f738 100644 --- a/src/base/bittorrent/session.cpp +++ b/src/base/bittorrent/session.cpp @@ -290,6 +290,7 @@ Session::Session(QObject *parent) , m_port(BITTORRENT_SESSION_KEY("Port"), 8999) , m_useRandomPort(BITTORRENT_SESSION_KEY("UseRandomPort"), false) , m_networkInterface(BITTORRENT_SESSION_KEY("Interface")) + , m_networkInterfaceName(BITTORRENT_SESSION_KEY("InterfaceName")) , m_networkInterfaceAddress(BITTORRENT_SESSION_KEY("InterfaceAddress")) , m_isIPv6Enabled(BITTORRENT_SESSION_KEY("IPv6Enabled"), false) , m_encryption(BITTORRENT_SESSION_KEY("Encryption"), 0) @@ -2251,6 +2252,16 @@ void Session::setNetworkInterface(const QString &interface) } } +QString Session::networkInterfaceName() const +{ + return m_networkInterfaceName; +} + +void Session::setNetworkInterfaceName(const QString &name) +{ + m_networkInterfaceName = name; +} + QString Session::networkInterfaceAddress() const { return m_networkInterfaceAddress; diff --git a/src/base/bittorrent/session.h b/src/base/bittorrent/session.h index 8ddc47efc..b4a3ae8f3 100644 --- a/src/base/bittorrent/session.h +++ b/src/base/bittorrent/session.h @@ -260,6 +260,8 @@ namespace BitTorrent void setUseRandomPort(bool value); QString networkInterface() const; void setNetworkInterface(const QString &interface); + QString networkInterfaceName() const; + void setNetworkInterfaceName(const QString &name); QString networkInterfaceAddress() const; void setNetworkInterfaceAddress(const QString &address); bool isIPv6Enabled() const; @@ -551,6 +553,7 @@ namespace BitTorrent CachedSettingValue m_port; CachedSettingValue m_useRandomPort; CachedSettingValue m_networkInterface; + CachedSettingValue m_networkInterfaceName; CachedSettingValue m_networkInterfaceAddress; CachedSettingValue m_isIPv6Enabled; CachedSettingValue m_encryption; diff --git a/src/base/preferences.cpp b/src/base/preferences.cpp index f89333149..ad6123598 100644 --- a/src/base/preferences.cpp +++ b/src/base/preferences.cpp @@ -701,16 +701,6 @@ void Preferences::resolvePeerHostNames(bool resolve) setValue("Preferences/Connection/ResolvePeerHostNames", resolve); } -QString Preferences::getNetworkInterfaceName() const -{ - return value("Preferences/Connection/InterfaceName").toString(); -} - -void Preferences::setNetworkInterfaceName(const QString& iface) -{ - setValue("Preferences/Connection/InterfaceName", iface); -} - #if (defined(Q_OS_UNIX) && !defined(Q_OS_MAC)) bool Preferences::useSystemIconTheme() const { diff --git a/src/base/preferences.h b/src/base/preferences.h index 18bd1a1b6..d5780ea6b 100644 --- a/src/base/preferences.h +++ b/src/base/preferences.h @@ -226,8 +226,6 @@ public: void resolvePeerCountries(bool resolve); bool resolvePeerHostNames() const; void resolvePeerHostNames(bool resolve); - QString getNetworkInterfaceName() const; - void setNetworkInterfaceName(const QString& iface); #if (defined(Q_OS_UNIX) && !defined(Q_OS_MAC)) bool useSystemIconTheme() const; void useSystemIconTheme(bool enabled); diff --git a/src/base/settingsstorage.cpp b/src/base/settingsstorage.cpp index df97a6c3a..31dd9590c 100644 --- a/src/base/settingsstorage.cpp +++ b/src/base/settingsstorage.cpp @@ -118,6 +118,7 @@ namespace {"BitTorrent/Session/UseRandomPort", "Preferences/General/UseRandomPort"}, {"BitTorrent/Session/IPv6Enabled", "Preferences/Connection/InterfaceListenIPv6"}, {"BitTorrent/Session/Interface", "Preferences/Connection/Interface"}, + {"BitTorrent/Session/InterfaceName", "Preferences/Connection/InterfaceName"}, {"BitTorrent/Session/InterfaceAddress", "Preferences/Connection/InterfaceAddress"}, {"BitTorrent/Session/SaveResumeDataInterval", "Preferences/Downloads/SaveResumeDataInterval"}, {"BitTorrent/Session/Encryption", "Preferences/Bittorrent/Encryption"}, diff --git a/src/gui/advancedsettings.cpp b/src/gui/advancedsettings.cpp index c1182c9fc..e6a66257f 100644 --- a/src/gui/advancedsettings.cpp +++ b/src/gui/advancedsettings.cpp @@ -146,11 +146,11 @@ void AdvancedSettings::saveAdvancedSettings() if (combo_iface.currentIndex() == 0) { // All interfaces (default) session->setNetworkInterface(QString()); - pref->setNetworkInterfaceName(QString()); + session->setNetworkInterfaceName(QString()); } else { session->setNetworkInterface(combo_iface.itemData(combo_iface.currentIndex()).toString()); - pref->setNetworkInterfaceName(combo_iface.currentText()); + session->setNetworkInterfaceName(combo_iface.currentText()); } // Interface address @@ -333,7 +333,7 @@ void AdvancedSettings::loadAdvancedSettings() } // Saved interface does not exist, show it anyway if (!interface_exists) { - combo_iface.addItem(pref->getNetworkInterfaceName(), current_iface); + combo_iface.addItem(session->networkInterfaceName(), current_iface); combo_iface.setCurrentIndex(i); } addRow(NETWORK_IFACE, tr("Network Interface (requires restart)"), &combo_iface);