Π”ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ Π΅ Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅Π½ Ρ‚ΡƒΠ»ΠΊΠΈΡ‚ GTK 4.22 с Π²Π³Ρ€Π°Π΄Π΅Π½ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» Π·Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° SVG

Π‘Π»Π΅Π΄ ΡˆΠ΅ΡΡ‚ мСсСца Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° бСшС ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π°Π½Π° вСрсия Π½Π° многоплатформСния Ρ‚ΡƒΠ»ΠΊΠΈΡ‚ Π·Π° създаванС Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅Π½ потрСбитСлски интСрфСйс β€” GTK 4.22. GTK 4 сС Ρ€Π°Π·Π²ΠΈΠ²Π° Π² Ρ€Π°ΠΌΠΊΠΈΡ‚Π΅ Π½Π° процСса Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΊΠΎΠΉΡ‚ΠΎ Ρ†Π΅Π»ΠΈ Π΄Π° прСдостави Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° прилоТСния стабилСн ΠΈ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Π½ ΠΏΡ€Π΅Π· слСдващитС Π³ΠΎΠ΄ΠΈΠ½ΠΈ API, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π±Π΅Π· страх, Ρ‡Π΅ Π½Π° всСки ΡˆΠ΅ΡΡ‚ мСсСца Ρ‰Π΅ трябва Π΄Π° ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ прилоТСнията си ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² API Π² слСдващата вСрсия Π½Π° GTK.

Π‘Ρ€Π΅Π΄ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅Π»Π½ΠΈΡ‚Π΅ подобрСния Π² GTK 4.22:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²Π³Ρ€Π°Π΄Π΅Π½Π° систСма Π·Π° Ρ€Π΅Π½Π΄ΠΈΡ€Π°Π½Π΅ ΠΈ Π°Π½Π°Π»ΠΈΠ· Π½Π° изобраТСния Π² SVG Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‰Π° анимация ΠΈ позволяваща създаванС Π½Π° Π°Π½ΠΈΠΌΠΈΡ€Π°Π½ΠΈ ΠΈΠΊΠΎΠ½ΠΈ, ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΈ интСрфСйсни Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ промСнящи сС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ Π·Π° Π½Π°ΠΏΡ€Π΅Π΄ΡŠΠΊ. GtkSvg сС ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΎ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° GSK (GTK Scene Kit), която прСдоставя Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° Ρ€Π΅Π½Π΄ΠΈΡ€Π°Π½Π΅ Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ сцСни Ρ‡Ρ€Π΅Π· OpenGL ΠΈ Vulkan. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° librsvg, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΏΠΎ-Ρ€Π°Π½ΠΎ Π·Π° Ρ€Π΅Π½Π΄ΠΈΡ€Π°Π½Π΅ Π½Π° SVG ΠΈΠΊΠΎΠ½ΠΈ, Π΅ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚Π° ΠΎΡ‚ зависимоститС.

    Π—Π° Ρ€Π°Π±ΠΎΡ‚Π° с SVG Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ клас Gtk.Svg, ΠΊΠΎΠΉΡ‚ΠΎ позволява избягванС Π½Π° външни зависимости ΠΏΡ€ΠΈ Ρ€Π΅Π½Π΄ΠΈΡ€Π°Π½Π΅ Π½Π° Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈ ΠΈΠΊΠΎΠ½ΠΈ ΠΈ рСсурси Π·Π° прилоТСния. ΠŸΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π°Ρ‚Π° рСализация Π½Π° SVG Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½Π° спСциално Π·Π° GTK ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° 1250 ΠΎΡ‚ 1616 тСста Π·Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π° resvg (Π·Π° сравнСниС, Firefox ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° 1385 тСста, librsvg β€” 1168, Π° QtSvg β€” 591).

  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ GtkPopoverBin, ΠΊΠΎΠ΅Ρ‚ΠΎ опростява добавянСто Π½Π° контСкстни ΠΌΠ΅Π½ΡŽΡ‚Π° ΠΈ ΠΏΠ°Π΄Π°Ρ‰ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ·ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΈ. GtkPopoverBin ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°Ρ‚ΠΎ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ Π·Π° ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° функционалността Π½Π° изскачащи ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈ във Π²ΠΈΠ΄ΠΆΠ΅Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ сами ΠΏΠΎ сСбС си Π½Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π³ΠΎ правят.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² Ρ‚ΠΈΠΏ ΠΈΠ·Ρ€Π°Π·ΠΈ GtkTryExpression, позволяващи опрСдСлянС Π½Π° дСйствия Π·Π° замяна. GtkTryExpression сС ΠΎΠΏΠΈΡ‚Π²Π° Π΄Π° изпълни всяко изразяванС ΠΎΡ‚ списъка, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π΅Π΄Π½ΠΎ ΠΎΡ‚ тях Π½Π΅ бъдС изпълнСно ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ.
  • Π’ΡŠΠ²Π΅Π΄Π΅Π½ Π΅ Π½ΠΎΠ² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π·Π° символнитС ΠΈΠΊΠΎΠ½ΠΈ, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‰ анимация ΠΈ промСнящи сС ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΡ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π° индикация Π½Π° активност). Π—Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° ΡˆΠΈΡ€ΠΈΠ½Π°Ρ‚Π° Π½Π° ΠΈΠΊΠΎΠ½ΠΈΡ‚Π΅ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΎ CSS свойство Β«-gtk-icon-weightΒ». Π”ΠΎΠ±Π°Π²Π΅Π½ΠΎ Π΅ Π΄Π΅ΠΌΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ org.gtk.Shaper с рСализация Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Π·Π° новия Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π½Π° символнитС ΠΈΠΊΠΎΠ½ΠΈ.
    Π”ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ Π΅ Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅Π½ Ρ‚ΡƒΠ»ΠΊΠΈΡ‚ GTK 4.22 с Π²Π³Ρ€Π°Π΄Π΅Π½ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π» Π·Π° Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° SVG
  • Π’ Π±Π΅ΠΊΠ΅Π½Π΄Π° Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° Π² срСди Π±Π°Π·ΠΈΡ€Π°Π½ Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Wayland Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° СкспСримСнтална ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° xx-session-management, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈΡ‚Π΅ ΠΎΡ‚ ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΈ сСсии (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, слСд Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎ прСкратяванС Π½Π° композитния ΠΌΠ΅Π½ΠΈΠ΄ΠΆΡŠΡ€). Π—Π° Π²ΠΊΠ»ΡŽΡ‡Π²Π°Π½Π΅ трябва Π΄Π° сС Π·Π°Π΄Π°Π΄Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π° Π½Π° срСдата β€žGDK_DEBUG=session-mgmtβ€œ.
  • Π’ API GtkApplication Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΠ΅Ρ‚ΠΎ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° xx-session-management. Π’ GNOME 50 Ρ‚Π°Π·ΠΈ функционалност сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° сСсии ΠΈ Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈΡ‚Π΅.
  • Π—Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ настройкитС Π² Π±Π΅ΠΊΠ΅Π½Π΄Π° Π·Π° Wayland Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ ΠΏΠΎΡ€Ρ‚Π°Π» freedesktop.portal.Settings.
  • Π’ API GtkFileLauncher Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π·Π° писанС, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈ flatpak.
  • Π’ GSK (GTK Scene Kit) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€Π°Π½Π΅ ΠΈ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° измСстванС Π½Π° пиксСлитС Π½Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π½ΠΎΡ‚ΠΎ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° β€žΠΊΠ°Ρ€Ρ‚Π° Π·Π° ΠΈΠ·ΠΌΠ΅ΡΡ‚Π²Π°Π½Π΅β€œ (displacement map) Π·Π° създаванС Π½Π° слоТни Π³Ρ€Π°Ρ„ΠΈΡ‡Π½ΠΈ Π΅Ρ„Π΅ΠΊΡ‚ΠΈ.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ API GskRenderNodeReplay Π·Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½Π° Π΄ΡŠΡ€Π²ΠΎΡ‚ΠΎ отрисовки (Render Node).
  • Π”ΠΎΠ±Π°Π²Π΅Π½ΠΈ са Π½ΠΎΠ²ΠΈ Ρ‚ΠΈΠΏΠΎΠ²Π΅ възли Π·Π° отрисовка β€žcopyβ€œ ΠΈ β€žpasteβ€œ, позволяващи ΠΊΠΎΠΏΠΈΡ€Π°Π½Π΅ ΠΈ поставянС Π½Π° област ΠΏΠΎΠ΄ тСкущия Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎ място Π² Π³Ρ€Π°Ρ„Π° Π½Π° сцСната.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½ΠΎΠ² Ρ‚ΠΈΠΏ възли Π·Π° отрисовка β€žcompositeβ€œ, позволяващ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄ΠΎΠΏΡŠΠ»Π½ΠΈΡ‚Π΅Π»Π½ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π·Π° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ€Π°Π½Π΅ ΠΏΡ€ΠΈ отрисовка Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π° Π½Π°Π΄ Ρ„ΠΎΠ½Π°, ΠΊΠ°Ρ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ наслагванС с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° маска.
  • Π’ CSS Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΎ свойство β€žbackdrop-filterβ€œ Π·Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° Π΅Ρ„Π΅ΠΊΡ‚ΠΈ Π²ΡŠΡ€Ρ…Ρƒ Ρ„ΠΎΠ½ΠΎΠ²Π°Ρ‚Π° област, ΠΊΠ°Ρ‚ΠΎ Ρ€Π°Π·ΠΌΠΈΡ‚ Ρ„ΠΎΠ½.
  • Π’ CSS Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° настройка β€žreduced-motionβ€œ, която ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€Π° Π·Π° нСобходимостта ΠΎΡ‚ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° анимация.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster