Společnost Purism, která vyvíjí smartphone Librem 5 a svobodnou distribuci PureOS, vydání knihovny , v rámci které se rozvíjí sada widgetů a objektů pro vytváření uživatelských rozhraní pro mobilní zařízení pomocí GTK a technologií GNOME. Knihovna se vyvíjí v procesu portování aplikací GNOME pro uživatelské prostředí smartphonu Librem 5.
Kód projektu pod licencí GPL 2.1+. Kromě podpory aplikací napsaných v jazyce C lze knihovnu použít také k vytváření mobilních variant uživatelského rozhraní aplikací v Pythonu, Rustu a Vale.
V současné době obsahuje knihovna 24 widgetů, pokrývajících různé typové prvky uživatelského rozhraní, jako jsou seznamy, panely, editační bloky, tlačítka, záložky, formuláře vyhledávání, dialogová okna atd. Navrhované widgety umožňují vytvářet univerzální rozhraní, která přirozeně fungují jak na velkých obrazovkách počítačů a notebooků, tak na malých dotykových obrazovkách smartphonů. Uživatelské rozhraní aplikací se dynamicky mění v závislosti na velikosti obrazovky a dostupných zařízeních pro vstup.
Klíčovým cílem projektu je poskytnout možnost pracovat se stejnými aplikacemi GNOME na smartphonech a PC. Softwarová platforma pro smartphone Librem 5 je založena na distribuci PureOS, která používá balíčkovou základnu Debian, desktop GNOME a přizpůsobené rozhraní GNOME Shell pro smartphony. Použití libhandy umožňuje, když je smartphone připojen k monitoru, získat standardní pracovní plochu GNOME založenou na jednotném souboru aplikací. Mezi aplikacemi přeloženými na libhandy se nacházejí: GNOME Calls (telefonní aplikace), gnome-bluetooth, GNOME Settings, GNOME Web, Phosh (telefonní aplikace), Daty, PasswordSafe, Unifydmin, Fractal, Podcasts, GNOME Contacts a GNOME Games.
Libhandy 0.0.10 je poslední předběžnou verzí před vytvořením významného vydání 1.0. V novém vydání bylo představeno několik nových widgetů:
- — adaptivní náhrada widgetu GtkStackSwitcher, která umožňuje automatické vytváření rozložení záložek (zobrazení) v závislosti na šířce obrazovky. Na velkých obrazovkách jsou ikony a názvy umístěny v jedné řadě, zatímco na malých je použita kompaktní kompozice, v níž je název umístěn pod ikonou. Pro mobilní zařízení se blok tlačítek přesouvá do dolní části.

- — kontejner pro zobrazení panelu s ohledem na dostupnou velikost, který se v případě potřeby zbavuje detailů (pro široké obrazovky je umístěn plný záhlaví panelu pro přepínání záložek, a pokud není dost místa, zobrazí se widget, který imituje záhlaví, a přepínač záložek se přesune do dolní části obrazovky);
- — implementace rozšířeného panelu, obdobného GtkHeaderBar, ale určeného pro použití v adaptivním rozhraní, vždy centrujícího a zcela vyplňujícího oblast záhlaví podle výšky;
- — adaptivní varianta okna pro nastavení parametrů s rozdělením nastavení na záložky a skupiny;
Mezi zlepšení, která se týkají adaptace aplikací GNOME pro použití na smartphonech, patří:
- V rozhraní pro příjem a uskutečňování hovorů (Calls) je využit modul PulseAudio loopback pro propojení modemu a zvukového kodeku zařízení v ALSA při aktivaci hovoru a uvolnění modulu po skončení hovoru;
- V programu pro výměnu textových zpráv (Messaging) byl implementován rozhraní pro zobrazení historie komunikace v chatu. Pro uchovávání historie byla použita databáze SQLite. Přidána možnost verifikace účtu, který je nyní ověřován prostřednictvím spojení se serverem, a v případě selhání se objeví varování;
- V XMPP klientu byla realizována podpora výměny šifrovaných zpráv pomocí pluginu s implementací mechanismu koncového šifrování . Do panelu byl přidán speciální indikátor, který signalizuje, zda se šifrování v aktuálním chatu používá nebo ne. Také byla přidána možnost zobrazení identifikačních otisků, vlastního nebo jiného účastníka chatu;
- V GNOME Web byly použity nové widgety Libhandy 0.0.10, což umožnilo přizpůsobit rozhraní konfigurace a panelu prohlížeče pro mobilní obrazovky.
Zdroj: opennet.ru

