katapusang eksperimento nga pagpagawas sa balangkas , nga nagpatuman sa tanang feature nga giplano para sa GTK 4. Ang GTK 4 branch gipalambo ubos sa usa ka bag-ong proseso sa pag-develop nga nagtumong sa paghatag sa mga application developer og lig-on ug gisuportahan nga API sulod sa pipila ka tuig nga moabot, nga dili na kinahanglan nga usbon ang mga aplikasyon matag unom ka bulan tungod sa mga pagbag-o sa API sa pinakabag-o nga GTK branch. Ang GTK 4 release giplano nga ipagawas sa katapusan sa tuig.
Sa kadaghanan в mahimo nimong timan-an:
- Pamaagi sa paghan-ay sa elemento nga gibase sa pagpugong (), diin ang lokasyon ug gidak-on sa mga child elements gitino base sa distansya sa mga border ug sa gidak-on sa ubang mga elemento.
- Usa ka rendering module nga gibase sa Vulkan graphics API nga nag-implementar og mga shader para sa daghang mga elemento sa CSS nga nagkinahanglan og daghang resources nga gigamit sa mga GTK widgets.
- Integration (GTK Scene Kit) nga adunay abilidad sa pag-render sa mga graphic scene pinaagi sa OpenGL ug Vulkan.
- Gibag-o ang organisasyon sa pag-render - imbes nga mo-output ngadto sa usa ka buffer, usa ka render node-based model ang gigamit na karon, diin ang output gikomposo isip usa ka tree sa mga high-level nga operasyon nga episyenteng giproseso sa GPU gamit ang OpenGL ug Vulkan.
- para sa flexible nga pagdumala sa mga pagbag-o sa input focus.
- Usa ka modernisadong modelo sa paghatud sa panghitabo nga nagwagtang sa panginahanglan alang sa usa ka subwindow kung mag-ruta sa mga input nga panghitabo. Ang panginahanglan alang niining bag-ong modelo naggikan sa dugang nga paggamit sa mga epekto sa animation, nga kinahanglan nga i-render nga wala giusab ang layout sa makita nga mga elemento ug, busa, wala’y subwindow.
- Ang GDK API gi-redesign pag-usab nga nagtumong sa paggamit sa Wayland protocol ug mga may kalabutan nga konsepto. Ang mga feature nga nalambigit sa X11 ug Wayland gibalhin ngadto sa .
- Usa ka dakong pagpanglimpyo sa API ang nahimo, lakip na ang pagtangtang sa mga klase sa GtkMenu, GtkMenuBar, ug GtkToolbar, pabor sa GMenu ug mga opsyon nga nakabase sa popover.
- Ang GtkTextView ug uban pang input widgets adunay built-in nga undo stack.
- Nagdugang og bag-ong klase sa GtkNative para sa mga widget nga adunay kaugalingong display surface ug mahimong mogana nga independente sa unang lebel, nga dili kinahanglan nga ihigot sa ginikanan nga mga widget.
- Bag-ong mga widget ang nadugang, lakip ang GtkPicture, GtkText, GtkPasswordEntry, GtkListView, GtkGridView, GtkColumnView, ug usa ka Emoji display widget.
- Para sa pagpalambo sa widget, usa ka bag-ong GtkLayoutManager object ang gipaila, nga nagpatuman sa usa ka sistema para sa pagdumala sa element layout base sa gidak-on sa viewport. Ang GtkLayoutManager mopuli sa mga child properties sa mga GTK container sama sa GtkBox ug GtkGrid.
- Gipasimple na ang pagdumala sa mga panghitabo, ug ang mga panghitabo gigamit na lang karon para sa input. Ang ubang mga panghitabo gipulihan na og lahi nga mga signal. Pananglitan, ang signal nga "GdkSurface::render" gipaila imbes nga mga output nga panghitabo, ug ang "GdkSurface::size-changed" gipaila imbes nga mga setup nga panghitabo.
- Nagdugang og bag-ong abstraction layer, ang GdkPaintable, nga nagrepresentar sa mga butang nga mahimong idrowing bisan asa sa bisan unsang gidak-on, nga dili kinahanglan nga ihan-ay ang mga layout layer.
- Ang Broadway backend gisulat pag-usab aron tugotan ang pag-render sa output sa GTK library sa usa ka web browser window.
- Ang API nga may kalabotan sa mga operasyon sa Drag-and-Drop giusab, lakip na ang pagpaila sa managlahing mga butang nga GdkDrag ug GdkDrop.
Mga kalamboan kon itandi sa miaging test release:
- Ang daang implementasyon sa Accessibility API para sa mga tawo nga adunay mga kakulangan gitangtang na ug gipulihan sa bag-ong bersyon base sa espesipikasyon. ug ang GtkAccessible widget.
- Gidugang ang suporta para sa mga ma-edit nga label (GtkEditableLabel).
- Gisugyot ang bag-ong mga modelo sa lista para sa pagpakita sa mga bookmark (GtkBookmarkList), mga string (GtkStringList) ug mga bloke sa pagpili (GtkBitset).
- Ang GtkTreeView widget adunay abilidad sa pag-edit sa mga cell.
- Ang GtkGridView ug GtkListView nakapalambo sa implementasyon sa pag-scroll ug nakadugang og suporta para sa autoscrolling ug auto-expanding.
- Ang GtkWidget nakapaspas pag-ayo sa pagproseso sa nagkalain-laing mga aksyon.
- Ang GtkFilterListModel ug GtkSortListModel karon nagsuporta sa incremental scrolling ug filtering.
- Gisuportahan na karon sa Inspector ang pag-inspeksyon sa mga modelo sa lista ug nagtugot sa direktang nabigasyon taliwala sa mga butang.
- Ang GDK karon nagmintinar sa scroll history, naglimpyo sa GdkDevice API, ug nagtangtang sa pagbulag sa mga device ngadto sa master ug slave.
- Gidugang ang bag-ong GDK backend para sa macOS.
- Sa Windows Usa ka bag-ong GDK rendering backend nga gibase sa , para sa paghubad sa mga tawag sa OpenGL ES ngadto sa OpenGL, Direct3D 9/11, Desktop GL, ug Vulkan.
Source: opennet.ru
