Available ang GTK 4.8 graphics toolkit

Pagkatapos ng walong buwan ng pag-unlad, ang paglabas ng isang multi-platform toolkit para sa paglikha ng isang graphical na user interface ay nai-publish - GTK 4.8.0. Ang GTK 4 ay binuo bilang bahagi ng isang bagong proseso ng pag-unlad na sumusubok na magbigay sa mga developer ng application ng isang matatag at suportadong API sa loob ng ilang taon na maaaring magamit nang walang takot na muling isulat ang mga aplikasyon tuwing anim na buwan dahil sa mga pagbabago sa API sa susunod na GTK sangay.

Ang ilan sa mga pinakakilalang pagpapabuti sa GTK 4.8 ay kinabibilangan ng:

  • Ang estilo ng interface ng pagpili ng kulay ay binago (GtkColorChooser).
  • Ang interface ng pagpili ng font (GtkFontChooser) ay nagpabuti ng suporta para sa mga kakayahan sa format ng OpenType.
  • Ang CSS engine ay na-optimize ang muling pagpapangkat ng mga elemento na nauugnay sa parehong magulang, at pinapayagan ang paggamit ng mga non-integer na halaga kapag tinutukoy ang laki ng espasyo sa pagitan ng mga titik.
  • Ang data ng emoji ay na-update sa CLDR 40 (Unicode 14). Nagdagdag ng suporta para sa mga bagong lokal.
  • Ang tema ay may na-update na mga icon at pinahusay ang pagiging madaling mabasa ng mga naka-highlight na label ng teksto.
  • Ang GDK library, na nagbibigay ng layer sa pagitan ng GTK at ng graphics subsystem, ay na-optimize ang conversion ng mga pixel format. Sa mga system na may mga driver ng NVIDIA, ang EGL extension na EGL_KHR_swap_buffers_with_damage ay pinagana.
  • Ang library ng GSK (GTK Scene Kit), na nagbibigay ng kakayahang mag-render ng mga graphic na eksena sa pamamagitan ng OpenGL at Vulkan, ay sumusuporta sa pagproseso ng malalaking nakikitang lugar (viewports). Ang mga aklatan para sa pag-render ng mga glyph gamit ang mga texture ay iminungkahi.
  • Sinusuportahan ng Wayland ang "xdg-activation" na protocol, na nagbibigay-daan sa iyong ilipat ang focus sa pagitan ng iba't ibang first-level surface (halimbawa, gamit ang xdg-activation, maaaring ilipat ng isang application ang focus sa isa pa).
  • Binabawasan ng widget ng GtkTextView ang bilang ng mga sitwasyon na humahantong sa paulit-ulit na pag-redraw, at ipinapatupad ang function na GetCharacterExtents upang matukoy ang lugar na may glyph na tumutukoy sa character sa text (isang function na sikat sa mga tool para sa mga taong may mga kapansanan).
  • Ang klase ng GtkViewport, na ginamit upang ayusin ang pag-scroll sa mga widget, ay may naka-enable na mode na "scroll-to-focus" bilang default, kung saan ang nilalaman ay awtomatikong ini-scroll upang mapanatili ang elementong may input na focus sa view.
  • Ang widget ng GtkSearchEntry, na nagpapakita ng lugar para sa pagpasok ng isang query sa paghahanap, ay nagbibigay ng kakayahang i-configure ang pagkaantala sa pagitan ng huling keystroke at pagpapadala ng signal tungkol sa pagbabago ng nilalaman (GtkSearchEntry::search-changed).
  • Ang GtkCheckButton widget ay mayroon na ngayong kakayahan na magtalaga ng sarili nitong child widget na may isang button.
  • Idinagdag ang property na "content-fit" sa GtkPicture widget para iakma ang content sa isang partikular na laki ng lugar.
  • Ang pagganap ng pag-scroll ay na-optimize sa widget ng GtkColumnView.
  • Ang widget ng GtkTreeStore ay nagbibigay-daan sa pagkuha ng data ng puno mula sa mga file sa ui na format.
  • Ang isang bagong widget para sa pagpapakita ng mga listahan ay naidagdag sa klase ng GtkInscription, na responsable para sa pagpapakita ng teksto sa isang partikular na lugar. Nagdagdag ng demo application na may halimbawa ng paggamit ng GtkInscription.
  • Nagdagdag ng suporta sa pag-scroll sa GtkTreePopover widget.
  • Ang widget ng GtkLabel ay nagdagdag ng suporta para sa mga tab at ang kakayahang i-activate ang mga label sa pamamagitan ng pag-click sa mga simbolo na nauugnay sa label sa keyboard.
  • Sinusuportahan na ngayon ng widget ng GtkListView ang "::n-items" at "::item-type" na mga katangian.
  • Ang sistema ng pag-input ay nagbibigay ng suporta para sa mga handler ng parameter ng pag-scroll (GDK_SCROLL_UNIT_WHEEL, GDK_SCROLL_UNIT_SURFACE).
  • Para sa platform ng macOS, idinagdag ang suporta para sa full-screen mode at pag-playback ng video gamit ang OpenGL. Pinahusay na pag-detect ng monitor, gumana sa mga configuration ng multi-monitor, paglalagay ng window at pagpili ng laki para sa dialog ng file. Ang CALayer at IOSurface ay ginagamit para sa pag-render. Maaaring ilunsad ang mga application sa background.
  • Sa platform ng Windows, napabuti ang paglalagay ng window sa mga screen ng HiDPI, naidagdag ang isang interface ng pagtuklas ng kulay, ipinatupad ang suporta para sa mga kaganapan sa gulong ng mouse na may mataas na resolution, at napabuti ang suporta sa touchpad.
  • Ang isang screenshot command ay idinagdag sa gtk4-builder-tool utility upang lumikha ng isang screenshot, na ginagamit kapag bumubuo ng mga screenshot para sa dokumentasyon.
  • Ang pag-install ng gtk4-node-editor utility ay ibinigay.
  • Ang mga kakayahan sa pag-debug ay pinalawak. Ipinatupad ang pagpapakita ng karagdagang data ng application at pinapayagan ang pagtingin sa mga property ng PangoAttrList sa panahon ng inspeksyon. Ang mga inspeksyon ng mga inspektor ay pinapayagan. Nagdagdag ng suporta para sa "GTK_DEBUG=invert-text-dir" mode. Sa halip na ang GTK_USE_PORTAL environment variable, ang β€œGDK_DEBUG=portals” mode ay iminungkahi. Pinahusay na pagtugon ng interface ng inspeksyon.
  • Ang suporta sa tunog ay naidagdag sa ffmpeg backend.
  • Ang limitasyon ng memorya sa JPEG image downloader ay nadagdagan sa 300 MB.

Pinagmulan: opennet.ru

Magdagdag ng komento