本周 GTK+ – 26

在过去的一周中,GTK+ 的 master 分支有 40 次提交,增加了 1551 行代码,删除了 1998 行代码。

计划和状态
  • Matthias Clasen 发布了第一个 GTK+ 3.89 开发快照
  • GTK+ 路线图可在 wiki 上找到。
重要变更

在 master 分支上

  • Andrew Chadwick 提交了一系列针对 Windows 上图形平板电脑支持的修复
  • Benjamin Otte 删除了 gtk_cairo_should_draw_window() 工具函数;该函数是为了 3.x API 的兼容性而引入的,但现在不再需要了
  • Benjamin 还删除了 gdk_window_process_updates()gdk_window_process_all_updates();GDK 早已切换到帧时钟;此外,只有顶层 GdkWindow 可以用作渲染表面
  • Lapo Calamandrei 使用最近一轮 CSS 改进更新了 High Contrast 和 Adwaita 主题,以改进进度条和渐变效果
修复的错误
  • 774114 即使仅更改窗口内容,也会重新绘制窗口阴影
  • 774695 GtkProgressbar 需要 full 和 empty 类
  • 774265 wintab 设备没有倾斜功能
  • 774699 [wintab,潜在的段错误]:列表迭代回归导致在查找期间忽略奇数索引的设备,例如,不显示压力
  • 775038 构建:将 wayland 添加到 GSK 的依赖项中
  • 774917 [wayland] 子图层需要相对于其父图层放置
  • 774893 启动 GtkInspector 时,应用程序字体大小缩放被限制为 1.00
  • 774939 GtkLabelAccessible:在设置父项之前初始化链接
  • 774760 inspector:确保控制器是 GtkGesture
  • 774686 GtkMenu 不会取消引用它创建的所有 GtkCheckMenuItem
  • 774743 GtkNotebook 不会取消引用它创建的所有 GtkBuiltinIcon
  • 774790 GtkTextHandle 不会取消引用它引用的所有 GtkAdjustment
参与其中

有兴趣参与 GTK+ 的开发吗?查看新手的错误列表,并加入 irc.gnome.org 上的 IRC 频道 #gtk+。

本周 GTK+ – 25

在过去的一周中,GTK+ 的 master 分支有 167 次提交,增加了 8048 行代码,删除了 6858 行代码。

计划和状态
  • GTK+ 路线图可在 wiki 上找到。
重要变更

在 master 分支上

  • GtkFileChooser:local-only 属性的默认值现在为 FALSE,这意味着文件选择对话框将自动显示非本地资源。
  • Benjamin Otte 引入了 GtkSnapshot API,它用作小部件的 GskRenderNode 构建器,旨在取代即时模式的 gtk_render_* 函数系列。
  • Benjamin 还更改了 GtkDrawingArea API,它现在使用显式回调函数,而不是通用的 GtkWidget::draw 信号。
  • 最后,Benjamin 在 GTK+ 中实现了对 3D CSS 转换的支持。
  • 读取 GdkWindow 内容到 GdkPixbuf 的 GDK API 已被删除,因为它们的行为和结果取决于平台。
  • Matthias Clasen 使用最新的 API 添加更新了 GTK+ 3.x → 4.x 移植指南和 API 参考。
  • Simon Steinbeiss 更新了 GtkProgressbar 的 CSS 样式,以便在进度设置为 0.0 或 1.0 时分别添加 emptyfull 类。
修复的错误
  • 774475 wayland:如果父图层不是根图层,gtk+ 会阻止使用子图层
  • 774476 没有输出的图层会重置缩放比例
  • 774634 GtkPlacesView 不会取消引用它引用的所有 GDaemonFileEnumerator
  • 773007 GtkFilechooser 为不匹配的扩展名提供完成
  • 774609 对外部绘图微调按钮演示的小修复
  • 773587 [补丁] recent-manager:添加对列表大小的限制
  • 774352 GtkAppChooserWidget 不会取消引用它引用的所有 GAppInfo
  • 774347 构建失败:未知类型名称 GdkColor
  • 773601 当 RANDR 不可用时,检测到的显示大小为 0x0 像素
  • 774614 打印文档中错误的 #include
参与其中

有兴趣参与 GTK+ 的开发吗?查看新手的错误列表,并加入 irc.gnome.org 上的 IRC 频道 #gtk+。

本周 GTK+ – 24

在过去的一周中,GTK+ 的 master 分支有 46 次提交,增加了 1541 行代码,删除了 3471 行代码。

计划和状态
  • Emmanuele Bassi 在 wiki 上概述了 GSK 的工作项列表
  • GTK+ 路线图可在 wiki 上找到。
重要变更

在 master 分支上

  • Matthias Clasen 致力于删除自定义的 -gtk-gradient CSS 函数,并确保标准的 radial-gradientlinear-gradient 函数按照 CSS 规范的定义工作
  • Lapo Calamandrei 将 Adwaita 和 GTK+ 提供的其他主题移植到标准的 CSS 渐变定义
  • Benjamin Otte 在 GSK 中引入了 GskTexture API,以缓存来自 GTK+ 的图标资产并避免多次纹理上传
  • Timm Bäder 删除了 GtkTreeViewGtkToolItemGroup 使用的自定义样式属性,并将其替换为标准的 CSS 属性
  • Timm 还从 GtkComboBox 中删除了 appears-as-list 自定义样式属性

在 3.22 稳定分支上

  • Matthias Clasen 发布了 GTK+ 3.22.3
  • Chun-wei Fan 合并了 Windows 的 HiDPI 显示支持
修复的错误
  • 774097 GtkPrintOperation 不应截断作业名称
  • 772075 在 Wayland 下,GTK+ 比在 X11 下使用更多的 CPU
  • 773916 GtkComposeTable 缓存损坏:连续两次使用相同的 ~/.XCompose 无效
  • 773979 GdkGLContext 不会链接 finalize 处理程序
  • 774046 GtkSpinButton 并非总是取消引用 priv->{up,down}_button
  • 774066 GtkHeaderBar 不会取消引用它创建的所有 GtkBox 和 GtkSeparator
  • 774185 GtkPlacesSidebar 取消引用自身的次数与引用的次数不相等
参与其中

有兴趣参与 GTK+ 的开发吗?查看新手的错误列表,并加入 irc.gnome.org 上的 IRC 频道 #gtk+。

本周 GTK+ 进展 – 23

在过去的一周里,GTK+ 的主分支有 146 次提交,增加了 10020 行代码,删除了 16435 行代码。

计划和状态
  • Benjamin Otte 致力于澄清 GTK+ 和 gsk 中使用的各种坐标系之间的关系。
  • Benjamin 还在整个代码树中进行更改,为使所有小部件无窗口化做准备。
  • Emmanule Bassi 正在为 CSS 渲染开发更细粒度的 gsk 渲染节点。
  • GTK+ 路线图可在 wiki 上找到。
重要变更
  • Benjamin Otte 向 GTK+ 检查器添加了一个帧记录器。有关更多信息,请参阅此帖子
  • Timm Bäder 和 Benjamin 将更多小部件转换为使用 gsk 渲染节点的间接渲染。
  • Matthias Clasen 使 GtkTextAttributes 结构私有化,从而可以进一步清理并删除已弃用的 GdkColor 类型。
  • Benjamin 移除了 visuals。
修复的错误
  • 773885 按下 escape 键时弹出 GtkPopover
  • 773299确保 GTK+-4.x 在 Windows 上构建并工作
  • 773274[Wayland] 在 gdk_wayland_window_attach_image() 下崩溃
  • 768081为 GDK-Win32 启用 HiDPI 支持
  • 773857 – X11:添加对 gdk_window_fullscreen_on_monitor 的支持
  • 773799GtkLevelBar 不会在离散模式下更新块
  • 773954gtkstylecontext:阐明 getter 的内存分配行为
  • 773903gtk.h 和 gtktextiter.h 包含私有的 gtktextattributes.h
参与其中

有兴趣参与 GTK+ 的开发吗?查看新手的错误列表,并加入 irc.gnome.org 上的 IRC 频道 #gtk+。