Last Week Development in Elisa

I have focused on keyboard navigation and correct handling of focus. Some preliminary work is already integrated with more to come. I hope to soon be able to use Elisa only with the keyboard and am starting to enjoy the progress so far. This is quite different from the last two years where only mouse and touch screen were usable to interact with Elisa.

If you think this is an important or useful feature in Elisa, please consider donating to the Randa Meeting fundraising campaign (https://www.kde.org/fundraisers/randameetings2017/). Without it, probably nothing would have happen in Elisa in the keyboard usage area.

The next step will be to give a look to Orca screen reader. I really feel inspired by the work that has been done during last Randa meeting.

Another important thing (at least for me) would be a pleasant usage with the touch screen you usually found on laptops.

Tomaz Canabrava did analyze a runtime error due to using a Qml property not existing in the required version but existing in the version used at runtime (or not). Due to that, Elisa now requires Qt5.9. Thanks a lot.

Burkhard Lück started to fix a few issues with the Elisa documentation.

Last week development in Elisa

This week has been focused on finishing the development of persistent notifications at the top of the music views. They are intended to provide information about what happen with actions the user can take to improve things.

The following items have been pushed:

  • Clean up of dependencies. Now all frameworks come with a description. Some have been downgraded to optional or recommended. Some have been upgraded to recommended ;
  • A new version of persistent notifications.

The new persistent notifications

The player can be in four states:

  • No notifications are active
    Screenshot_20170920_224107
    No notifications

     

  • One notification is activeScreenshot_20170920_224429One notification

     

  • More than one notifications are active. Only one is shown such that vertical space is preserved

    Screenshot_20170920_224700.png
    Multiple notifications with the first visible
  • The notifications area is expanded and several notifications are visible
    Screenshot_20170920_224830.png
    Show multiple notifications

     

If the user choose to act, the buttons are temporarily disabled to provide instant feedback and the notification disappear when the root cause is fixed (like in the example, if music tracks are discovered or Baloo configuration is modified or Baloo music indexer is disabled in Elisa.).

I have tried to provide smooth transitions between each of those states. Some may still be missing. Please do not hesitate to provide feedback on this feature.

I plan to add more notifications of this kind when the software wants to provide feedback to the user and asks him to choose what he prefers.

Next week, I should continue to improve integration with Baloo. I would also like to improve (in fact allow) the keyboard interaction.

Last week development in Elisa

I have decided to try to publish a short or not too short blog post each week some development happen in Elisa Git repository. I am inspired amongst others by the current posts about development of Kube.

I have updated the wiki page bout Elisa to include howto build instructions Elisa. Please have a look and improve them if you can.

The following items have been pushed:

  • A fix for memory leak when modifying the paths to be indexed by the Elisa files indexer ;
  • Do not display the disc number in play list when the track is from an album with a single disc.

I am still working on the notifications and a small progress has been made for the integration of visualizations when playing music.

Elisa, Accessibility and other News

I should be communicating more often about development related to the Elisa music player. Recently Safa Alfulaij added support for right-to-left interface. This is a very good excuse to talk about what happened since my previous post.

Accessibility Improvements

As I said, thanks to Safa Alfulaij Elisa has mostly good support for RTL interface. From my testing as a French native speaker I did notice a problem with icons of ToolButton components that have no way to indicate that they should be mirrored. Apart from that, it should be usable.

Screenshot_20170906_220229
Reversed Album View

This contribution is really important to have Elisa be more accessible to more people. This topic is also the main subject of the next KDE sprint in Randa (Randa Meeting). Please have a look to the contribute page to help fund KDE developer sprints (Make KDE more accessible).

Music Import

After having gotten quite a few feedback about the lack of user interactions during music import, I have started to work to improve this area.

I added two things:

  • A passive area showing the count of imported music track files (before duplicates are ignored) ;
  • An offer to modify configuration when Baloo indexing is disabled or the music is not found in the default music path. This also adds a KCM dedicated to configure the paths where your music collection is located.
Screenshot_20170906_225104
Improvements in user notifications

Platform Support Improvements

I have been improving support for flatpak as a way to allow a faster way to test it and to get feedback for new developments. I also think that this in no way going to replace packaging by Linux distributions. At least for me, there is a lot of comfort to be able to “apt-get install” almost everything I need.

I also have been working on improved Windows support. This is mainly driven by my need to have a good music player usable at my work place. By the way, people working on KDE for Windows are both really helpful and they do a very good job.

Future work

I need to finish my work to have robust support for notifications allowing the user to have a better and more natural interaction with the player especially during music import.

I also need to integrate in the main branch a very nice work by Martin T. H. Sandsmark that adds support for visualizations during play of music. I just needed to learn how to write KCM (especially with an qml UI). I also want to allow the feature to be easily discoverable without bothering people not using it.