皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

GTK 3.98 发布,Linux 图形界面应用主流开发工具

GTK 3.98 发布了。

GTK(GIMP Toolkit) 是一套跨多种平台的图形工具包,最初为 GIMP 而写,GIMP 是指 GNU 图像处理程序(GNU Image Manipulation Program),GIMP 拥有几乎所有图象处理所需的功能,号称 Linux 下的 PhotoShop。GTK 后来发展成为 Linux 下开发图形界面应用的主流开发工具。

以下是一些更新要点:

性能

GL 渲染器进行了优化,性能有所改进。GtkTextView 的滚动性能已大大提高,方法是使其能够缓存可见范围内的渲染节点。

新年开始,重点一直放在改进 CSS 的性能上,CSS 值实现已进行了优化,以尽可能避免计算值,CSS 查找现在正在使用布隆过滤器,并且用于图标加载的 IO 已移至线程。

同时,添加的 sysprof 分析支持使最近的大多数工作成为可能,并且最近对其进行了增强以报告更多信息。

DND

DND 重构已完成,DND 是“Drag-and-Drop”,指对应该数据的拖放:桌面应用之间的数据传输的传统方法是剪贴板或拖放。用于 DND 的 GTK API 已变成事件控制器:GtkDragSource 和 GtkDropTarget。已为 DND 和剪贴板添加了通过文件传输门户进行文件传输的支持。

GDK

GDK 向 Wayland 概念迈进的过程仍在继续。

子界面已被删除,GDK 现在仅支持顶层和弹出界面。客户端窗口实现也已删除。全球位置和相关的 API(例如gdk_surface_move())不再可用。

抓取不再公开为 API,作为替代,可以将弹出界面配置为隐藏外部点击。

现在,在构建 X11 后端时必须使用 XI2,并且已经删除了对 xim 输入法的支持,以支持 IBus。

Wayland 后端不再依赖 libwayland-cursor 加载光标主题,并按需加载单个光标。

移除

通过使小部件在可能的情况下直接从 GtkWidget 派生,已使许多类不可子类化,并且简化了小部件层次。

GtkMenu、GtkMenuBar、GtkToolbar 和相关类已被删除,它们已被 GMenu 和基于 popover 的变体替代。弹出菜单现在可以执行传统的嵌套菜单,并且还可以显示加速器。

上下文菜单不再使用 ::populate-popup 信号创建,而是使用菜单模型和动作。使用 gtk_widget_class_install_action() 之类的 API 可以更轻松地在 class_init 中创建这些动作。

GtkGestureMultiPress 已重命名为 GtkGestureClick,使该事件控制器的作用更加明显。

新增

针对具有其自身界面的小部件引入了 GtkNative 界面。添加了基于约束的布局管理器。GtkTextView 和其它文本小部件可以使用 Ctrl-Z 撤销操作。表情符号选择器小部件已公开。

接下来的计划

3.98 之后,计划进行更频繁的开发,以下是在 GTK 4 之前仍要集成的内容:

  • 键盘快捷键的事件控制器
  • 可移动的弹出窗口
  • 行回收列表和网格视图
  • 改进的可访问性基础
  • 动画 API

详情见发布公告:

https://blog.gtk.org/2020/02/13/gtk-3-98

另外,值得一提的是,GTK 现在有了一个新的官网:https://www.gtk.org

GTK 3.98 发布,Linux 图形界面应用主流开发工具

转自 https://www.oschina.net/news/113742/gtk-3-98-released