Dostępny zestaw narzędzi graficznych GTK 4.8

Po ośmiu miesiącach prac opublikowano wieloplatformowy zestaw narzędzi do tworzenia graficznego interfejsu użytkownika - GTK 4.8.0. GTK 4 jest opracowywane w ramach nowego procesu rozwojowego, który ma na celu zapewnienie twórcom aplikacji stabilnego i wspieranego API na kilka lat, z którego można korzystać bez obawy konieczności przepisywania aplikacji co sześć miesięcy ze względu na zmiany API w następnym GTK oddział.

Do najbardziej znaczących ulepszeń w GTK 4.8 należą:

  • Zmieniono styl interfejsu wyboru koloru (GtkColorChooser).
  • Interfejs wyboru czcionek (GtkFontChooser) ma ulepszoną obsługę możliwości formatu OpenType.
  • Silnik CSS zoptymalizował przegrupowanie elementów powiązanych z tym samym rodzicem i pozwala na użycie wartości niecałkowitych przy określaniu wielkości odstępów między literami.
  • Dane emoji zostały zaktualizowane do CLDR 40 (Unicode 14). Dodano obsługę nowych ustawień regionalnych.
  • Motyw zaktualizował ikony i poprawił czytelność wyróżnionych etykiet tekstowych.
  • Biblioteka GDK, która stanowi warstwę pomiędzy GTK a podsystemem graficznym, zoptymalizowała konwersję formatów pikseli. W systemach ze sterownikami NVIDIA włączone jest rozszerzenie EGL EGL_KHR_swap_buffers_with_damage.
  • Biblioteka GSK (GTK Scene Kit), która umożliwia renderowanie scen graficznych poprzez OpenGL i Vulkan, obsługuje przetwarzanie dużych widocznych obszarów (rzutni). Zaproponowano biblioteki do renderowania glifów przy użyciu tekstur.
  • Wayland obsługuje protokół „xdg-activation”, który umożliwia przenoszenie fokusu pomiędzy różnymi powierzchniami pierwszego poziomu (na przykład za pomocą aktywacji xdg jedna aplikacja może przełączać fokus na inną).
  • Widżet GtkTextView ogranicza liczbę sytuacji prowadzących do powtarzających się przerysowań oraz implementuje funkcję GetCharacterExtents pozwalającą na określenie obszaru za pomocą glifu definiującego znak w tekście (funkcja popularna w narzędziach dla osób niepełnosprawnych).
  • Klasa GtkViewport, służąca do organizowania przewijania w widżetach, ma domyślnie włączony tryb „przewiń do fokusa”, w którym treść jest automatycznie przewijana, aby zachować element, na którym znajduje się fokus wejściowy.
  • Widget GtkSearchEntry wyświetlający obszar do wpisania szukanego hasła umożliwia skonfigurowanie opóźnienia pomiędzy ostatnim naciśnięciem klawisza a wysłaniem sygnału o zmianie treści (GtkSearchEntry::search-changed).
  • Widżet GtkCheckButton ma teraz możliwość przypisania własnego widżetu podrzędnego za pomocą przycisku.
  • Dodano właściwość „content-fit” do widżetu GtkPicture w celu dostosowania treści do zadanego rozmiaru obszaru.
  • W widżecie GtkColumnView zoptymalizowano wydajność przewijania.
  • Widżet GtkTreeStore umożliwia wyodrębnianie danych drzewa z plików w formacie ui.
  • Do klasy GtkInscription dodano nowy widget do wyświetlania list, który odpowiada za wyświetlanie tekstu w określonym obszarze. Dodano aplikację demonstracyjną z przykładem użycia GtkInscription.
  • Dodano obsługę przewijania do widżetu GtkTreePopover.
  • Widget GtkLabel dodał obsługę zakładek oraz możliwość aktywacji etykiet poprzez kliknięcie na symbole skojarzone z etykietą na klawiaturze.
  • Widżet GtkListView obsługuje teraz właściwości „::n-items” i „::item-type”.
  • System wejściowy zapewnia obsługę obsługi parametrów parametrów przewijania wymiarów (GDK_SCROLL_UNIT_WHEEL, GDK_SCROLL_UNIT_SURFACE).
  • Dla platformy macOS dodano obsługę trybu pełnoekranowego i odtwarzania wideo przy użyciu OpenGL. Ulepszone wykrywanie monitorów, praca w konfiguracjach wielomonitorowych, rozmieszczenie okien i wybór rozmiaru okna dialogowego pliku. Do renderowania używane są CALayer i IOSurface. Aplikacje można uruchamiać w tle.
  • Na platformie Windows poprawiono rozmieszczenie okien na ekranach HiDPI, dodano interfejs wykrywania kolorów, zaimplementowano obsługę zdarzeń kółka myszy w wysokiej rozdzielczości oraz poprawiono obsługę touchpada.
  • Do narzędzia gtk4-builder-tool dodano polecenie zrzutu ekranu umożliwiające utworzenie zrzutu ekranu, który jest używany podczas generowania zrzutów ekranu do dokumentacji.
  • Zapewniona jest instalacja narzędzia gtk4-node-editor.
  • Możliwości debugera zostały rozszerzone. Zaimplementowano wyświetlanie dodatkowych danych aplikacji i umożliwiono przeglądanie właściwości PangoAttrList podczas inspekcji. Dozwolone są kontrole inspektorów. Dodano obsługę trybu „GTK_DEBUG=invert-text-dir”. Zamiast zmiennej środowiskowej GTK_USE_PORTAL zaproponowano tryb „GDK_DEBUG=portale”. Poprawiona responsywność interfejsu inspekcji.
  • Do zaplecza ffmpeg dodano obsługę dźwięku.
  • Limit pamięci w narzędziu do pobierania obrazów JPEG został zwiększony do 300 MB.

Źródło: opennet.ru

Dodaj komentarz