Libhandy a library to create mobile versions of GTK and Gnome applications

Clocks

Clocks

Purism, in developing the Librem 5 smartphone and the free PureOS distribution, announced the release of libhandy library 0.0.10, which is developing a set of widgets and objects to create a user interface for mobile devices using GTK and Gnome technologies.

The library is being developed as part of the process of porting Gnome applications to the Librem 5 phone's user environment. The project code is distributed under the GPL 2.1+ license. In addition to supporting C applications, the library can be used to create mobile versions of interface applications written in Python, Rust, and Vala.

Currently, the library includes 24 widgets that cover various typical interface elements, such as lists, panels, editing blocks, buttons, tabs, search forms, dialog boxes, etc.

The proposed widgets allow for the creation of universal interfaces that work seamlessly on both large PC and laptop screens and small smartphone touchscreens. The application interface dynamically adapts to the screen size and available input devices.

The key objective of the project is to provide opportunities to work with the same Gnome applications on smartphones and computers.

The software for Librem 5 is based on the PureOS distribution, using as a base Debian, the Gnome desktop environment and its Shell, adapted for smartphones.

Using libhandy allows you to connect a smartphone to the monitor to get a typical Gnome desktop based on a single set of applications.

Applications translated to libhandy include: all Gnome apps such as gnome-bluetooth, Gnome settings, web browser, Phosh (Dialer), Daty, PasswordSafe, Unifydmin, Fractal, Podcasts, Gnome Contacts and Gnome games.

What does Libhandy 0.0.10 offer?

Libhandy 0.0.10 is the latest preview version before the formation of a significant version 1.0.

The new version introduces several new widgets:

  • HDyViewSwitcher is an adaptive replacement for the GtkStackSwitcher widget that allows to automatically create a tab layout (views) depending on the width of the screen.

    On large screens, icons and headings are placed in one line, while small screens use a compact layout, in which the heading is displayed below the icon. For mobile devices, the button block moves to the bottom.

  • HdySqueezer: a container to display the panel, taking into account the available size, if necessary to get rid of details (for panoramic screens, the entire title bar is shaken to switch tabs, and if there is not enough space, a widget is displayed which simulates the title and the tab switch moves to the bottom of the screen).
  • HdyHeaderBar: implementation of an extended panel, similar to GtkHeaderBar, but designed for use in an adaptive interface, always centered and completely filling the header area in height.
  • HdyPreferencesWindow: an adaptive version of the window to configure parameters with the division of configurations into tabs and groups.

Of the improvements related to adapting Gnome applications for use on a smartphone, it is noted:

The PulseAudio loopback module is used in the interface to receive and make calls to connect the device's modem and audio codec to ALSA when the call is activated, and the module is unloaded once the call is completed.

The messenger has an interface to view the chat history. To store the history involved SQLite DBMS.

Added the ability to verify the account, which is now verified through the connection to the server, and in case of failure, a warning is displayed.

The XMPP client supports encrypted messaging by using the Lurch plug-in with the implementation of the OMEMO terminal encryption mechanism.

A special indicator has been added to the panel that indicates whether encryption is used in the current chat or not. Also added is the ability to view the identification snapshots of one or another chat member.

Source: https://puri.sm/


Add as preferred source in Google