DEV Community

Gary Kramlich
Gary Kramlich

Posted on

Talkatu's Future

Previously I introduced you all to Talkatu. In that post I also talked about the uncertainty of Talkatu's future, well we've reached certainty now.

In the previous post I mentioned how emoji and how contacts are represented were causing issues. Well it's been quite a few months since then and I've yet to come up with a decent solution to any of those problems.

On top of that, the way we designed TalkatuHistory was modeled after what we had in libpurple at the time, which was to "write" each message to the conversation and therefore the history widget.

This doesn't work with what we were planning to do in Pidgin 3 by having a GListModel as a property of the conversation which is how we were planning on integrating the History API into everything.

While we could easily move TalkatuHistory to using a GListModel it just doesn't make sense to do so with all of the other issues.

That means that yes we've finally decided to stop developing Talkatu itself. We're going to keep the project around as it has been great at helping us prototyping ideas and we may want to use it for that again in the future.

This means that we will be integrating the Talkatu widgets into Pidgin 3. We're starting with TalkatuHistory but this won't be a direct copy or anything as TalkatuHistory is a GtkListBox and PidginHistory will be a GtkListView.

I still really like the idea of the TalkatuMessage interface that allowed the input field for conversations to be a TalkatuMessage as well as it could then be passed on to whatever was sending the actual message.

We might still go that route with PurpleMessage, but it'd require a bit of renaming and stuff, but it would also allow us to create more complicated messages later. Something that could potentially handle widgets and actions which seems to be all the rage in proprietary chat clients nowadays.

At any rate, Talkatu was a great middle ground that helped us find a path forward. I have no regrets about developing it as we will be using basically all of its features directly. Also it's still a really great name and we'll need to find a way to honor it in Pidgin 3.

I hope you're enjoying these posts! Remember they go live for patrons at 9AM CST on Mondays and go public at 12AM CST on Thursdays! If there's something specific you'd like to see me cover here, please comment below!

Top comments (0)