Udviklerne af Linux Mint-distributionen har offentliggjort den første udgave af bibliotektet libAdapta, som er lavet som en fork af libAdwaita. Den første udgave af libAdapta 1.5 er baseret på libAdwaita 1.5 og skelnes ved at understøtte temaer og nogle ekstra funktioner. Ellers understøtter libAdapta al funktionalitet fra libAdwaita og giver som standard et identisk udseende af applikationer.
Oprettelsen af deres egen fork skyldes vanskelighederne ved at overføre de udvidede muligheder, der udvikles af projektet, til den primære del af libAdwaita. En blid fork, hvis kodebase periodisk opdateres til nye versioner af libAdwaita for fortsat at opretholde kompatibilitet, betragtes som den optimale løsning for Linux Mint. Ved at understøtte den egen gren er udviklerne af Linux Mint ikke begrænset i gennemførelsen af deres ideer og kan hurtigt tilføje ændringer uafhængigt af godkendelse fra udviklerne af libAdwaita.
Projektet LibAdwaita præsenteres som kun understøttende GNOME-platformen, hvilket får udviklerne af dette bibliotek til at afvise anmodninger om ændringer relateret til integrationen af temaadministrationsværktøjer og understøttelse af funktioner, der er fraværende i GNOME. Udviklerne af libAdwaita har også afvist idéen om at tilføje en udvidelse, der ligner libGranite.
Problemet er, at udviklerne af libAdwaita principielt nægter at integrere understøttelse af temaer og tilbyder kun en grundlæggende GNOME-stil. På grund af manglen på temastøtte ser applikationer baseret på libAdwaita altid ud som GNOME-applikationer og ikke som GTK-applikationer, hvilket dårlig passer med udseendet af andre skrivebordsmiljøer.
Applikationer bygget med libAdapta tager ved opstart i skrivebordsmiljøer, der understøtter valg af tema, fat i temaindstillingerne og bruger de tilsvarende interfaceelementer. Biblioteket libAdapta tjekker mappen for det nuværende GTK-tema, og hvis der findes en undermappe libadapta-*, bruger den et andet sæt stilfiler. Hvis undermappen ikke findes, falder den tilbage til sætningen af stilarter i libAdwaita. For at sikre kompatibilitet med libAdwaita leveres der en særskilt headerfil, der gør det nemt at skifte mellem libAdwaita og libAdapta uden at ændre i koden.
Vi minder om, at libAdwaita tilbyder et sæt komponenter til stilisering af brugergrænsefladen, der lever op til anbefalingerne fra GNOME HIG (Human Interface Guidelines). Biblioteket inkluderer færdige widgets (lister, paneler, redigeringsbokse, knapper, faner, søgeformularer, dialogbokse osv.), der følger den generelle GNOME-stil. Biblioteket bruges i kombination med GTK4 og inkluderer komponenterne fra GNOME-temaet Adwaita, som er blevet adskilt fra GTK, hvilket giver GTK-udviklere mulighed for at fokusere på de grundlæggende elementer, mens GNOME-udviklere hurtigere kan implementere de nødvendige ændringer i stiliseringen uden at påvirke selve GTK.
Kilde: opennet.ru
