GTK 3.96, serbestberdana ezmûnî ya GTK 4, hate weşandin

10 meh piştî yên berê serbestberdana testê pêşkêş kirin GTK 3.96, serbestberdana ezmûnî ya nû ya serbestberdana aram a pêşerojê ya GTK 4. Şaxa GTK 4 wekî beşek ji pêvajoyek nû ya pêşkeftinê tê pêşve xistin ku hewl dide ji bo çend salan API-yek aram û piştgirî ji pêşdebirên serîlêdanê re peyda bike ku dikare bêyî tirs were bikar anîn. ji ber guheztina API-ê di şaxê GTK-ê ya paşîn de pêdivî ye ku her şeş mehan carekê serîlêdanê ji nû ve binivîsîne. Heya ku GTK 4 bi tevahî aram bibe, tê pêşniyar kirin ku serîlêdanên ku ji bikarhêneran re têne pêşkêş kirin bi karanîna şaxê berdewam bikin. GTK 3.24.

sereke guhertin di GTK 3.96 de:

  • Di API de GSK (Kiteya Dîmenê ya GTK), ku bi rêya OpenGL û Vulkan ve vegotina dîmenên grafîkî peyda dike, li ser xeletiyên ku bi saya amûra nûvebirinê gtk4-node-editor, ku destûrê dide te barkirin û nîşan bide, naskirina wan hêsantir bûye, hatiye kirin. danasîna girêkê bi rengek serialîzekirî (dikare di moda vekolînê de çavdêrê GTK-ê were hilanîn), û di heman demê de dema ku paşpirtikên cihêreng bikar tînin encamên renderkirinê bidin ber hev;

    GTK 3.96, serbestberdana ezmûnî ya GTK 4, hate weşandin

  • Kapasîteyên veguherîna 3D hatine astekê ku destûrê dide te ku hûn bandorên anîmasyonê yên wekî kubarek zivirî biafirînin;

    GTK 3.96, serbestberdana ezmûnî ya GTK 4, hate weşandin

  • Bi tevahî ji nû ve hatî nivîsandin Piştgiriya Broadway GDK-ê hatî sêwirandin ku di pencereyek geroka webê de hilberîna pirtûkxaneya GTK-ê pêşkêş bike. Pêkanîna kevn a Broadway di nav rêbazên renderkirinê yên ku di GTK 4-ê de hatine pêşniyar kirin de cih negirt (li şûna ku derbikeve ber tamponekê, ew naha modelek li ser bingeha girêkên renderê bikar tîne, ku li wir encam di forma dara operasyonên asta bilind de pêk tê, bi bandor ji hêla GPU ve bi karanîna OpenGL û Vulkan ve hatî pêvajoyê kirin).
    Vebijarka nû ya Broadway ji bo danasîna navberê di gerokê de girêkên renderê bi şêwazên CSS-ê vediguhezîne girêkên DOM. Her rewşek nû ya dîmenderê wekî guherînek di dara DOM-ê de li gorî rewşa berê tête pêvajo kirin, ku mezinahiya daneya ku ji muwekîlê dûr re hatî veguheztin kêm dike. Veguherandinên 3D û bandorên grafîkî bi navgîniya veguheztina CSS ve têne bicîh kirin;

  • GDK berdewam dike ku API-yên ku bi protokola Wayland-ê di hişê xwe de hatine sêwirandin bicîh bîne, û API-yên-based X11-ê paqij bike an jî wan biguhezîne paşperdeya X11-a cihê. Di xebatê de pêşkeftin heye ku ji karanîna rûberên zarokan û hevrêzên gerdûnî dûr bikevin. Piştgiriya GDK_SURFACE_SUBSURFACE ji GDK hat rakirin;
  • Refaktorkirina koda ku bi pêkanîna operasyonên Drag-and-Drop ve girêdayî ye, berdewam kir, tevî pêşniyarên veqetandî yên GdkDrag û GdkDrop;
  • Desthilatdariya bûyerê hêsan bûye û naha tenê ji bo têketinê tê bikar anîn. Bûyerên mayî bi îşaretên cihêreng têne guheztin, mînakî, li şûna bûyerên derketinê, sînyala "GdkSurface::render" tê pêşniyar kirin, li şûna bûyerên veavakirinê - "GdkSurface::size-guhertin", li şûna bûyerên nexşeyê - "GdkSurface: :mapped", li şûna gdk_event_handler_set() - "GdkSurface::event";
  • Piştgiriya GDK-ê ji bo Wayland ji bo gihîştina mîhengên GtkSettings piştgirî ji bo navberek portal zêde kiriye. Ji bo xebitandina rêbazên têketinê, piştgirî ji bo dirêjkirina protokola text-input-unstable-v3 hatiye pêşniyar kirin;
  • Ji bo pêşkeftina widgetan, tiştek nû ya GtkLayoutManager bi pêkanîna pergalek ji bo kontrolkirina sêwirana hêmanan ve girêdayî li gorî sêwirana devera xuyayî tê destnîşan kirin. GtkLayoutManager di konteynerên GTK yên wekî GtkBox û GtkGrid de li şûna taybetmendiyên zarokan digire. Çend gerînendeyên sêwiranê yên amade têne pêşniyar kirin: GtkBinLayout ji bo konteynerên hêsan ên bi yek hêmanek zarok, GtkBoxLayout ji bo hêmanên zarokê yên rêzkirî yên rêzkirî, GtkGridLayout ji bo berhevkirina hêmanên zarokan li ser torê, GtkFixedLayout ji bo cîhgirtina keyfî ya hêmanên zarokan, GtkBoxLayout ji bo hêmanên kevneşopî yên li ser bingeha mezinahiya_CustomLayout. handlers;
  • Tiştên ku bi gelemperî ji bo pêşandana rûpela hêmanên zarokan têne peyda kirin li widgetên GtkAssistant, GtkStack û GtkNotebook hatine zêdekirin, ku taybetmendiyên zarokan ên ne-girêdayî Layout-ê yên van widgetan têne veguheztin. Ji ber ku hemî taybetmendiyên zarokan ên heyî hatine veguheztin bo taybetmendiyên birêkûpêk, taybetmendiyên layout, an jî hatine guheztin bo tiştên rûpelê, piştgirî ji bo taybetmendiyên zarokan bi tevahî ji GtkContainer hate rakirin;
  • Fonksiyona bingehîn a GtkEntry hate veguheztin bo widgetek nû ya GtkText, ku di heman demê de navgînek guherandinê ya GtkEditable ya pêşkeftî jî vedihewîne. Hemî binklaskên têketina daneya heyî wekî pêkanînên GtkEditable li ser bingeha widgeta nû ya GtkText ji nû ve hatine çêkirin;
  • Ji bo formên têketina şîfreyê widgetek nû ya GtkPasswordEntry lê zêde kir;
  • GtkWidgets şiyana veguheztina hêmanên zarokan bi karanîna rêbazên veguheztina rêzikî yên ku bi navgîniya CSS an argumana gtk_widget_allocate ve hatî destnîşan kirin li GskTransform zêde kiriye. Taybetmendiya diyarkirî jixwe di widgeta GtkFixed de tê sepandin;
  • Modelên hilberîna navnîşa nû hatine zêdekirin: GtkMapListModel, GtkSliceListModel, GtkSortListModel, GtkSelectionModel û GtkSingleSelection. Di pêşerojê de em plan dikin ku piştgirîya modelên navnîşê li GtkListView zêde bikin;
  • GtkBuilder li şûna ku lînkên bi nasnameyê bikar bîne, şiyana danîna taybetmendiyên nesneyê li herêmî (navlêdan) lê zêde kiriye;
  • Ferman li gtk4-avakar-tool zêde kir ku pelên UI ji GTK 3 veguherîne GTK 4;
  • Piştgiriya ji bo mijarên sereke, pêşekên tabloyê, û qutiyên hevbeş hat sekinandin. Widgeta GtkInvisible hate rakirin.

    Source: opennet.ru

Add a comment