Bug fix: Change nick in memos on profile switch

This commit is contained in:
Kiooeht 2011-05-09 09:32:30 -07:00
parent d73ef0cab7
commit 381c77696d
5 changed files with 12 additions and 9 deletions

View file

@ -19,7 +19,6 @@ Bugs
* Issues with connecting? Client not closing connection right? People keep getting "nick taken" messages * Issues with connecting? Client not closing connection right? People keep getting "nick taken" messages
* Windows XP SP2: sometimes mouse clicks dont register? must be some kinda crash * Windows XP SP2: sometimes mouse clicks dont register? must be some kinda crash
* Leave memos on reconnect, needs to auto-rejoin memos * Leave memos on reconnect, needs to auto-rejoin memos
* Leave memos on profile change (should just change nick)
* When using mood sort, scroll position jumps to last selected chum * When using mood sort, scroll position jumps to last selected chum
Mac Bugs Mac Bugs

1
irc.py
View file

@ -135,6 +135,7 @@ class PesterIRC(QtCore.QThread):
helpers.nick(self.cli, handle) helpers.nick(self.cli, handle)
except socket.error: except socket.error:
self.setConnectionBroken() self.setConnectionBroken()
self.mainwindow.closeConversations(True)
self.updateMood() self.updateMood()
@QtCore.pyqtSlot() @QtCore.pyqtSlot()
def updateMood(self): def updateMood(self):

View file

@ -475,10 +475,8 @@ class PesterMemo(PesterConvo):
self.userlist.optionsMenu.setStyleSheet(theme["main/defaultwindow/style"]) self.userlist.optionsMenu.setStyleSheet(theme["main/defaultwindow/style"])
if theme.has_key("main/chums/scrollbar"): if theme.has_key("main/chums/scrollbar"):
print "yes scrollbars!"
self.setStyleSheet("QListWidget { %s } QScrollBar { %s } QScrollBar::handle { %s } QScrollBar::add-line { %s } QScrollBar::sub-line { %s } QScrollBar:up-arrow { %s } QScrollBar:down-arrow { %s }" % (theme["memos/userlist/style"], theme["main/chums/scrollbar/style"], theme["main/chums/scrollbar/handle"], theme["main/chums/scrollbar/downarrow"], theme["main/chums/scrollbar/uparrow"], theme["main/chums/scrollbar/uarrowstyle"], theme["main/chums/scrollbar/darrowstyle"] )) self.setStyleSheet("QListWidget { %s } QScrollBar { %s } QScrollBar::handle { %s } QScrollBar::add-line { %s } QScrollBar::sub-line { %s } QScrollBar:up-arrow { %s } QScrollBar:down-arrow { %s }" % (theme["memos/userlist/style"], theme["main/chums/scrollbar/style"], theme["main/chums/scrollbar/handle"], theme["main/chums/scrollbar/downarrow"], theme["main/chums/scrollbar/uparrow"], theme["main/chums/scrollbar/uarrowstyle"], theme["main/chums/scrollbar/darrowstyle"] ))
else: else:
print "no scroll bars :("
self.userlist.setStyleSheet(theme["memos/userlist/style"]) self.userlist.setStyleSheet(theme["memos/userlist/style"])
self.userlist.setFixedWidth(theme["memos/userlist/width"]) self.userlist.setFixedWidth(theme["memos/userlist/width"])
self.addchumAction.setText(theme["main/menus/rclickchumlist/addchum"]) self.addchumAction.setText(theme["main/menus/rclickchumlist/addchum"])

View file

@ -751,7 +751,6 @@ class PesterOptions(QtGui.QDialog):
widget = QtGui.QWidget() widget = QtGui.QWidget()
layout_chat = QtGui.QVBoxLayout(widget) layout_chat = QtGui.QVBoxLayout(widget)
layout_chat.setAlignment(QtCore.Qt.AlignTop) layout_chat.setAlignment(QtCore.Qt.AlignTop)
layout_chat.addWidget(self.tabcheck)
layout_chat.addWidget(self.timestampcheck) layout_chat.addWidget(self.timestampcheck)
layout_chat.addWidget(self.timestampBox) layout_chat.addWidget(self.timestampBox)
layout_chat.addWidget(self.secondscheck) layout_chat.addWidget(self.secondscheck)
@ -765,6 +764,7 @@ class PesterOptions(QtGui.QDialog):
widget = QtGui.QWidget() widget = QtGui.QWidget()
layout_interface = QtGui.QVBoxLayout(widget) layout_interface = QtGui.QVBoxLayout(widget)
layout_interface.setAlignment(QtCore.Qt.AlignTop) layout_interface.setAlignment(QtCore.Qt.AlignTop)
layout_interface.addWidget(self.tabcheck)
layout_interface.addLayout(layout_mini) layout_interface.addLayout(layout_mini)
layout_interface.addLayout(layout_close) layout_interface.addLayout(layout_close)
self.pages.addWidget(widget) self.pages.addWidget(widget)

View file

@ -1489,7 +1489,7 @@ class PesterWindow(MovingWindow):
def profile(self): def profile(self):
return self.userprofile.chat return self.userprofile.chat
def closeConversations(self): def closeConversations(self, switch=False):
if not hasattr(self, 'tabconvo'): if not hasattr(self, 'tabconvo'):
self.tabconvo = None self.tabconvo = None
if self.tabconvo: if self.tabconvo:
@ -1498,10 +1498,17 @@ class PesterWindow(MovingWindow):
for c in self.convos.values(): for c in self.convos.values():
c.close() c.close()
if self.tabmemo: if self.tabmemo:
if not switch:
self.tabmemo.close() self.tabmemo.close()
else:
for m in self.tabmemo.convos:
self.tabmemo.convos[m].sendtime()
else: else:
for m in self.memos.values(): for m in self.memos.values():
if not switch:
m.close() m.close()
else:
m.sendtime()
def paintEvent(self, event): def paintEvent(self, event):
palette = QtGui.QPalette() palette = QtGui.QPalette()
palette.setBrush(QtGui.QPalette.Window, QtGui.QBrush(self.backgroundImage)) palette.setBrush(QtGui.QPalette.Window, QtGui.QBrush(self.backgroundImage))
@ -2441,8 +2448,6 @@ class PesterWindow(MovingWindow):
# is default? # is default?
if self.chooseprofile.defaultcheck.isChecked(): if self.chooseprofile.defaultcheck.isChecked():
self.config.set("defaultprofile", self.userprofile.chat.handle) self.config.set("defaultprofile", self.userprofile.chat.handle)
# this may have to be fixed
self.closeConversations()
if hasattr(self, 'trollslum') and self.trollslum: if hasattr(self, 'trollslum') and self.trollslum:
self.trollslum.close() self.trollslum.close()
self.chooseprofile = None self.chooseprofile = None