Movim 0.16 – Cesco
Timothée Jaussoin · pubsub.movim.eu / Movim · Monday, 18 November, 2019 - 05:27 edit · 3 minutes
A bit less than 4 months after the previous 0.15 release we are pleased to announce the release of the 0.16 version of Movim.
This release comes like always with both new exciting features and performance improvements. But for this one we focused more on making the general usage more accessible and bringing some useful features in.
Drawing and content sharing
Thanks to the awesome collaboration with my girlfriend this release comes with a totally new feature that will allow you to draw quickly something over a picture you just took or a blank canvas. Those drawings can then be published within chat discussions or as publications.
The Snap feature was slightly redesigned to integrate with the Draw feature, you can also now switch between different cameras if multiple are detected (useful on mobile phones).
The camera switching feature was also integrated in the video-conferencing system allowing you to switch from your front and back views within a video-conference.
The attachments menu in the chat panel was redesigned to integrate this new Drawing feature while keeping the UI clean and accessible.
Movim now integrates a quick #emoji insertion feature 😱😍 in the chat discussions. When writing a message you can directly type the emojis code using its related :shortcut:. On desktop some work was also done to do all this process using only the keyboard.
Chats and chatrooms list improvements
The chats and chatrooms list now displays more information about the currently opened discussions:
- The chatstates (to know if the contact or one of the rooms occupants is currently typing a message) are displayed in real-time
- Movim is showing if the last chat message was sent by you
- The chatrooms are now displayed with a specific icon if they can be publicly discovered and if the occupants can see each-other public profiles (some issues were also fixed regarding the handling of those information backend wise). This allows the users to know more clearly what are the risks of discussing within a room and for the admins to change the rooms configurations regarding their privacy needs.
Big refactoring of how the XMPP clients and servers capabilities are handled
This is one of the biggest internal changes that was made for this release. On the XMPP network, the clients and servers are telling each-others what they are capable of. This allows, for example, for a client to know if a server supports file upload to display the feature automatically in the UI.
Movim was handling very weirdly the content of those capability information for several years. The related code was heavily refactored fixing some features detection issues and adding some new features for the users.
Movim now displays all the connected clients of all your connected contacts. This allows you to call a device specifically if your contact can be reached on several clients that supports the video-calling feature.
The search panel was improved and now allows you to search in Communities. It is also faster to load (especially on mobile) and displays more reliable results especially for tags results.
Slight design changes
The general design and animations were slightly changed to allow more content to be displayed (some padding were removed in the chat to display more information within the discussion bubbles) or to make the UI a bit more snappy.
Last but not least! New features don't mean performance hit. Two big performance improvements were introduced in this release.
A small database change that was overseen until now allows Movim to load chat messages way faster if you have hundreds of thousands (or even millions) of records stored.
The upgrade of one of our dependencies, reactphp/http, improved the overall speed of around 10 to 20% (especially during the connection and during page switching). This allows Movim to stay around or bellow 300ms for most of the pageloads.
What's next ?
For the next release some work is planned to support the PHP 7.4 version and to boost code regarding the new performance features that are coming with this exciting release (especially with the Preloading feature).
We will see if those changes will come into a minor 0.16.1 release or a major 0.17 release.
In the meantime we hope you'll enjoy all those new features and keep spreading Movim around. You can also support us by giving a bit of money monthly on our Patreon. This allows us to cover our expenses (servers, domains) and to create some goodies (I heard that some new stickers are planned).
That's all folks!