Development News May 2020

Gajim development news

Development News May 2020

Gajim development news

This month brought new features and many improvements for Gajim plugins (checkout the new file preview)! On the other side, we had to decide which plugins to keep and which ones have to go before the 1.2 release. During this month, Anonymous Login has been re-implemented and account badges have been added. If you’re using multiple accounts with Gajim, you should now be able to quickly recognize which account you’re chatting with.

Changes in Gajim

After Gajim’s network connection code has been rewritten, many features had to be adapted in order to work correctly with the new code. One of the last missing features has now been re-implemented: Anonymous Login. The new Account Creation Assistant allows you to login anonymously, if the server offers support for this feature.

Last month we introduced account colors for people using multiple accounts in Gajim. To improve recognizability, we swapped the colored icon with a colored badge showing the account’s name. This badge is shown in the Start Chat window, in the Group Chat Invite page, and in the chat window’s banner if you have more than one account enabled.

One of the bigger changes for upcoming Gajim versions will be an overhaul of the way conversations are displayed. To start the transition, we changed the chat window’s default tab position to ’left’, and increased the size of avatars.

What else happened

  • ‘Reconnect’ menu entry for group chats in the contact list has been removed
  • mnemonics for accessing menu items in Gajim’s main menu have been added
  • fixed contact list tooltip showing wrong status infos
  • Preferences: reintroduced ‘Merge Accounts’ setting
  • XML console now shows stanzas from Account Assistant
  • various code improvements and bugfixes

Plugin updates

In preparation of the upcoming Gajim 1.2 release, we had to decide which plugins to keep and which ones have to go. Some plugins didn’t work anymore (because software changed) and Gajim integrated features which rendered some plugins obsolete. While adapting the plugins to the changes in Gajim, we took the opportunity to add some features or improvements here and there. One of these new features is the file preview of Gajim’s URL Image Preview plugin. It now features a preview icon for every file type plus file size, name, and buttons for ‘Download’, ‘Save As’, and ‘Open Folder’.

Gajim’s new file preview

Gajim’s new file preview

Most plugins now use the new plugin configuration window and should be fully translatable. But there is much more:

  • Rewritten plugins: Anti Spam, Now Listen, Syntax Highlight
  • OMEMO, OpenPGP, PGP, Form Handler, Set Location, Birthday Reminder, Latex, and Tic Tac Toe have been adapted to changes in Gajim
  • Triggers plugin has received code improvements and a GUI update
  • Set Location plugin received some GUI improvements
  • Length Notifier can now be enabled for specific JIDs or Domains
  • Client Icons plugin will show icons in the contact list tooltip only (not directly in the contact list)
  • OMEMO now uses migration routines to update (very) old key databases
  • URL Image Preview and OMEMO plugins have been added to Windows builds
  • plugin translations have been updated
  • Flatpak plugins have been updated

The following plugins have been removed from Gajim (full list): Banner Tweaks, Flashing Keyboard, GUI for /me, Juick, Roster Tweaks, Server Status Icons, and Wrong Layout.

Changes in python-nbxmpp

This month, python-nbxmpp received some bugfixes. Sometimes it happens that servers send malformed data. This can potentially result in an error report window popping up in Gajim. To avoid this, python-nbxmpp has to deal with malformed data before Gajim processes it (#10097).

As always, feel free to join to discuss with us.