GTK+ 3.0 发布

GTK+ 3.0 是 GTK+ 的一个主要新版本,包含了太多更改,无法在此处一一列出。

主要亮点包括:

  • 整个使用 Cairo 绘图。GDK 不再封装过时的 X11 绘图 API;我们已经彻底摆脱了它,现在完全依赖 Cairo 来满足我们所有的绘图需求。这也使我们能够删除其他几个以 X11 为中心的概念,例如 GC、颜色映射和像素映射。
  • 现代输入设备处理。GDK 中的输入设备处理长期以来一直是一个被忽视的领域。这种情况已经改变;在 3.0 版本中,GTK+ 进入了现代 XI2 世界,完全支持多个指针、键盘和其他小工具。
  • 新的主题 API,它使用熟悉的 CSS 语法进行主题配置,以及其他改进,例如动画状态转换。
  • 更灵活的几何管理,支持高度与宽度,适用于小部件和单元格渲染器。
  • GDK 的多后端支持。在 GTK+ 2.x 中,您必须重新编译应用程序才能使其与不同的 GDK 后端一起工作。在 GTK+ 3 中,可以将多个 GDK 后端构建到单个库中,并在运行时选择。
  • 简易的应用程序支持。通过将 D-Bus 支持集成到 GIO 中,我们终于可以添加一个 GtkApplication 类,该类处理编写应用程序的许多平台集成方面,例如跟踪打开的窗口、确保唯一性、导出操作等。
  • 当然,还有一些新的小部件,例如开关和应用程序选择器。

GTK+ 是数百名贡献者的工作成果,人数太多,无法在此处一一列出。但我想花点时间感谢一些做出重大贡献的人:

  • Carlos Garnacho (Lanedo),感谢他在 XI2 支持和新主题系统方面的工作
  • Benjamin Otte (Red Hat),感谢他在 GDK 和 Cairo 绘图方面的工作
  • Tristan Van Berkom (Openismus),感谢他在几何管理方面的工作
  • Colin Walters (Red Hat),感谢他在 GtkApplication 方面的工作
  • Ryan Lortie (Codethink),感谢他在 dconf、GSettings 和 GtkApplication 方面的工作
  • Javier Jardón,感谢他不懈的代码、构建和文档清理工作

GLib 2.22 稳定版本发布

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

主要新功能包括:

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

有关更多详细信息和已修复错误的列表,请参阅 2.21.x 开发版本的公告:2.21.0, 2.21.1, 2.21.2, 2.21.3, 2.21.4, 2.21.52.21.6

GTK+ 2.17.5 不稳定版本发布

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

GTK+ 2.17.4 的更改概述

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

此版本修复了 13 个 bug!

有关更多信息和下载,请参阅原始公告

GTK+ 2.17.4 不稳定版本发布

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

GTK+ 2.17.3 的更改概述

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

此版本修复了 4 个错误!

有关更多信息和下载,请参阅原始公告

GTK+ 2.17.3 不稳定版本

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

GTK+ 2.17.2 的更改概述

  • GtkFileChooser:现在默认显示大小列
  • GtkStatusIcon:有一个 title 属性,供 AT 读取状态图标时使用
  • GtkInfoBar
    • 默认主题现在包含信息栏的颜色定义
    • ::use-tooltip-style 样式属性已被删除
  • GtkMountOperation 现在支持在卸载操作期间进行交互。
  • 客户端窗口分支已合并;GDK 现在在客户端维护自己的窗口层次结构,并且仅在不可避免时才使用 X 窗口。此更改的一些好处是
    • 减少闪烁
    • 能够对小部件进行变换和动画渲染
    • 更轻松地嵌入 GTK+ 小部件,例如,嵌入到 Clutter 场景图中

    这是 GDK 工作方式的根本性改变,因此请注意回归问题。

此版本修复了 12 个错误!

有关更多信息和下载,请参阅原始公告

GTK+ 2.17.2 不稳定版本

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

GTK+ 2.17.1 的更改概述

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

    • 通过省略长名称并防止垂直大小更改来改进路径栏
    • 现在默认隐藏备份文件
    • GTK+ 现在会记住文件选择器的排序状态
  • GtkButtonBox:现在实现了 GtkOrientable 接口。
  • 打印:GTK+ 现在支持打印应用程序定义的“选择”,除了通常的页面范围之外。
  • 与主题作者相关的更改

    • 新的 GtkInfoBar 小部件根据消息类型使用符号颜色来设置其背景颜色。默认情况下,它使用与工具提示相同的背景颜色。可以通过样式属性关闭此功能。
    • GTK+ 文件选择器(以及 nautilus 和 GIO 图标信息的其他用户)现在可以为 xdg 用户目录显示不同的图标。图标名称为 folder-documents、folder-download、folder-music、folder-pictures、folder-publicshare、folder-templates、folder-videos,并自动回退到标准文件夹图标。

此版本修复了 27 个错误!

有关更多信息和下载,请参阅原始公告