Etter seks måneders utvikling, lanseringen av den nye versjonen av verktøysettet på tvers av plattformer for å lage et grafisk brukergrensesnitt, "GTK 4.10.0".
Den nye grenen av GTK 4 utvikles under en ny prosess av utvikling som du prøver å gi til applikasjonsutviklere et stabilt og kompatibelt API i flere år, som kan brukes uten frykt for at applikasjoner må omarbeides hver sjette måned på grunn av API-endringer i neste GTK.
Viktigste nye funksjoner i GTK 4.10
I denne nye versjonen som presenteres av GTK 4.10, er det fremhevet at sLagt til nye klasser GtkColorDialog, GtkFontDialog, GtkFileDialog og GtkAlertDialog med implementering av dialoger for å velge farger, fonter og filer, som viser varsler. de nye alternativene kjennetegnes ved overgang til et mer konsistent API og balansert som fungerer i asynkron modus (GIO async). De nye dialogene bruker Freedesktop-portaler (xdg-desktop-portal) der det er mulig og tilgjengelig, som brukes til å gi tilgang til brukermiljøressurser fra sandkasseapplikasjoner.
En annen nyhet som skiller seg ut fra den nye versjonen er at en ny CPDB-backend er lagt til (Common Printing Dialog Backend), som gir generiske drivere for bruk i utskriftsdialoger. Støtte for den tidligere brukte lpr-utskriftsbackend er avviklet.
i widgeten GtkFileChooserWidget cMed implementeringen av den åpne dialogen for å velge filer i applikasjoner, modusen for å presentere innholdet i katalogene i form av et nettverk av ikoner er implementert. Som standard brukes den klassiske fillistevisningen fortsatt, og en egen knapp har dukket opp på høyre side av panelet for å bytte til ikonmodus.
Bibliotek GDK, som gir et lag mellom GTK og grafikkundersystemet, foreslår GdkTextureDownloader-strukturen, som brukes til å laste teksturer inn i GdkTexture-klassen og kan brukes til å konvertere ulike formater, teksturskalering ved bruk av OpenGL har blitt forbedret.
Bortsett fra det, GSK-biblioteket (GTK Scene Kit), som gir muligheten til å gjengi grafiske scener via OpenGL og Vulkan, støtter noder med skinn og tilpasset filtrering av skalerbare teksturer.
Det er også fremhevet at støtte for nye versjoner av Wayland-protokollutvidelsene er implementert, fordi utgangen ble forbedret i oppstartsvarslene ved bruk av «xdg-activation»-protokollen og at problemer med størrelsen på markøren på skjermer med høy pikseltetthet ble løst.
Av de andre endringene som skiller seg ut fra den nye versjonen:
- Klassen GtkMountOperation er tilpasset for å fungere i ikke-X11-miljøer.
- Lagt til støtte for modale vinduer til Broadway-backend, slik at du kan tegne utdataene fra GTK-biblioteket i et nettleservindu
- GtkFileLauncher-klassen foreslår en ny asynkron API for å erstatte gtk_show_uri
- Forbedret malhåndtering i gtk-builder-tool.
- GtkSearchEntry-widgeten har lagt til støtte for å vise dummy-tekst når feltet er tomt og det ikke er noe oppføringsfokus.
- GtkUriLauncher-klassen ble lagt til for å erstatte gtk_show_uri-funksjonen, som brukes til å bestemme hvilken applikasjon som skal startes for å vise en gitt URI eller for å sende en feil hvis ingen kontroller er til stede.
- I klassen GtkStringSorter er det lagt til støtte for flere «kollasjon»-metoder som tillater sammenstilling og sortering basert på betydningen av tegnene (for eksempel hvis det er et aksenttegn).
- En stor del av API-ene og widgetene er avviklet, som ble besluttet ikke å støttes i den fremtidige GTK5-grenen og erstattet med analoger som fungerer i asynkron modus.
- Portert til den offentlige GtkAccessible-grensesnittet, som lar deg plugge inn tredjeparts grensesnittkontrollere for funksjonshemmede. Lagt til GtkAccessibleRange-grensesnitt.
- På macOS tilbys dra-og-slipp-støtte (DND).
- På Windows er integrering med systeminnstillinger forbedret.
- Unified debug output format.
- Minnegrensen for JPEG-bildeopplastingen er hevet til 1 GB.
Til slutt, hvis du er interessert i å vite mer om det, kan du se detaljene I den følgende lenken.
For de som er interessert, er det en gaffel av GTK3, kalt CTK, som tar sikte på å beholde alle de funksjonene som et klassisk skrivebord trenger og som bokstavelig talt ble lastet med GTK4.
Den brukes i CAFE desktop (gaffel MATE).
https://github.com/cafe-desktop