summaryrefslogtreecommitdiff
path: root/src/core.py
diff options
context:
space:
mode:
authorFlorent Le Coz <louiz@louiz.org>2011-01-26 23:43:07 +0100
committerFlorent Le Coz <louiz@louiz.org>2011-01-26 23:43:07 +0100
commit399434c1ae045b90ced7f48f3983150aa13fbf25 (patch)
tree6201281526170e045b74cac2d9bc6a8f83b6304a /src/core.py
parentb89a10bd053168a897ac2a794de0b77f7297f9dc (diff)
downloadpoezio-399434c1ae045b90ced7f48f3983150aa13fbf25.tar.gz
poezio-399434c1ae045b90ced7f48f3983150aa13fbf25.tar.bz2
poezio-399434c1ae045b90ced7f48f3983150aa13fbf25.tar.xz
poezio-399434c1ae045b90ced7f48f3983150aa13fbf25.zip
get_tab_by_name is safer now, by passing the type of the tab we want.
This avoid confusion between various tabs having an identical name (which should not happen anyway…)
Diffstat (limited to 'src/core.py')
-rw-r--r--src/core.py14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/core.py b/src/core.py
index 3ae36682..e2f3633e 100644
--- a/src/core.py
+++ b/src/core.py
@@ -260,8 +260,8 @@ class Core(object):
Search for a ConversationTab with the given jid (full or bare), if yes, add
the given message to it
"""
- tab = self.get_tab_by_name(jid)
- if tab and isinstance(tab, tabs.ConversationTab):
+ tab = self.get_tab_by_name(jid, tabs.ConversationTab)
+ if tab:
self.add_message_to_text_buffer(tab.get_room(), msg)
def on_failed_connection(self):
@@ -314,10 +314,8 @@ class Core(object):
nick = jid.resource
else:
default = os.environ.get('USER') if os.environ.get('USER') else 'poezio'
- nick = config.get('default_nick', '')
- if nick == '':
- nick = default
- tab = self.get_tab_by_name(jid.bare)
+ nick = config.get('default_nick', '') or default
+ tab = self.get_tab_by_name(jid.bare, tabs.MucTab)
if not tab:
self.open_new_room(jid.bare, nick, False)
muc.join_groupchat(self.xmpp, jid.bare, nick)
@@ -580,10 +578,10 @@ class Core(object):
if not body:
return
# We first check if we have a conversation opened with this precise resource
- conversation = self.get_tab_by_name(jid.full)
+ conversation = self.get_tab_by_name(jid.full, tabs.ConversationTab)
if not conversation:
# If not, we search for a conversation with the bare jid
- conversation = self.get_tab_by_name(jid.bare)
+ conversation = self.get_tab_by_name(jid.bare, tabs.ConversationTab)
if not conversation:
# We create the conversation with the bare Jid if nothing was found
conversation = self.open_conversation_window(jid.bare, False)