
Gli sviluppatori della distribuzione GNU/Linux Linux Mint hanno annunciato la disponibilità della libreria libAdapta, un’alternativa nata come fork (derivazione) di libAdwaita. La prima versione di libAdapta è stata siglata come 1.5 perché basata su libAdwaita 1.5 e integra il supporto per i temi e alcune funzionalità aggiuntive. Tuttavia, libAdapta mantiene tutte le caratteristiche di libAdwaita, garantendo un aspetto identico alle applicazioni compatibili con quest’ultima.
Motivo della creazione di libAdapta
La necessità di sviluppare una propria versione della libreria deriva dalle difficoltà incontrate nell’integrazione delle funzionalità avanzate direttamente nel codice principale di libAdwaita. Per mantenere la compatibilità con gli aggiornamenti futuri, il team di Linux Mint ha adottato un approccio denominato soft fork, che consente di sincronizzare periodicamente la base di codice con le nuove versioni di libAdwaita.
Grazie a questa strategia, gli sviluppatori di Linux Mint possono implementare le proprie idee senza vincoli, aggiungendo rapidamente nuove funzionalità, senza dover attendere l’approvazione da parte degli sviluppatori di libAdwaita.
Limitazioni di libAdwaita
LibAdwaita è promossa come una libreria esclusivamente dedicata all’ambiente GNOME. Per questa ragione, gli sviluppatori del progetto hanno respinto le proposte di modifica relative all’integrazione di strumenti per la gestione dei temi e al supporto di caratteristiche non previste nelle linee guida di GNOME. Inoltre, è stata negata l’aggiunta di un’estensione simile a libGranite, una libreria complementare per GTK e GLib che estende GTK con widget e utilità comuni progettate per l’utilizzo in applicazioni create per elementary OS.
LibAdwaita offre un insieme di elementi grafici per la creazione di interfacce utente conformi alle linee guida GNOME HIG (linee guida per l’interfaccia umana di GNOME). La libreria include numerosi widget predefiniti, come elenchi, pannelli, blocchi di modifica, pulsanti, schede, moduli di ricerca e finestre di dialogo, progettati per uniformarsi allo stile visivo di GNOME.
LibAdwaita viene impiegata insieme a GTK4 e integra i componenti del tema Adwaita, estratti direttamente da GTK. Questo approccio consente agli sviluppatori GTK di concentrarsi sulle funzionalità essenziali, mentre gli sviluppatori GNOME possono applicare modifiche stilistiche in modo più rapido, senza influenzare la progettazione di GTK.
Una delle problematiche principali è il rifiuto, da parte di libAdwaita, di integrare il supporto per i temi, limitandosi a offrire un design uniforme basato sulle direttive GNOME HIG. Ciò comporta che le applicazioni costruite su libAdwaita abbiano sempre un aspetto tipico di GNOME, perdendo la capacità di adattarsi graficamente ad altri ambienti desktop.
Vantaggi di libAdapta
A differenza di libAdwaita, libAdapta consente alle applicazioni di adattarsi al tema grafico scelto dall’utente nell’ambiente desktop in uso. La libreria analizza la cartella dei temi GTK correnti e seleziona automaticamente un set di file di stile differenti, se è presente una sottocartella denominata libadapta-*. Qualora questa sottocartella non fosse disponibile, viene utilizzato il tema predefinito di libAdwaita.
Per garantire una compatibilità completa con libAdwaita, viene fornito un file di intestazione separato, che permette di passare facilmente da libAdwaita a libAdapta e viceversa senza necessità di modificare il codice sorgente delle applicazioni.
Puoi trovare esempi di applicazioni libAdapta su https://github.com/xapp-project/libadapta-examples. Questo repository software include anche temi e utilità.
Fonte: https://github.com/xapp-project/libadapta/releases/tag/1.5.0
Fonte: https://github.com/xapp-project/libadapta
Fonte: https://gnome.pages.gitlab.gnome.org/libadwaita/
Fonte: https://gnome.pages.gitlab.gnome.org/libadwaita/doc/1.5/
Source: Read More