Sat, 22 Dec 2012 13:13:56 +0100
Fixed a non-fatal issue in the IRC widget related to changing an identity.
--- a/Network/IRC/IrcNetworkManager.py Sat Dec 22 12:22:37 2012 +0100 +++ b/Network/IRC/IrcNetworkManager.py Sat Dec 22 13:13:56 2012 +0100 @@ -701,9 +701,11 @@ @signal dataChanged() emitted after some data has changed @signal networksChanged() emitted after a network object has changed + @signal identitiesChanged() emitted after an identity object has changed """ dataChanged = pyqtSignal() networksChanged = pyqtSignal() + identitiesChanged = pyqtSignal() def __init__(self, parent=None): """ @@ -926,6 +928,7 @@ Public method to indicate a change of an identity object. """ self.dataChanged.emit() + self.identitiesChanged.emit() ################################################################## ## Network related methods below
--- a/Network/IRC/IrcNetworkWidget.py Sat Dec 22 12:22:37 2012 +0100 +++ b/Network/IRC/IrcNetworkWidget.py Sat Dec 22 13:13:56 2012 +0100 @@ -81,6 +81,7 @@ self.networkCombo.addItems(self.__manager.getNetworkNames()) self.__manager.networksChanged.connect(self.__refreshNetworks) + self.__manager.identitiesChanged.connect(self.__refreshNetworks) def autoConnect(self): """ @@ -102,13 +103,17 @@ currentNetwork = self.networkCombo.currentText() currentNick = self.nickCombo.currentText() currentChannel = self.channelCombo.currentText() + blocked = self.networkCombo.blockSignals(True) self.networkCombo.clear() self.networkCombo.addItems(self.__manager.getNetworkNames()) + self.networkCombo.blockSignals(blocked) row = self.networkCombo.findText(currentNetwork) if row == -1: row = 0 + blocked = self.nickCombo.blockSignals(True) self.networkCombo.setCurrentIndex(row) self.nickCombo.setEditText(currentNick) + self.nickCombo.blockSignals(blocked) self.channelCombo.setEditText(currentChannel) @pyqtSlot() @@ -171,7 +176,6 @@ @param networkName selected network name (string) """ network = self.__manager.getNetwork(networkName) - self.channelCombo.clear() self.nickCombo.clear() self.channelCombo.clear() if network:
--- a/Network/IRC/IrcWidget.py Sat Dec 22 12:22:37 2012 +0100 +++ b/Network/IRC/IrcWidget.py Sat Dec 22 13:13:56 2012 +0100 @@ -853,7 +853,7 @@ @param nick nick name to use (str) """ - if nick: + if nick and nick != self.__nickName: self.__send("NICK " + nick) def __setChannelTypePrefixes(self, prefixes):