Megjelent a GTK 3.96, a GTK 4 kísérleti kiadása

10 hónappal a tesztverzió kiadását követően névkonfliktus rendezése a GVFS projekt átnevezéséhez vezetett a GTK 3.96 bemutatva , megérkezett a jövő stabil GTK 4 kiadásának új kísérleti verziója. A GTK 4 ága egy új fejlesztési folyamat keretein belül fejlődik, amely arra törekszik, hogy a fejlesztők számára egy néhány évig stabilan és támogatottan használható API-t biztosítson, anélkül, hogy fél évenként újra kellene írniuk az alkalmazásokat az API módosulása miatt. A GTK 4 teljes stabilizálása előtt ajánlott, hogy a felhasználók számára kínált alkalmazásokat továbbra is aGTK 3.24 aligázóan gyűjtsék össze a GTK 3.96-ban:.

Fő változások GSK

  • API (GTK Scene Kit), amely grafikai jelenetek OpenGL és Vulkan közötti megjelenítését biztosítja, a hibakeresés egyszerűsítése érdekében új hibakereső eszközön, a gtk4-node-editoron dolgoztak, amely lehetővé teszi a renderelési csomópont betöltését és megjelenítését sorosított formátumban (megtartható a GTK inspector-tanulmányozás módjában), és a különböző backendek alkalmazásakor a renderelés eredményének összehasonlítását is; A 3D-transzformációs lehetőségeket a forgó kocka animálásának lehetőségéig finomították;

    Megjelent a GTK 3.96, a GTK 4 kísérleti kiadása
  • A GDK Broadway backend, amely a GTK könyvtár kimenetét egy böngészőablakban jeleníti meg. A régi Broadway-implementáció nem felelt meg a GTK 4-ben javasolt renderelési módszereknek (a bufferbe való kimenet helyett renderelési csomópontok [render nodes] alapú modellt alkalmaznak, amely a kimenetet egy magas szintű műveletekből álló fában kompozitálja, amelyet az GPU hatékonyan kezel OpenGL és Vulkan segítségével).

    Megjelent a GTK 3.96, a GTK 4 kísérleti kiadása
  • Teljesen újraírásra került Az új Broadway-változat a renderelési csomópontokat DOM-csomópontokká alakítja CSS-stílusokkal a böngészői felület megjelenítéséhez. Minden új képernyőállapotot a DOM-faszerkezet korábbi állapotához viszonyított változásként kezelnek, ami csökkenti a távoli kliensnek átadott adatok méretét. A 3D-transzformációk és grafikai effektusok a CSS transform tulajdonságán keresztül valósulnak meg;
    A GDK továbbra is melléket implementáló API-t vezet be, amelyet a Wayland protokoll használatának szem előtt tartásával fejlesztettek, és tisztítják az X11-re rákövetkezett API-t, vagy áthelyezik őket egy külön X11 backendbe. A munkafolyamat előrehaladása jelzi a gyermekfelületek és globális koordináták használatának csökkentését. A GDK-ból eltávolították a GDK_SURFACE_SUBSURFACE támogatását.
  • A GDK tovább folytatódik a Wayland protokollra épülő API-k bevezetésével és az X11-re alapozott API-k tisztításával, vagy azok áthelyezésével egy külön X11 háttérbe. A munkafolyamat előrehaladása megfigyelhető a gyermekfelületek és a globális koordináták alkalmazásának megszüntetésében. A GDK-ból eltávolították a GDK_SURFACE_SUBSURFACE támogatását;
  • Folytatódik a Drag-and-Drop műveleteket kezelő kód refaktorálása, beleértve a külön GdkDrag és GdkDrop objektumok javaslását;
  • Egyszerűsödött az események kezelése, amelyek most már csak bemenetre használatosak. A többi eseményt külön jelekre cserélték, például a kimeneti események helyett a „GdkSurface::render” jelet, a beállítási események helyett a „GdkSurface::size-changed” jelet, a leképezési események helyett a „GdkSurface::mapped” jelet, a gdk_event_handler_set() helyett pedig a „GdkSurface::event” jelet ajánlják;
  • A GDK Wayland backendhez hozzáadva a portal interfész támogatása a GtkSettings beállítások eléréséhez. A bemeneti módszerek kezeléséhez a text-input-unstable-v3 protokoll kiterjesztésének támogatását kínálják;
  • A widgetek fejlesztéséhez új GtkLayoutManager objektum került bemutatásra, amely a látható terület méretének függvényében irányítja az elemek elhelyezkedését. A GtkLayoutManager felváltotta a GTK konténerekben, mint például a GtkBox és GtkGrid, a gyermek tulajdonságokat. Több előre definiált elhelyezési manager javasolt: GtkBinLayout egyszerű konténerekhez egy gyermek elemmel, GtkBoxLayout lineárisan elrendezett gyermek elemekhez, GtkGridLayout a gyermek elemek rácsba való elrendezéséhez, GtkFixedLayout tetszőleges elhelyezkedéshez, GtkCustomLayout a hagyományos elemek transzformálásához méretallokátorok alapján;
  • A GtkAssistant, GtkStack és GtkNotebook widgetekhez nyilvánosan elérhető objektumokat adtak hozzá, amelyek a gyermek elemek oldalankénti kiadását irányítják, ezek a widgetek elhelyezéssel nem kapcsolatos gyermek tulajdonságai. Mivel az összes létező gyermek tulajdonságot normál tulajdonságokká alakították, az elhelyezési tulajdonságokat pedig oldalankénti objektumokba helyezték, a GtkContainerből teljesen eltávolították a gyermek tulajdonságok támogatását;
  • A GtkEntry alapvető funkcionalitása egy új GtkText widgetbe került, amely szintén magában foglalja a GtkEditable kibővített szerkesztési felületét. Minden meglévő adatbeviteli alosztályt a GtkText új widget alapján megvalósított GtkEditable formájába alakítottak;
  • Új GtkPasswordEntry widget került hozzáadásra a jelszóbevitelhez;
  • A GtkWidgets-be lehetőség került beépítésre a gyermek elemek lineáris transzformációk átalakítására, amelyeket CSS-en vagy gtk_widget_allocate argumentumon keresztül határoznak meg a GskTransform-ban. Ez a lehetőség már alkalmazva lett a GtkFixed widgetben;
  • Új listaformáló modellek kerültek hozzáadásra: GtkMapListModel, GtkSliceListModel, GtkSortListModel, GtkSelectionModel és GtkSingleSelection. Tervezzük a lista modellek támogatásának bővítését a GtkListView-ban.
  • A GtkBuilder-ben lehetőség nyílt az objektumok inline tulajdonságainak megadására ahelyett, hogy azonosító szerint hivatkoznánk rájuk.
  • A gtk4-builder-tool-ban új parancs került hozzáadásra a GTK 3 UI-fájlok GTK 4-be való átalakítására.
  • A kulcstémák (key theme), a tabulált menük (tabular menu) és a kombinált dobozok (combo box) támogatása megszűnik. A GtkInvisible widget eltávolításra került.

    Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster