summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/handlers.py1
-rw-r--r--src/tabs/muctab.py7
2 files changed, 6 insertions, 2 deletions
diff --git a/src/core/handlers.py b/src/core/handlers.py
index 56239274..119d9e74 100644
--- a/src/core/handlers.py
+++ b/src/core/handlers.py
@@ -972,6 +972,7 @@ def on_groupchat_subject(self, message):
time=None,
typ=2)
tab.topic = subject
+ tab.topic_from = nick_from
if self.get_tab_by_name(room_from, tabs.MucTab) is self.current_tab():
self.refresh_window()
diff --git a/src/tabs/muctab.py b/src/tabs/muctab.py
index 70f6fb70..4dc7a2cf 100644
--- a/src/tabs/muctab.py
+++ b/src/tabs/muctab.py
@@ -65,6 +65,7 @@ class MucTab(ChatTab):
self.users = []
self.privates = [] # private conversations
self.topic = ''
+ self.topic_from = ''
self.remote_wants_chatstates = True
# We send active, composing and paused states to the MUC because
# the chatstate may or may not be filtered by the MUC,
@@ -533,9 +534,11 @@ class MucTab(ChatTab):
"""
if not arg.strip():
self._text_buffer.add_message(
- _("\x19%s}The subject of the room is: %s") %
+ _("\x19%s}The subject of the room is: %s %s") %
(dump_tuple(get_theme().COLOR_INFORMATION_TEXT),
- self.topic))
+ self.topic,
+ '(set by %s)' % self.topic_from if self.topic_from
+ else ''))
self.refresh()
return
subject = arg