GTK 3.99 jest tutaj i o krok od GTK 4, poznaj najważniejsze zmiany

Ostateczna wersja GTK 3.99 została już wydana iw nim będęnp. różne implementacje, do których są skierowane ulepszenia, które mają być oferowane w ramach GTK4.

Gałąź GTK 4 jest rozwijane w ramach nowego procesu rozwój tego staraj się zapewnić programistom aplikacji stabilne i zgodne API od kilku lat można go używać bez obaw, że co pół roku będziesz musiał przerabiać aplikacje ze względu na zmiany API w kolejnej wersji GTK.

Co nowego w GTK 3.99?

W nowej wydanej wersji GTK 3.99 jest usunięto starą implementację API ułatwień dostępu dla osób niepełnosprawnych oraz zamiast tego zaproponowano nową wersję opartą na specyfikacji ARIA i widżet GtkAccessible.

Dla Windowsa, zaproponowano nowy backend renderujący GDK oparty na ANGLE, warstwa pośrednia do tłumaczenia wywołań OpenGL ES na OpenGL, Direct3D 9/11, Desktop GL i Vulkan. Podczas gdy dla macOS został dodany nowy backend GDK.

Kolejną z wprowadzonych zmian jest obsługa edytowalnych etykiet (GtkEditableLabel) oraz Zaproponowano nowe modele list do wyświetlania zakładek (GtkBookmarkList), Strings (GtkStringList) i Select Boxes (GtkBitset), a widżet GtkTreeView implementuje możliwość edycji komórek.

Z innych zmian w tej wersji:

  • GtkGridView i GtkListView mają ulepszoną implementację przewijania, dodano obsługę automatycznego przewijania i automatycznego przesuwania.
  • GtkWidget znacznie przyspieszył przetwarzanie różnych działań.
  • Dodano obsługę przyrostowego przewijania i filtrowania do GtkFilterListModel i GtkSortListModel.
  • Inspektor dodaje obsługę inspekcji modeli list i możliwość bezpośredniego nawigowania między obiektami.
  • W GDK zapisywana jest historia przemieszczeń, wyczyszczono API GdkDevice, zatrzymano podział urządzeń na master i slave.

Czego oczekuje się od GTK4?

Jeśli chodzi o zmiany, które są oczekiwane w GTK4 (które ma się ukazać między październikiem a listopadem tego roku) to na przykład metoda projektowania wiązań, w którym położenie i rozmiar elementów potomnych są określane na podstawie odległości od krawędzi i rozmiaru pozostałych elementów.

Moduł renderujący oparty na graficznym API Vulkan, który implementuje shadery dla wielu elementów CSS wymagających dużej ilości zasobów, używanych w widżetach GTK.

Integracja GSK (GTK Scene Kit) z możliwością renderowania scen graficznych poprzez OpenGL i Vulkan.

Tak dobrze jak organizacja reprezentacji została zmieniona: Zamiast generowania bufora używany jest teraz model oparty na węźle renderowania, w którym wynik jest zorganizowany w postaci drzewa operacji wysokopoziomowych, wydajnie przetwarzanych przez GPU za pomocą OpenGL i Vulkan.

Zmodernizowany model realizacji wydarzeń co eliminuje potrzebę podokna podczas kierowania zdarzeń wejściowych. Konieczność implementacji nowego modelu wiąże się z aktywniejszym wykorzystaniem efektów animacji, które muszą być renderowane bez zmiany układu widocznych elementów, a co za tym idzie bez podokna.

Interfejs API GDK przeprojektowany, aby wykorzystać protokół Wayland i pokrewne pojęcia. Funkcje związane z X11 i Waylandem zostały przeniesione do oddzielnych backendów.

W celu opracowania widżetów przedstawiono nowy obiekt GtkLayoutManager z implementacją systemu kontroli projektowania elementów w zależności od wielkości widocznego obszaru. GtkLayoutManager zastąpił właściwości podrzędne w kontenerach GTK, takich jak GtkBox i GtkGrid.

Uproszczona obsługa zdarzeń, które są teraz używane tylko do wprowadzania danych. Reszta wydarzeń została zastąpiona osobnymi sygnałami.

Backend Broadway został przepisany, aby umożliwić renderowanie wyjścia biblioteki GTK w oknie przeglądarki internetowej.

Zmieniono interfejs API związany z operacjami przeciągania i upuszczania, w tym oddzielnie proponowane obiekty GdkDrag i GdkDrop.

W końcu jeśli chcesz dowiedzieć się więcej na ten temat o tym, czego spodziewać się po GTk4, możesz sprawdzić szczegóły W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.