GTK+ 2.20 发布

GTK+ 2.20 在保持与 GTK+ 2.18 源代码和二进制兼容性的同时,增加了新功能。GTK+ 2.20 中的新功能和改进的亮点包括

值得注意的更改

  • GtkSpinner,GtkCellRendererSpinner – 一个新的小部件,用于渲染“旋转器”动画以指示正在进行的活动。相应的单元格渲染器在树视图内部渲染相同的动画
  • GtkOffscreenWindow – 一个新的顶级容器小部件,用于管理子小部件的屏幕外渲染
  • GtkNotebook – 现在可以在选项卡未占用的空间中显示“操作小部件”。此功能也可以在 GtkBuilder 中通过“action-start”和“action-end”子类型使用。
  • 文件选择器 – GtkFileSystemModel 已被重新实现,以实现大幅加速和简化。
  • 键盘处理 – 内置输入法理解的组合序列已与 X.org 同步,并且额外的序列已合理化
  • 助记符下划线 – 现在可以选择在按下 Alt 键之前隐藏,可以使用 gtk-auto-mnemonics 设置启用此功能
  • 键盘加速器 – Super、Meta 和 Hyper 修饰符的工作更加可靠
  • GDK – 有一个新函数可以在多显示器设置中获取“主”显示器:gdk_screen_get_primary_monitory。
  • gdk-pixbuf – png 和 tiff 图像中的嵌入式颜色配置文件可以存储和检索。已添加对 QTIF 图像格式的支持
  • Win32 – 已禁用 XP 主题,因为它们无法工作
  • OS X – GTK+ 使用标准的 Mac 键盘快捷键(Cmd-X/Cmd-C 而不是 Ctrl-X/Ctrl-C 等)。多显示器设置的处理已得到极大改进
  • 自省支持 – 自省数据现在包含在 GTK+ 本身中。因此,添加了对 gobject-introspection 的依赖

GLib 2.24.0 发布

GLib 2.22 是一个稳定版本,在保持二进制和源代码兼容性的同时,在 GLib 2.20 的基础上进行了功能上的增量改进。主要更改包括

  • 对 g_thread_init() 的要求已略有放宽,它可以被多次调用,并且不必是第一次调用。GObject 现在链接到 GThread,并且当调用 g_type_init() 时会自动启用线程。GObject 中 boxed 类型的线程安全性问题已得到修复。-pthread 标志已添加到所有 gmodule .pc 文件中,因为如果程序没有使用线程支持进行编译,则通常不允许加载链接到 libpthread 的模块。
  • GType 现在有一个 G_DEFINE_INTERFACE 便利宏
  • GIO 支持 GIO 模块的延迟加载,并且有一个新的 gio-querymodule 实用程序与之配合使用。打包人员需要适应这一点。
  • GIO 使用 splice(2) 在文件描述符之间传输数据,而无需额外的副本。
  • 已添加 GVariant 变体数据类型。

GTK+ 2.18 稳定版本发布

GTK+ 2.18 在保持与 GTK+ 2.16 源代码和二进制兼容性的同时,增加了新功能。GTK+ 2.18 中的新功能和改进的亮点包括

GtkInfoBar
一个新的小部件,用于在内容窗格内显示临时的“消息区域”。API 类似于 GtkDialog,并支持不同消息类型(警告、错误等)的主题设置

GtkBuilder

  • 可以在构建器标记中指定刻度标记
  • 可以在构建器标记中添加 GtkAssistant 操作小部件

GtkLabel
GtkLabel 可以显示嵌入的 URL,很像 SexyUrlLabe

GtkEntry
GtkEntry 已被重构为遵循模型-视图模式,使用 GtkEntryBuffer 作为模型。此功能的一个预期用例是支持密码条目的“安全内存”

文件选择器

  • 默认情况下隐藏备份文件
  • GTK+ 记住文件列表的排序状态
  • 默认情况下显示文件大小
  • 可以使用 ::create-folders 属性禁用“创建文件夹”按钮

打印支持

  • GTK+ 支持针对 CUPS 服务器的身份验证
  • 已添加 PAPI 打印系统的后端
  • 文件和 lpr 后端可以每张纸打印多个页面
  • 文件后端可以生成 svg 文件
  • GTK+ 除了通常的页面范围外,还支持打印应用程序定义的“选择”
  • 打印对话框可以选择包含页面设置控件,从而在许多情况下避免了单独的页面设置对话框的需求

主题支持

  • 主题可以使用 ::invisible-char 样式属性设置在不可见条目中使用的项目符号字符
  • 文件选择器可以为 xdg 用户目录显示不同的图标。图标名称为 folder-documents、folder-download、folder-music、folder-pictures、folder-publicshare、folder-templates 和 folder-video
  • GtkInfoBar 根据消息类型使用符号颜色为其背景颜色设置主题。颜色名称为 info_fg_color、info_bg_color、warning_fg_color”、warning_bg_color 等。

GDK 更改
GDK 已被重写为使用“客户端窗口”。这意味着 GDK 维护自己的窗口层次结构,并且仅在必要或明确请求的情况下才使用 X 窗口。此更改的一些好处是

  • 减少闪烁
  • 能够对小部件进行转换和动画渲染
  • 更容易嵌入 GTK+ 小部件,例如嵌入到 Clutter 场景图中
  • 有关客户端窗口在实际操作中的一些简单示例,请参见 gdk-demo。有关移动到客户端窗口时可能出现的问题的信息,请参见文档

有关更多详细信息和已修复错误的列表,请参见
2.17.x 开发版本的公告:2.17.02.17.12.17.22.17.32.17.42.17.52.17.62.17.82.17.92.17.102.17.11

GLib 2.22 稳定版本发布

GLib 2.22 是一个稳定版本,在保持二进制和源代码兼容性的同时,在 GLib 2.20 的基础上进行了功能上的增量改进。

主要新功能包括

  • GArray、GPtrArray、GByteArray、GTree 和 GMappedFile 可以进行引用计数。
  • 可以强制 GLib 重新加载 XDG 用户目录映射。
  • GLib 主循环支持每个线程的默认上下文。
  • GIO 现在为 IP 地址和 UNIX 域套接字地址提供类型和方法。
  • GResolver 为解析主机名、反向查找 IP 地址和解析 SRV 记录提供异步和可取消的 API。
  • GIO 中已添加对网络 IO 的支持,包括用于网络连接和服务的低级套接字 API 和高级 API。
  • GIOStream 及其子类已获得对读写访问的支持。
  • GIO 支持驱动器的启动和停止,可以与外部硬盘盒、磁盘阵列、iSCSI 设备等一起使用。
  • GIO 支持在卸载和弹出操作期间的用户交互。
  • GIO 可以存储和检索每个文件的元数据。

有关更多详细信息和已修复错误的列表,请参见 2.21.x 开发版本的公告:2.21.02.21.12.21.22.21.32.21.42.21.52.21.6

GTK 2.17.6 不稳定版本发布

这是通往 GTK+ 2.18 的一个开发版本。

GTK+ 2.17.5 的更改概述

  • 客户端窗口
    • 多项优化,例如客户端跟踪可见窗口
    • 修复了在窗口上绘制 pixbuf 的剪切问题
    • 修复了渲染到大型子窗口的问题
  • 与翻译人员相关的更改
    • 已从多个字符串中删除标记

此版本修复了 12 个错误

请参阅原始公告了解更多信息和下载。

GTK+ 2.17.5 不稳定版本发布

这是通往 GTK+ 2.18 的一个开发版本。

GTK+ 2.17.4 的更改概述

  • 客户端窗口:win32 和 directfb 后端发生了一些修复
  • GSEAL:已为 GtkCellRenderer 和 GtkWidget 中密封的成员添加了访问器
  • 与发行商相关的更改:jpeg2000 pixbuf 加载器现在是可选的。传递 –with-libjasper 来配置以构建它

此版本修复了 13 个错误

请参阅原始公告了解更多信息和下载。

GTK+ 2.17.4 不稳定版本发布

这是通往 GTK+ 2.18 的一个开发版本。

GTK+ 2.17.3 的更改概述

  • GtkEntry 现在具有模型-视图分离,带有 GtkEntryBuffer。这的一个预期用例是支持密码条目的“安全内存”。
  • 打印对话框现在可以选择包含页面设置控件,从而避免了许多应用程序中需要单独的页面设置对话框。
  • 现在可以使用 ::track-visited-links 属性关闭 GtkLabel 中已访问链接的着色。
  • 现在可以使用 gdk_draw_pixbuf 中的剪切蒙版,这将在绘制 pixbuf 时在使用剪切蒙码的代码中引入视觉变化。但是,由于这从未起作用,因此不太可能发生。在渲染 pixbuf 时使用 gdk_pixbuf_render_threshold_alpha 蒙版的旧代码现在会在边缘产生截断的结果。
  • 修复了客户端窗口合并中的许多回归问题。

此版本修复了 4 个错误

请参阅原始公告了解更多信息和下载。