Ir-rilaxx ta' GTK 3.99.0 immarka t-tlestija tal-funzjonalità ppjanata għal GTK 4

ippubblikat rilaxx sperimentali finali tal-qafas GTK 3.99.0, li timplimenta l-karatteristiċi kollha ppjanati għal GTK 4. Il-fergħa GTK 4 qed tiġi żviluppata bħala parti minn proċess ta 'żvilupp ġdid li jipprova jipprovdi lill-iżviluppaturi tal-applikazzjonijiet b'API stabbli u appoġġjata għal diversi snin li jistgħu jintużaw mingħajr il-biża' li jkollhom għalfejn ikteb mill-ġdid l-applikazzjonijiet kull sitt xhur minħabba li għal bidliet API fil-fergħa GTK li jmiss. GTK 4 huwa ppjanat li jiġi rilaxxat qabel tmiem is-sena.

Mill-aktar sinifikanti bidliet в GTK 4 tista 'tinnota:

  • Metodu għat-tqegħid ta' elementi bbażat fuq restrizzjonijiet (tqassim tar-restrizzjoni), li fiha l-post u d-daqs tal-elementi tfal huwa ddeterminat abbażi tad-distanza għall-fruntieri u d-daqs ta 'elementi oħra.
  • Renderer ibbażat fuq l-API tal-grafika Vulkan li timplimenta shaders għal ħafna mill-elementi CSS li jużaw ħafna riżorsi użati fil-widgets GTK.
  • Integrazzjoni GSK (GTK Scene Kit) bil-kapaċità li tirrendi xeni grafiċi permezz ta' OpenGL u Vulkan.
  • L-organizzazzjoni tar-rendi ġiet riveduta - minflok l-output għal buffer, issa jintuża mudell ibbażat fuq render nodes, li fih l-output huwa rranġat fil-forma ta 'siġra ta' operazzjonijiet ta 'livell għoli, ipproċessat b'mod effiċjenti mill-GPU bl-użu ta' OpenGL u Vulkan.
  • Faċilitajiet għall-immaniġġjar flessibbli tal-bidliet tal-fokus tal-input.
  • Mudell modernizzat ta' twassil tal-avvenimenti li jelimina l-ħtieġa ta' subwindows meta jindirizza l-avvenimenti tal-input. Il-ħtieġa li jiġi implimentat mudell ġdid hija assoċjata ma 'użu aktar attiv ta' effetti ta 'animazzjoni, li l-għoti tagħhom għandu jsir mingħajr ma jinbidel it-tqassim ta' elementi viżibbli u, għaldaqstant, mingħajr subwindow.
  • L-API GDK ġiet iddisinjata mill-ġdid b'attenzjoni għall-użu tal-protokoll Wayland u kunċetti relatati. Il-karatteristiċi bbażati fuq X11 u Wayland ġew imċaqalqa għal backends separati.
  • Twettqet tindif maġġuri tal-API, inkluż it-tneħħija tal-klassijiet GtkMenu, GtkMenuBar u GtkToolbar, favur GMenu u għażliet ibbażati fuq menus popover.
  • GtkTextView u widgets oħra ta' input għandhom munzell ta' undo inkorporat.
  • Żiedet klassi GtkNative ġdida għal widgets li għandhom il-wiċċ tal-wiri tagħhom stess u jistgħu jaħdmu separatament fl-ewwel livell, mingħajr ma jkunu marbuta mal-widgets parent.
  • Ġew miżjuda widgets ġodda, inklużi GtkPicture, GtkText, GtkPasswordEntry, GtkListView, GtkGridView, GtkColumnView, u widget tal-wiri Emoji.
  • Għall-iżvilupp ta 'widgets, oġġett ġdid GtkLayoutManager huwa introdott bl-implimentazzjoni ta' sistema għall-kontroll tat-tqassim ta 'elementi skond id-daqs taż-żona viżibbli. GtkLayoutManager jissostitwixxi proprjetajiet tat-tfal f'kontenituri GTK bħal GtkBox u GtkGrid.
  • L-immaniġġjar tal-avvenimenti ġie ssimplifikat u issa jintuża biss għall-input. L-avvenimenti li jifdal huma sostitwiti b'sinjali separati, pereżempju, minflok avvenimenti ta 'output, is-sinjal "GdkSurface::render" huwa propost, u minflok avvenimenti ta' konfigurazzjoni, "GdkSurface::size-changed" huwa offrut.
  • Żieda saff ta 'estrazzjoni ġdid GdkPaintable, li jirrappreżenta oġġetti li jistgħu jinġibdu kullimkien fi kwalunkwe daqs, mingħajr il-ħtieġa li jiġu ssortjati saffi ta' tqassim.
  • Il-backend ta' Broadway inkiteb mill-ġdid biex jippermetti li l-output tal-librerija GTK jiġi rrappreżentat f'tieqa tal-web browser.
  • L-API assoċjata mat-twettiq ta' operazzjonijiet Drag-and-Drop ġiet iddisinjata mill-ġdid, inklużi l-oġġetti GdkDrag u GdkDrop separati proposti.

Titjib meta mqabbel mar-rilaxx tat-test preċedenti:

  • L-implimentazzjoni l-antika tal-API tal-Aċċessibilità għal persuni b'diżabilità tneħħiet, sostitwita b'verżjoni ġdida bbażata fuq l-ispeċifikazzjoni ARIA u l-widget GtkAccessible.
  • Appoġġ miżjud għal tikketti editjabbli (GtkEditableLabel).
  • Ġew proposti mudelli ta' lista ġodda għall-wiri ta' bookmarks (GtkBookmarkList), strings (GtkStringList) u blokki tal-għażla (GtkBitset).
  • Il-widget GtkTreeView għandu l-abbiltà li jeditja ċ-ċelloli.
  • L-implimentazzjoni tal-iskrolljar tjiebet f'GtkGridView u GtkListView, ġie miżjud appoġġ għall-iskrolljar awtomatiku u l-espansjoni awtomatika.
  • GtkWidget iħaffef b'mod sinifikanti l-ipproċessar ta 'diversi azzjonijiet.
  • Żid l-appoġġ għal scrolling inkrementali u filtrazzjoni għal GtkFilterListModel u GtkSortListModel.
  • L-Ispettur żied l-appoġġ għall-ispezzjoni tal-mudelli tal-lista u l-abbiltà li jinnaviga direttament bejn l-oġġetti.
  • Fil-GDK, l-istorja tal-iskrolljar ġiet salvata, l-API GdkDevice ġiet imnaddfa, u s-separazzjoni tal-apparati f'kaptan u skjav twaqqaf.
  • Żid backend GDK ġdid għal macOS.
  • Backend ġdid ta' rendering GDK ibbażat fuq ANGOLU, saffi ta' bejn is-saffi biex tittraduċi sejħiet OpenGL ES għal OpenGL, Direct3D 9/11, Desktop GL u Vulkan.

Sors: opennet.ru

Żid kumment