publicÄts ietvara galÄ«gÄ eksperimentÄlÄ izlaiÅ”ana GTK 3.99.0, kas ievieÅ” visas GTK 4 paredzÄtÄs iespÄjas. GTK 4 filiÄle tiek izstrÄdÄta kÄ daļa no jauna izstrÄdes procesa, kura mÄrÄ·is ir nodroÅ”inÄt lietojumprogrammu izstrÄdÄtÄjus ar stabilu un atbalstÄ«tu API uz vairÄkiem gadiem, ko var izmantot bez bailÄm, ka bÅ«s nepiecieÅ”ams pÄrrakstÄ«t pieteikumus ik pÄc seÅ”iem mÄneÅ”iem, jo āāpar API izmaiÅÄm nÄkamajÄ GTK filiÄlÄ. GTK 4 plÄnots izlaist lÄ«dz gada beigÄm.
Metode elementu izkÄrtoÅ”anai, pamatojoties uz ierobežojumiem (ierobežojuma izkÄrtojums), kurÄ pakÄrtoto elementu atraÅ”anÄs vieta un izmÄrs tiek noteikts, pamatojoties uz attÄlumu lÄ«dz apmalÄm un citu elementu lielumu.
RenderÄtÄjs, kura pamatÄ ir Vulkan grafikas API, kas ievieÅ” ÄnotÄjus daudziem resursietilpÄ«gajiem CSS elementiem, ko izmanto GTK logrÄ«kos.
IntegrÄcija GSK (GTK Scene Kit) ar iespÄju renderÄt grafiskas ainas, izmantojot OpenGL un Vulkan.
RenderÄÅ”anas organizÄcija ir pÄrskatÄ«ta - izvades vietÄ buferÄ« tagad tiek izmantots uz renderÄÅ”anas mezgliem balstÄ«ts modelis, kurÄ izvade tiek sakÄrtota augsta lÄ«meÅa operÄciju koka veidÄ, ko GPU efektÄ«vi apstrÄdÄ, izmantojot OpenGL. un VulkÄns.
ModernizÄts notikumu piegÄdes modelis, kas novÄrÅ” nepiecieÅ”amÄ«bu pÄc apakÅ”logiem, marÅ”rutÄjot ievades notikumus. NepiecieÅ”amÄ«ba ieviest jaunu modeli ir saistÄ«ta ar aktÄ«vÄku animÄcijas efektu izmantoÅ”anu, kuru renderÄÅ”ana jÄveic, nemainot redzamo elementu izkÄrtojumu un attiecÄ«gi bez apakÅ”loga.
GDK API ir pÄrveidots, lai izmantotu Wayland protokolu un ar to saistÄ«tÄs koncepcijas. X11 un Wayland bÄzes funkcijas ir pÄrvietotas uz atseviŔķas aizmugures.
Ir veikta liela API tÄ«rÄ«Å”ana, tostarp GtkMenu, GtkMenuBar un GtkToolbar klases noÅemÅ”ana par labu GMenu un opcijÄm, kuru pamatÄ ir uznirstoÅ”Äs izvÄlnes.
GtkTextView un citiem ievades logrÄ«kiem ir iebÅ«vÄta atsaukÅ”anas kaudze.
Pievienota jauna GtkNative klase logrÄ«kiem, kuriem ir sava displeja virsma un kuri var darboties atseviŔķi pirmajÄ lÄ«menÄ«, nesaistoties ar vecÄku logrÄ«kiem.
Ir pievienoti jauni logrīki, tostarp GtkPicture, GtkText, GtkPasswordEntry, GtkListView, GtkGridView, GtkColumnView un Emoji displeja logrīks.
LogrÄ«ku izstrÄdei tiek ieviests jauns GtkLayoutManager objekts ar sistÄmas ievieÅ”anu elementu izkÄrtojuma kontrolei atkarÄ«bÄ no redzamÄ laukuma lieluma. GtkLayoutManager aizstÄj pakÄrtotos rekvizÄ«tus GTK konteineros, piemÄram, GtkBox un GtkGrid.
Notikumu apstrÄde ir vienkÄrÅ”ota un tagad tiek izmantota tikai ievadei. AtlikuÅ”ie notikumi tiek aizstÄti ar atseviŔķiem signÄliem, piemÄram, izejas notikumu vietÄ tiek piedÄvÄts signÄls āGdkSurface::renderā, bet konfigurÄcijas notikumu vietÄ tiek piedÄvÄts āGdkSurface::size-changedā.
Pievienots jauns abstrakcijas slÄnis GdkPaintable, kas attÄlo objektus, kurus var uzzÄ«mÄt jebkurÄ vietÄ un jebkurÄ izmÄrÄ, bez nepiecieÅ”amÄ«bas kÄrtot izkÄrtojuma slÄÅus.
Brodvejas aizmugursistÄma ir pÄrrakstÄ«ta, lai ļautu GTK bibliotÄkas izvadi atveidot tÄ«mekļa pÄrlÅ«kprogrammas logÄ.
API, kas saistÄ«ta ar vilkÅ”anas un nomeÅ”anas darbÄ«bu veikÅ”anu, ir pÄrveidota, iekļaujot piedÄvÄtos atseviŔķus GdkDrag un GdkDrop objektus.
Uzlabojumi salÄ«dzinÄjumÄ ar iepriekÅ”Äjo testa versiju:
VecÄ pieejamÄ«bas API ievieÅ”ana personÄm ar invaliditÄti ir noÅemta, un tÄ ir aizstÄta ar jaunu versiju, kuras pamatÄ ir specifikÄcija ARIA un GtkAccessible logrÄ«ku.
Pievienots atbalsts rediÄ£ÄjamÄm etiÄ·etÄm (GtkEditableLabel).
Ir ierosinÄti jauni sarakstu modeļi grÄmatzÄ«mju (GtkBookmarkList), virkÅu (GtkStringList) un atlases bloku (GtkBitset) parÄdÄ«Å”anai.
LogrÄ«kam GtkTreeView ir iespÄja rediÄ£Ät Ŕūnas.
GtkGridView un GtkListView ir uzlabota ritinÄÅ”anas ievieÅ”ana, ir pievienots automÄtiskÄs ritinÄÅ”anas un automÄtiskÄs paplaÅ”inÄÅ”anas atbalsts.
GtkFilterListModel un GtkSortListModel ir pievienots pakÄpeniskas ritinÄÅ”anas un filtrÄÅ”anas atbalsts.
Inspektors ir pievienojis atbalstu sarakstu modeļu pÄrbaudei un iespÄju tieÅ”i pÄrvietoties starp objektiem.
GDK ritinÄÅ”anas vÄsture ir saglabÄta, GdkDevice API ir notÄ«rÄ«ta un ierÄ«Äu atdalÄ«Å”ana galvenajÄ un pakÄrtotajÄ ierÄ«cÄ ir apturÄta.
Pievienota jauna GDK aizmugursistÄma operÄtÄjsistÄmai MacOS.
Jauna GDK renderÄÅ”anas aizmugursistÄma, kuras pamatÄ ir LEŠĶIS, starpslÄÅi lai tulkotu OpenGL ES zvanus uz OpenGL, Direct3D 9/11, Desktop GL un Vulkan.