purple-teams
purple-teams copied to clipboard
Joining a thread room spawns lots of chat windows
Steps to reproduce:
- Buddy List Window -> Tools -> Room List
- Get room list for Teams account
- Join a room that ends with
@thread.?????
Expected behaviour:
The chat log is shown in one conversation window.
Actual behaviour:
After the first (empty) conversation window opens, new conversation windows open for each message on the thread.
Did you figure this out? I have this problem too. Pidgin on a Mac spans a new chat message for every thread message. The room chat window is blank.

Because of those threaded messages, and how each message can have its own reply, the server is sending them as if they were individual group chats
I'll need to add in an account setting to not do that..... But maybe allow it on a case-by-case basis as a group chat setting?
That's a tough decision because I see what you're saying about the reply behavior for each message. It makes sense that they would be individual chats, since teams allows you to reply to each message individually, which isn't typical chatroom behavior.
I'm a member of lots of teams I just passively watch, so I get multiple new chat windows opening every minute or so.
Yeah, tricky!
Maybe option #3 is to have the initial message come through as just a single chat, but the threaded messages within show up as a separate conversation window? That's probably a lot harder to code up!
(my main goal here is to handle these better than the threaded conversations in purple-googlechat, in that plugin when people use threaded conversations a lot, they're impacted by new messages they send always spawning a new thread in other peoples Google chat clients instead of using an existing one)
I don't know enough about libpurple UI constraints to support this, but I believe they figured something out with slack-libpurple. https://github.com/dylex/slack-libpurple/pull/118
Could the idea of slack-libpurple handling of channels be carried over to handle "teams" channels?
Just my 2cents, I like the way it currently is. Makes it really easy to participate in chats. An option to disable this per chatroom would maybe make sense. We have alert and jira channels that get lots of automatic bot posts but nobody really starts a thread there.
Only starting a new chat window for a second message may also not be ideal as I'm often the first one to replay.
And I actually use the slack plugin and I really dislike the thread system there where you have to select a thread
with /th <timestamp=HH:mm:ss> <message>
.
Added an account setting to turn all threaded conversations into a single group chat window in https://github.com/EionRobb/purple-teams/commit/30227343b13ac6d8795a2d983bdd6220b6e625f5 as a "phase 1".
Will need to add a per-chat override as a phase 2. Might borrow from the "hide on join" plugin https://github.com/kgraefe/pidgin-hide-chat-on-join/ for inspiration about how they do it there.
Could it be possible to display thread replies as messages in the main group/room/team but prepend them with @username:
with the username of the user that started the thread in front of it.
So sort of like emulating how specific conversations/replies are conducted on crowded irc channels.
Or perhaps prepend both the username and quote the first few words of the thread would make more sense, in case someone is replying to a very old thread.