Today, we bring you a new report on the Maui Project’s progress.
Maui 2 was released a month ago, and since then new features, bug fixes, and improvements have been made to the Maui set of apps and frameworks; the following blog post will cover some of the changes and highlights from the last or so months of development.
What’s new?
Among many bug fixes that will be listed below for each individual app, some of the highlights include better support for client-side decorations aka CSD. Clip, the video player, is now working again on Android; MauiKit Controls now provide improved contextual menu actions and a lighter tab bar styling. Index, the file manager, can now also preview PDF documents, adding up to support for previews of text, video, audio and fonts file types; and translucency support is now embedded into MauiKit itself.
As you might have already notice, this report series has been moved to the official MauiKit webpage, now on all posts relating to the Maui Project will be published in here: https://mauikit.org/blog/
To have more detailed information and screenshots keep on reading!
MauiKit 2.0.1 & 2.0.2 Revisions
There have been two minor releases for the MauiKit frameworks that covered some important bug fixes, the releases are available at the project repositories as tagged branches and at downloads.kde.org as signed TAR packages.
MauiKit
Once again, the framework has been clean up, and many bugs have were solved, resulting in better performance and optimizations. A few new controls have also been added, this is what’s new:
Core
CSD has been improved in different areas: The windows now have drop shadows and the window-control-buttons can be styled, using image assets, a config file, and a QML source file.
To theme the window controls you need to have the image assets, and define their relative path in a config.conf file, and lastly use QML to decide how you want to present those window controls; MauiKit includes a few examples for Breeze, macOS and Nitrux styles:
https://invent.kde.org/maui/mauikit/-/tree/master/src/csd
To enable CSD you would need to create a configuration file, such as this one:
https://invent.kde.org/maui/mauikit/-/blob/master/src/csd/mauiproject.conf
located at:
~/.config/org.kde.maui/mauiproject.conf
In this configuration file you can set two values under the [GLOBAL] group:
CSD=bool CSDStyle=String
The Maui CSD styles are installed and found at the standard data directory, for example for the root prefix this would be
/usr/share/org.mauikit.controls/csd/
This is a custom style made for CutefishOS:
Translucency is now supported on MauiKit’s side by default, both on X11 and Wayland, using KWindowSystem API.
The TabBar and TabButton now have a floating style, more in line with the vision of MauiKit HIG.
The MenuItemActionRow is a new control, which places a row of icon-only buttons in a menu entry.
The Collage and Gallery delegates have been improved and all corners radius can now be tweaked and also its drop shadow.
AppViews has been reviewed and now it is self-contained, being based on a MauiKit Page, with this and using CSD we can have a full-height sidebar.
The Page control now catches the go-back signals from shortcuts, physical mouse keys and phone buttons or gestures. The Page also has a handy property showCSDControls that is only visible if CSD has been enabled.
FileBrowser
The Downloader interface now can download redirecting links, and it has been refactored to be more robust, this is the road to start making full use of the WebDav syncing lib, for syncing all sorts of files between devices via NextCloud.
The WebDav library is now also being built with MauiKit-FileBrowsing, what can be expected is for more apps to start using this to sync files, such as Pix and Vvave.
Added more viewing options to the FileDialog control.
Fix bug to correctly launch executables, such as binaries and AppImages.
TextEditor
Fixes to the duplicated contextual menus on Linux using the Plasma QQC2 styles.
Maui Style
Styling fixes to ProgressBara and Switches.
Maui Apps
For the upcoming 2.1.0 stable release, we expect to move Strike, the IDE, and Sol, web browser to a stable release, while Booth, the camera apps, will move to beta.
The Maui Apps were shipping with the wrong license file, now all those license files have been updated to the correct LGPLv3 license, same for the frameworks.
Index
- The menu entries were reviewed and now make use of the new MenuItemActionRow to save space.
- Updated command-line options, such as -v, –author, etc…
- Launch executable files correctly.
- Translucent sidebar
- Updated licensing files
- Previewing of PDF documents, thanks to Shelf poppler‘s plugin.
Vvave
- The menu entries were reviewed and now make use of the new MenuItemActionRow to save space.
- Updated command-line options, such as -v, –author, etc…
- Fixes to bug in the Focus view when toggling the track information.
- Translucent sidebar.
- Updated licensing files.
- Correctly use go-back signals to exit focus view.
- Testing Mini mode.
Nota
- The menu entries were reviewed and now make use of the new MenuItemActionRow to save space.
- Updated command-line options, such as -v, –author, etc…
- Translucent sidebar
- Updated licensing files
Buho
- Better color tags on the overview.
- Notes syncing and updating properly.
- Updated licensing files.
- Updated command-line options, such as -v, –author, etc…
Pix
- The menu entries were reviewed and now make use of the new MenuItemActionRow to save space.
- Updated command-line options, such as -v, –author, etc…
- Correctly use go-back signals to exit viewer and editor.
- Updated licensing files
Station
- Updated licensing files.
- Updated command-line options, such as -v, –author, etc…
Clip
- Added MPV and QtMutimedia back-ends as options at build time with -DMPV_AVAILABLE=OFF
- Updated licensing files.
- Updated command-line options, such as -v, –author, etc…
- Working again on Android.
- Update to latest MauiKit.
- Translucent sidebar.
- Fixes to the desktop file on Linux.
Shelf
- Updated licensing files.
- Updated command-line options, such as -v, –author, etc…
- Now installs the PDF render as a plugin and can be used in other apps such as Index for previewing PDF documents.
- Checks for locked documents and asks for passwords to unlock them.
Strike
- Initial git commands support.
- The menu entries were reviewed and now make use of the new MenuItemActionRow to save space.
- Updated command-line options, such as -v, –author, etc…
- Cleaning up for 1.0 version release.
Release date | 2021 | 2022 | 2023 |
---|---|---|---|
February | 1.2.1 | 2.1.1 | 2.2.2 |
May | 1.2.2 | 2.1.2 | 3.0.0 |
August | 2.0.0 | 2.2.0 | 3.1.0 |
November | 2.1.0 | 2.2.1 | 3.1.1 |
A quick reminder of the project near future goals:
- Fully utilize CMake. [Done]
- Developers can build apps and the framework with CMake for all targeted platforms.
- More feature-rich applications. [In Progress]
- Pix image editor and GPS location browsing.
- Vvave metadata editor and cloud streaming.
- Index – feature-rich file management.
- Improve data synchronization using NextCloud. [Pending]
- Only Buho and Vvave have initial support.
- For 2.1, We will add support for Pix as well.
- Improve performance. [In progress]
- We have split the MauiKit framework into different components.
- MauiKit::Core controls are faster and more coherent.
- Improve the UI cohesion on all supported platforms. [In Progress]
- Move beta apps to stable. [In Progress]
- Shelf and Clip have been moved to stable, missing the Sol, NX SC, Booth, Strike.
Am Peter says:
Would love some of this to be integrated with kde apps, shelf for example would be lovely.
Ike says:
Awesome work. I hope KDE fixes the “Korners” bug. Really doing a service to the KDE community by make a nice suite of CSD capable apps. Hope you someday make CSD more accessible as a setting to non technical folks through the settings, or maybe even a mauikit standalone settings app with some universal. Config file works for me though.