call_end

    • chevron_right

      Mathias Bonn: Mahjongg: Second Year in Review

      news.movim.eu / PlanetGnome • 9 hours ago • 2 minutes

    Another year of work on Mahjongg is over. This was a pretty good year, with smaller improvements from several contributors. Let’s take a look at what’s new in Mahjongg 49.x.

    Game Session Restoration

    Thanks to contributions by François Godin, Mahjongg now remembers the previous game in progress before quitting. On startup, you have the option to resume the game or restart it.

    New Pause Screen

    Pausing a game used to only blank out the tiles and dim them. Since games restored on startup are paused, the lack of information was confusing. A new pause screen has since been added, with prominent buttons to resume/restart or quit. Thanks to Jeff Fortin for raising this issue !

    A new Escape keyboard shortcut for pausing the game has also been added, and the game now pauses automatically when opening menus and dialogs.

    Pause screen in Mahjongg

    New Game Rules Dialog

    Help documentation for Mahjongg has existed for a long time, but it always seemed less than ideal to open and read through when you just want to get started. Keeping the documentation up-to-date and translated was also difficult. A new Game Rules dialog has replaced it, giving a quick overview of what the game is about.

    Game Rules dialog in Mahjongg

    Accessibility Improvements

    Tiles without a free long edge now shake when clicked, to indicate that they are not selectable. Tiles are also slightly dimmer in dark mode now, and follow the high contrast setting of the operating system.

    When attempting to change the layout while a game is in progress, a confirmation dialog about ending the current game is shown.

    Fixes and Modernizations

    Various improvements to the codebase have been made, and tests were added for the game algorithm and layout loading. Performance issues with larger numbers of entries in the Scores dialog were fixed, as well as an issue focusing the username entry at times when saving a score. Some small rendering issues related to fractional scaling were also addressed.

    Mahjongg used to load its tile assets using GdkPixbuf, but since that’s being phased out, it’s now using Rsvg directly instead. The upcoming GTK 4.22 release is introducing a new internal SVG renderer, GtkSvg, which we will hopefully start using in the near future.

    GNOME Circle Membership

    After a few rounds of reviews from Gregor Niehl and Tobias Bernard, Mahjongg was accepted into GNOME Circle . Mahjongg now has a page on apps.gnome.org , instructions for contributing and testing on welcome.gnome.org , as well as a new app icon by Tobias.

    GNOME Circle banner for Mahjongg

    Future Improvements

    The following items are next on the roadmap:

    • Port the Scores dialog to the one provided by libgnome-games-support
    • Use GtkSvg instead of Rsvg for rendering tile assets
    • Look into adding support for keyboard navigation (and possibly gamepad support)

    Download Mahjongg

    The latest version of Mahjongg is available on Flathub .

    Get it on Flathub

    That’s all for now!