Po 10 mesecih od najnovejše preizkusne različice, predstavljena je bila izdaja nove različice GTK 3.96, nova eksperimentalna različica prihodnje stabilne različice GTK 4.
Medtem ko je GTK 4 v razvoju kot del novega razvojnega procesa, ki poskuša zagotoviti stabilni API za več let, ki ga je mogoče uporabljati brez vsakih šest mesecev, boste morali aplikacijo spremeniti zaradi sprememb API v naslednji veji GTK.
Glavne novosti v GTK 3.96
S prihodom te nove izdaje v uradni objavi, lahko izpostavimo več novosti med katerimi eden izmed njih je, da je bil Broadwayov GDK backkend popolnoma prepisan za prikaz izhodov knjižnice GTK v oknu spletnega brskalnika.
V prejšnji izvedbi na Broadwayu ni ustrezal načinom upodabljanja GTK 4 predlagano (namesto pošiljanja v medpomnilnik se zdaj uporablja model, ki temelji na vozlišču upodabljanja, pri katerem je izhod organiziran v obliki drevesa operacij na visoki ravni, ki ga GPU učinkovito obdela z OpenGL in Vulkan).
Nova različica Broadwayja vozlišča za risanje pretvori v vozlišča DOM s slogi CSS za prikaz vmesnika v brskalniku. Vsako novo stanje zaslona se obdeluje kot sprememba drevesa DOM glede na prejšnje stanje, kar zmanjša velikost podatkov, posredovanih oddaljenemu odjemalcu.
The 3D-transformacije in grafični učinki se izvajajo prek lastnosti preoblikovanja CSS.
GDK je nadaljeval z izvajanjem API-jev, ki so bili razviti z namenom, da bi uporabili protokol Wayland in izvedli čiščenje API-ja, vezano na X11, ali jih premaknili v ločeno zaledje X11.
Nadaljevalo se je preoblikovanje kode, povezane z izvajanjem operacij povleci in spusti, vključno s predlaganimi ločenimi predmeti GdkDrag in GdkDrop.
Možnosti 3D preoblikovanja so postavljene na raven, ki vam omogoča ustvarjanje takšnih animacijskih učinkov, kot je vrtljiva kocka.
V GSK API (GTK Scene Kit), ki ponuja grafične risbe prizorov prek OpenGL in Vulkan, delal je na napakah ki so postali lažji zahvaljujoč novemu orodju za odpravljanje napak gtk4-node-editor, ki omogoča nalaganje in prikaz vozlišča upodabljanja v serializirani obliki (lahko ga shranite v načinu inšpektorja GTK) in tudi primerjavo rezultata risanja pri uporabi različnih zalednih datotek.
Druge spremembe
Pripomočki GtkAssistant, GtkStack in GtkNotebook so bili dodani v javno dostopne predmete za paginirani izhod otrok, ki so mu posredovane podrejene lastnosti podatkov gradnika, ki niso postavljeni
Ker se vse obstoječe podrejene lastnosti pretvorijo v običajne lastnosti, lastnosti postavitve ali premaknejo na predmete strani, je bila podpora za podrejene lastnosti v celoti odstranjena iz GtkContainer.
Od ostalih sprememb, ki izstopajo v tej različici:
- Osnovna funkcionalnost GtkEntry je bila preseljena v novi pripomoček GtkText, ki vključuje tudi napredni vmesnik za urejanje GtkEditable. Vsi obstoječi podrazredi za vnos podatkov se pretvorijo v izvedbe GtkEditable na podlagi novega gradnika GtkText.
- Dodan nov pripomoček GtkPasswordEntry za obrazce za vnos gesla.
- Dodani so bili novi modeli oblikovanja seznamov: GtkMapListModel, GtkSliceListModel, GtkSortListModel, GtkSelectionModel in GtkSingleSelection. V prihodnosti nameravamo v GtkListView dodati podporo za modele s seznami.
- V GtkBuilder je namesto dodajanja vezi z identifikatorjem dodana možnost nastavljanja lastnosti predmeta (v vrstici).
- V orodje gtk4-builder je dodan ukaz za pretvorbo datotek uporabniškega vmesnika iz GTK 3 v GTK 4.
- Podpora za ključne teme (ključna tema), zavihke (tabelarni meni) in kombinirana polja je bila ukinjena. Pripomoček GtkInvisible je odstranjen.
Nazadnje, dokler GTK 4 ni popolnoma stabiliziran, je priporočljivo, da predlagane uporabniške aplikacije še naprej gradijo z uporabo GTK 3.24.
vir: https://blog.gtk.org