Etter åtte måneders utvikling utgivelsen av den nye versjonen av GTK 4.8.0 ble annonsert, som fortsetter utviklingen av GTK 4.x-grenen under en ny utviklingsprosess som forsøker å gi applikasjonsutviklere et stabilt og flerårig kompatibelt API, som kan brukes uten frykt for at applikasjoner må omarbeides hvert halvår pga. API-endringer.
For de nye til GTK, bør du vite det dette er et grafikkkomponentbibliotek på tvers av plattformer å utvikle grafiske brukergrensesnitt (GUI) Det er lisensiert under vilkårene i GNU LGPL, så det tillater å lage både gratis programvare og proprietær programvare.
Viktigste nye funksjoner i GTK 4.8
I denne nye versjonen som presenteres, biblioteket GDK, som gir et lag mellom GTK og grafikkundersystemet, har optimalisert konverteringen av pikselformater. På systemer med NVIDIA-drivere er EGL-utvidelsen EGL_KHR_swap_buffers_with_damage aktivert.
Bibliotek GSK, som gir muligheten til å gjengi grafiske scener via OpenGL og Vulkan, støtter behandling av store synlige områder (visningsporter), i tillegg til biblioteker for å tegne glyffer ved hjelp av teksturer.
for Linux i Wayland, støtte for "xdg-activation"-protokollen er implementert, som gjør at fokus kan overføres mellom forskjellige førstenivåoverflater (for eksempel ved å bruke xdg-aktivering kan en applikasjon bytte fokus til en annen).
I GTK 4.8 GtkTextView-widgeten har redusert antall situasjoner som fører til gjentatte omtegninger og implementerte GetCharacterExtents-funksjonen for å bestemme området med en glyph som definerer et tegn i teksten (en funksjon etterspurt av verktøy for funksjonshemmede).
Klasse gtkviewport, som brukes til å ordne rulling i widgets, har "rull til fokus"-modus aktivert som standard, der innholdet ruller automatisk for å beholde visningen av elementet som har inndatafokus.
GtkSearchEntry-widgeten, som viser området for å legge inn et søk, tilbyr muligheten til å konfigurere forsinkelsen mellom siste tastetrykk og sending av et innholdsendringssignal (GtkSearchEntry::search-changed).
I tillegg til det, også i GTK 4.8 fremhever de utvidede funksjonene til feilsøkeren, deretter se implementert applikasjonsdatavisualisering og tillot visning av PangoAttrList-egenskaper under inspeksjon.
Det er også fremhevet at CSS-motoren har optimalisert omgrupperingen av tilknyttede elementer med samme overordnede og tillot bruk av ikke-heltallsverdier ved å bestemme størrelsen på mellomrommet mellom bokstaver.
Til macOS, lagt til støtte for fullskjermmodus og videoavspilling ved bruk av OpenGL, i tillegg til forbedret skjermdeteksjon, jobbet med oppsett av flere skjermer, vindusplassering og størrelsesvalg for fildialogen, også apper fikk kjøre i bakgrunnen.
På Windows, forbedret vindusplassering på HiDPI-skjermer, lagt til et fargegjenkjenningsgrensesnitt, implementert støtte for høyoppløselige musehjulhendelser og forbedret støtte for pekeplate.
Av andre endringer som skiller seg ut:
- Oppdatert emoji-data til CLDR 40 (Unicode 14) sett.
- Lagt til støtte for nye lokaliteter.
- Skjermbildekommandoen ble lagt til gtk4-builder-tool-verktøyet for å lage et skjermbilde, som brukes når du genererer skjermbilder for dokumentasjon.
- Skriftvelgergrensesnittet (GtkFontChooser) har forbedret støtte for OpenType-formateringsfunksjoner.
- GtkCheckButton-widgeten har nå muligheten til å tilordne sin egen underordnede widget med en knapp.
- Egenskapen "content-fit" er lagt til GtkPicture-widgeten for å tilpasse innholdet til en gitt områdestørrelse.
- Rulleytelsen er optimalisert i GtkColumnView-widgeten.
- Verktøyet gtk4-node-editor er installert.
- Lydstøtte er lagt til ffmpeg-backend.
- Minnegrensen på JPEG-bildeopplastingen er økt til 300 MB.
- Endret stilen til fargevelgergrensesnittet (GtkColorChooser).
Til slutt, hvis du er interessert i å kunne vite mer om det, kan du se detaljene i følgende lenke.
forresten, det er et nytt prosjekt kalt CTK som er en gaffel av gtk3 som fungerer med cafe-desktop, en fork of mate-desktop som bruker ctk, som ikke er ferdig ennå, men noen komponenter fungerer allerede. Hensikten er å holde det klassiske skrivebordet i live, noe som er uforenlig med gtk4.
https://github.com/cafe-desktop/ctk
https://github.com/cafe-desktop
Greetings!