GTK 4.8 grafische toolkit beschikbaar

Na acht maanden ontwikkeling is de release van een multi-platform toolkit voor het maken van een grafische gebruikersinterface gepubliceerd: GTK 4.8.0. GTK 4 wordt ontwikkeld als onderdeel van een nieuw ontwikkelingsproces dat applicatie-ontwikkelaars probeert te voorzien van een stabiele en ondersteunde API voor meerdere jaren die kan worden gebruikt zonder de angst om applicaties elke zes maanden te moeten herschrijven vanwege API-wijzigingen in de volgende GTK tak.

Enkele van de meest opvallende verbeteringen in GTK 4.8 zijn:

  • De interfacestijl voor kleurselectie is gewijzigd (GtkColorChooser).
  • De lettertypeselectie-interface (GtkFontChooser) heeft verbeterde ondersteuning voor OpenType-formaatmogelijkheden.
  • De CSS-engine heeft de hergroepering van elementen die aan dezelfde ouder zijn gekoppeld geoptimaliseerd en maakt het gebruik van niet-gehele waarden mogelijk bij het bepalen van de grootte van de afstand tussen letters.
  • Emoji-gegevens zijn bijgewerkt naar CLDR 40 (Unicode 14). Ondersteuning toegevoegd voor nieuwe landinstellingen.
  • Het thema heeft pictogrammen bijgewerkt en de leesbaarheid van gemarkeerde tekstlabels verbeterd.
  • De GDK-bibliotheek, die een laag biedt tussen GTK en het grafische subsysteem, heeft de conversie van pixelformaten geoptimaliseerd. Op systemen met NVIDIA-stuurprogramma's is de EGL-extensie EGL_KHR_swap_buffers_with_damage ingeschakeld.
  • De GSK-bibliotheek (GTK Scene Kit), die de mogelijkheid biedt om grafische scènes weer te geven via OpenGL en Vulkan, ondersteunt de verwerking van grote zichtbare gebieden (viewports). Er worden bibliotheken voorgesteld voor het weergeven van glyphs met behulp van texturen.
  • Wayland ondersteunt het ‘xdg-activatie’-protocol, waarmee je de focus kunt overbrengen tussen verschillende oppervlakken van het eerste niveau (met behulp van xdg-activatie kan de ene applicatie bijvoorbeeld de focus naar de andere verleggen).
  • De GtkTextView-widget vermindert het aantal situaties dat leidt tot herhaaldelijk opnieuw tekenen, en implementeert de GetCharacterExtents-functie om het gebied te bepalen met de glyph die het teken in de tekst definieert (een functie die populair is in tools voor mensen met een handicap).
  • De GtkViewport-klasse, die wordt gebruikt om het scrollen in widgets te organiseren, heeft standaard de “scroll-to-focus”-modus ingeschakeld, waarin de inhoud automatisch wordt gescrolld om het element met de invoerfocus in beeld te houden.
  • De GtkSearchEntry-widget, die het gebied voor het invoeren van een zoekopdracht weergeeft, biedt de mogelijkheid om de vertraging tussen de laatste toetsaanslag en het verzenden van een signaal over de inhoudswijziging (GtkSearchEntry::search-changed) te configureren.
  • De GtkCheckButton-widget heeft nu de mogelijkheid om een ​​eigen onderliggende widget met een knop toe te wijzen.
  • Eigenschap “content-fit” toegevoegd aan de GtkPicture-widget om de inhoud aan te passen aan een bepaalde gebiedsgrootte.
  • De scrollprestaties zijn geoptimaliseerd in de GtkColumnView-widget.
  • De GtkTreeStore-widget maakt het extraheren van boomgegevens uit bestanden in ui-formaat mogelijk.
  • Er is een nieuwe widget voor het weergeven van lijsten toegevoegd aan de klasse GtkInscription, die verantwoordelijk is voor het weergeven van tekst in een specifiek gebied. Een demo-applicatie toegevoegd met een voorbeeld van het gebruik van GtkInscription.
  • Ondersteuning voor scrollen toegevoegd aan de GtkTreePopover-widget.
  • De GtkLabel-widget heeft ondersteuning toegevoegd voor tabbladen en de mogelijkheid om labels te activeren door op het toetsenbord op de symbolen te klikken die aan het label zijn gekoppeld.
  • De GtkListView-widget ondersteunt nu de eigenschappen "::n-items" en "::item-type".
  • Het invoersysteem biedt ondersteuning voor scrollende dimensieparameterhandlers (GDK_SCROLL_UNIT_WHEEL, GDK_SCROLL_UNIT_SURFACE).
  • Voor het macOS-platform is ondersteuning voor de modus Volledig scherm en het afspelen van video met OpenGL toegevoegd. Verbeterde monitordetectie, werken in configuraties met meerdere monitoren, vensterplaatsing en grootteselectie voor de bestandsdialoog. CALayer en IOSurface worden gebruikt voor rendering. Applicaties kunnen op de achtergrond worden gestart.
  • Op het Windows-platform is de plaatsing van vensters op HiDPI-schermen verbeterd, is er een kleurdetectie-interface toegevoegd, is ondersteuning voor muiswielgebeurtenissen met hoge resolutie geïmplementeerd en is de touchpad-ondersteuning verbeterd.
  • Er is een screenshot-opdracht toegevoegd aan het gtk4-builder-tool-hulpprogramma om een ​​screenshot te maken, die wordt gebruikt bij het genereren van screenshots voor documentatie.
  • Er wordt voorzien in de installatie van het gtk4-node-editor hulpprogramma.
  • Debugger-mogelijkheden zijn uitgebreid. Weergave van aanvullende applicatiegegevens geïmplementeerd en weergave van PangoAttrList-eigenschappen tijdens inspectie toegestaan. Inspecties door inspecteurs zijn toegestaan. Ondersteuning toegevoegd voor de modus "GTK_DEBUG=invert-text-dir". In plaats van de omgevingsvariabele GTK_USE_PORTAL wordt de modus “GDK_DEBUG=portals” voorgesteld. Verbeterde responsiviteit van de inspectie-interface.
  • Geluidsondersteuning is toegevoegd aan de ffmpeg-backend.
  • De geheugenlimiet in de JPEG-afbeeldingsdownloader is verhoogd naar 300 MB.

Bron: opennet.ru

Voeg een reactie