Utvecklarna av Linux Mint-distributionen har publicerat den första utgåvan av libAdapta-biblioteket, skapat som en förgrening av libAdwaita. Den första utgåvan av libAdapta 1.5 är baserad på libAdwaita 1.5 och har temaskund och några ytterligare funktioner. Annars stöder libAdapta alla funktioner i libAdwaita och ger som standard ett identiskt utseende och känsla som applikationer.
Skapandet av vår egen fork förklaras av svårigheterna med att överföra de avancerade funktioner som utvecklats av projektet till huvudkompositionen i libAdwaita. En mjuk fork, vars kodbas regelbundet migreras till nya versioner av libAdwaita för att fortsätta upprätthålla kompatibilitet, anses vara den optimala lösningen för Linux Mint. Genom att underhålla sin egen fork är Linux Mint-utvecklare inte begränsade i att implementera sina idéer och kan snabbt lägga till ändringar, oavsett om de godkänns av libAdwaita-utvecklarna.
LibAdwaita-projektet marknadsförs som att det endast stöder GNOME-plattformen, vilket är anledningen till att utvecklarna av detta bibliotek avvisar ändringsförfrågningar relaterade till integrationen av temahanteringsverktyg och stöd för funktioner som inte finns i GNOME. libAdwaita-utvecklarna avvisade också idén att lägga till ett tillägg liknande libGranite.
Problemet är att libAdwaita-utvecklare i grunden vägrar att integrera stöd för teman och erbjuder endast en grundläggande GNOME-stildesign. På grund av bristen på teman ser libAdwaita-baserade applikationer alltid ut som GNOME-applikationer snarare än GTK-applikationer, och smälter inte bra in i utseendet och känslan hos andra skrivbordsmiljöer.
Program byggda med libAdapta hämtar temainställningar och använder lämpliga UI-element när de körs i skrivbordsmiljöer som stöder temaval. libAdapta-biblioteket kontrollerar katalogen för det aktuella GTK-temat och använder en annan uppsättning stilfiler om en underkatalog av typen libadapta-* finns. Om underkatalogen saknas används stiluppsättningen libAdwaita igen. För kompatibilitet med libAdwaita tillhandahålls en separat headerfil, vilket gör att du enkelt kan växla mellan libAdwaita och libAdapta utan att ändra din kod.
Låt oss påminna dig om att libAdwaita tillhandahåller en uppsättning komponenter för att utforma användargränssnittet i enlighet med GNOME HIG-rekommendationerna (Human Interface Guidelines). Biblioteket innehåller färdiga widgetar (listor, paneler, redigeringsblock, knappar, flikar, sökformulär, dialogrutor etc.) som motsvarar den allmänna GNOME-stilen. Biblioteket används tillsammans med GTK4 och innehåller komponenter från Adwaita-temat som används i GNOME, vilka extraherades från GTK, vilket gör det möjligt för GTK-utvecklare att fokusera på grunderna och GNOME-utvecklare att snabbare genomföra de stiländringar de behöver utan att påverka GTK självt.
Källa: opennet.ru
