The Dev Log: January 2023
Updates in Plasma Mobile from November - January
The Plasma Mobile team is happy to announce all the new developments carried out in the project from November to January!
Housekeeping
As announced in the last blog post, we had decided to migrate the releases of Plasma Mobile applications to KDE Gear, starting with KDE Gear 23.04 (in April).
Because of this, we will now decouple the blog post format from any sort of software release schedule, and try to get one out at least on a bi-monthly basis!
The blog post you are currently reading still coincides though with the release of Plasma Mobile Gear 23.01, which is the last Mobile Gear release.
Plasma 5.27
Plasma 5.27, the last in the Plasma 5 series, will be released on February 14th, 2023. Work will then shift to Plasma 6 from then on, with the Plasma 5.27 branch only receiving bug fixes.
Lockscreen
A major cause of crashes with the lockscreen when multiple lockscreen requests were received in a short amount of time, was fixed (Devin Lin, Plasma 5.26.5, Link).
Fixed wallpaper displaying in kscreenlocker. This allowed us to remove a slow workaround. (Devin Lin, Plasma 5.27, Link 1, Link 2)
Navigation Gesture
An issue was fixed where only part of the bottom edge of the screen was usable for the gesture with landscape on phones and tablets. (Devin Lin, Plasma 5.27, Link)
Other
Some issues with the mobile shell during rotation were investigated, which allowed for some issues with infinite loops to be fixed. (Devin Lin, Plasma 5.27, Link)
The issue where translations not being picked up and created for large parts of the mobile shell was also fixed. (Devin Lin, Plasma 5.27, Link)
Clock
The sidebar was changed to be tab bar-based. This saves a lot of horizontal space in the application. (Devin Lin, Mobile Gear 23.01, Link)
A possible scenario where an alarm ring would be triggered when a timer is paused was fixed (bug found in Plasma shell). (Devin Lin, Plasma 5.27, Link)
The timer add minute button was fixed. (Devin Lin, Mobile Gear 23.01, Link)
PlasmaTube (Youtube client)
The backend was ported to be libmpv-based, which greatly improves video playback and allows for seeking. (Devin Lin, Mobile Gear 23.01, Link)
The application was redesigned, giving it the ability to have videos playing while navigating other pages. (Devin Lin, Mobile Gear 23.01, Link and many more commits...)
QMLKonsole
Support was added for CLI arguments when launching the application, to start from certain folders. or run commands immediately. (Devin Lin, Mobile Gear 23.01, Link)
An issue where Ctrl-D would quit the entire application, rather than just a single tab was fixed. (Devin Lin, Mobile Gear 23.01, Link)
Raven Mail
Devin is in the process of rewriting the mail sync backend to not depend on Akonadi. Work is steadily progressing, but will likely be months away from initial completion.
Alligator (RSS Reader)
The interface was reworked to make better use of space for widescreen configurations. (Devin Lin, Mobile Gear 23.01, Link)
Spacebar (SMS/MMS)
Spacebar has seen several UI enhancements:
- Devin Ported the settings page to use mobile form components.
- Added a button to quickly scroll down to most recent message. The button also shows the number of new messages that have arrived since scrolling up.
- Michael improved how the members of a conversation are displayed. Spacebar now show how many more people are in conversation if all members cannot be displayed in the chats list and also on the page header of the current conversation.
- Added page to display all the members in current conversation and add new members.
- Fix contacts list scrolling not working.
Spacebar also received various performance improvements:
- Opening Spacebar is now faster as a result of the chats list query now being 5-10x faster or more in some cases.
- Smoother scrolling through messsages.
- The chats list is no longer fully reloaded every time a change happens (i.e., a message arriving).
The backend daemon also got some work done:
- Now using the modem country code for consistent formatting of phone numbers. This also prevents guessing the regional code incorrectly.
- Now verifying that received message timestamps are valid to prevent chronologically misordered messages.
- Due to some some recent changes by cetain carriers, the user agent is now faked for sending/recieving MMS.
- Now getting interface name and DNS servers directly from modem.
- Moved send message logic and MMS network logic into daemon. This prevents incomplete sending of a message if the client app gets closed or switched to a different conversation during the message sending process.
- Handle missing url id in notification messages. This should fix a MMS downloading issue that was caused by some carriers not including this.
Kasts (Podcast)
Kasts has seen a lot of development since the last release.
The header bar player controls have been redesigned, partly based on the design of Elisa. The header bar is resizeable and can be fully collapsed to just a minimal toolbar. (Bart De Vries, Mobile Gear 23.01, Link)
The left sidebar menu in desktop mode has been redesigned. It's now using similar buttons to the ones used in the bottom navigation bar in mobile mode. (Devin Lin, Mobile Gear 23.01, Link)
The audio backend has been re-written from scratch. It can now handle multiple backends: libVLC, gstreamer and Qt Multimedia. Kasts will use libVLC as default backend when available, which should solve common issues: volume control is now available through the main toolbar and seeking should no longer make the audio hang. (Bart De Vries, Mobile Gear 23.01, Link)
The settings menu was ported to the new form components. (Devin Lin, Mobile Gear 23.01, Link)
Support for chapter images was added. (Tobias Fella, Mobile Gear 23.01, Link)
Timestamps mentioned in episode descriptions are now clickable, which will make the audio jump to that point in the episode. (Bart De Vries, Mobile Gear 23.01, Link)
Images in headers are now clickable. This will open a fullscreen view of the image in question. (Bart De Vries, Mobile Gear 23.01, Link)
The subscribe button is now disabled when a podcast has just been added (Bart De Vries, Mobile Gear 23.01, Link)
Several issues with right-to-left language layouts were solved. (Bart De Vries, Mobile Gear 23.01, Link)
Kalk (Calculator)
Kalk has seen lots of bug squashing and UI improvements in these three months.
Expression, calculation history and result preview font size is now reactive to window size. (Michael Lang, Mobile Gear 23.01, Link)
The number pad hover color is now showing consistently even if the cursor is on the button text. (Michael Lang, Mobile Gear 23.01, Link)
The number pad hover is disabled on mobile to prevent a button from being incorrectly highlighted on touch screens. (Michael Lang, Mobile Gear 23.01, Link)
The tail of longer calculation result is now clipped instead of the head. (Michael Lang, Mobile Gear 23.01, Link)
We fixed the bug that causes the backspace button to delete functions character by character. It now properly deletes the whole function with one click. (Michael Lang, Mobile Gear 23.01, Link)
Input and result text no longer overlap in landscape mode. (Michael Lang, Mobile Gear 23.01, Link)
The function drawer no longer opens by default on startup, and there is no weird function drawer auto close animation on startup. (Michael Lang, Mobile Gear 23.01, Link)
Switching between the history page and the calculation page no longer causes infinite new pages being added to page stack. (Zekiah A, Mobile Gear 23.01, Link)
The function drawer indicator is now hidden in landscape mode (Dnt Dnt, Mobile Gear 23.01, Link)
The result is automatically cleaned if the input is empty (Šimon Rataj, Mobile Gear 23.01, Link)
The float point precision is kept between input string to mpfr conversion (Han Young, Mobile Gear 23.01, Link Link)
The application data including icon and bug report address has been updated (Devin Lin, Mobile Gear 23.01, Link)
The haptic feedback on the number pad has been reduced (Devin Lin, Mobile Gear 23.01, Link)
Koko (Image viewer)
Carl updated Koko to use the new settings component. He also added a confirmation dialog before discarding image edits and fixed the full screen and slideshow mode not working.
Tokodon (Mastodon client)
Since the last Plasma Mobile update in November, Tokodon received multiple big releases and now supports custom emojis, searching, hashtags handling, a conversation view, polls and account editing. For the full release announcements, please check out 22.12 and 23.01. Another big release should happen in a few days, so stay tunned!
Arianna (Ebook reader)
Carl and Niccolò Venerandi started working on an ePub reader created using Kirigami that should also target the PineNote.
There is no releases yet, but Arianna is already in a usable state. Aside from the ePub viewer, it already supports searching inside books, and has a basic library management with reading progress tracking.
NeoChat (Matrix client)
NeoChat will now show notifications for all accounts, and not just the active one. There is also a new "compact" mode for the room list, and the room permission settings can now be configured directly from NeoChat.
It is also now possible to search in the room history, but only on non end-to-end-encrypted chats for now.
Emojis and Reactions have been significantly improved.
And finally NeoChat's developers fixed several crashes around user invitations and various other small bugs.
KWeather
KWeather has seen many bug fixes. Locations in the location page can now be dragged, and its UI/UX has been improved. The settings page has also seen a number of bug fixes. The plasmoid now works with the latest version of KWeatherCore. (Devin Lin, Han Young)
AudioTube (Youtube Music client)
Mathis implemented a blurred sidebar that turns into a bottom bar on mobile devices. He also redesigned the search popup.
AudioTube now only shows one page at a time instead of multiple stacked pages, making it visually less cluttered and fixing the issue where sometimes only half of the page was displayed
On mobile, the bottom drawer now shows the information about the selected song.
Théophile Giligien made it possible to remove items from the recently played section and from your search history.
Jonah took the first steps to make AudioTube Qt6 compatible. He also fixed a bug that made it impossible to play songs
Kirigami Addons
Carl and Mathis worked on a new search popup field component for KirigamiAddons. API doc
Joshua added an "About KDE" section to the AboutPage.
Contributing
Want to help with the development of Plasma Mobile? We are desperately looking for new contributors, beginners are always welcome!
Take Plasma Mobile for a spin! Check out the device support for each distribution and find the version which will work on your phone.
Even if you do not have a compatible phone or tablet, you can also help us out with application development, which can be easily done from a desktop!
View our documentation, and consider joining our Matrix channel, and let us know what you would like to work on!
Our issue tracker documentation also gives information on how and where to report issues.