类
GtkGraphicsOffload
自:4.14
描述 [src]
final class Gtk.GraphicsOffload : Gtk.Widget
implements Gtk.Accessible, Gtk.Buildable, Gtk.ConstraintTarget {
/* No available fields */
}
它允许将其子内容直接传递给合成器,从而绕过其子内容的 gsk 渲染的窗口小部件。
图形卸载是一种优化,可以减少开销和电池使用,这对视频内容最有帮助。它仅适用于某些平台和某些情况。GTK如果不能自动恢复正常渲染。
如果没有绘制在视频内容之上的控件,则图形卸载的效率最高。
如果你的主窗口小部件显示经常变化的内容(例如视频或 VM 显示),并且你以 dmabuf 纹理(见 GdkDmabufTextureBuilder
)的形式提供内容,则应考虑为其使用图形卸载,特别是它可能是全屏。
许多因素可能会阻止图形卸载
-
不受支持的平台。目前,图形卸载仅适用于使用 Wayland 的 Linux。
-
裁剪,例如导致视频内容不是矩形的圆角
-
不受支持的 dmabuf 格式(参见
gdk_display_get_dmabuf_formats()
) -
半透明视频内容(即使未使用,也有 alpha 通道的 内容)
-
复杂度高于平移和缩放的变换
-
过滤器,例如不透明度、灰度或类似内容
要调查与图形卸载相关的问题,GTK 提供调试标志以打印有关图形卸载和 dmabuf 使用的信息
GDK_DEBUG=offload
GDK_DEBUG=dmabuf
GTK检查器为图形卸载提供了可视化调试工具。
自 4.14 起可用
实例方法
从 GtkAccessible (19) 继承的方法
gtk_accessible_announce
请求用户屏幕阅读器播报给定的信息。
自:4.14
gtk_accessible_get_accessible_parent
检索嵌入了辅助功能对象的父辅助功能。
since: 4.10
gtk_accessible_get_accessible_role
检索嵌入了辅助功能对象的辅助功能角色。
gtk_accessible_get_at_context
检索给定嵌入了辅助功能对象的实现。
since: 4.10
gtk_accessible_get_bounds
查询此嵌入了辅助功能对象的坐标和尺寸。
since: 4.10
gtk_accessible_get_first_accessible_child
检索嵌入了辅助功能对象的第一个子辅助功能。
since: 4.10
gtk_accessible_get_next_accessible_sibling
检索嵌入了辅助功能对象的下一个兄弟辅助功能。
since: 4.10
gtk_accessible_get_platform_state
查询平台状态,比如焦点。
since: 4.10
gtk_accessible_reset_property
将辅助功能属性重置为其默认值。
gtk_accessible_reset_relation
将辅助功能关系重置为其默认值。
gtk_accessible_reset_state
将辅助功能状态重置为其默认值。
gtk_accessible_set_accessible_parent
设置嵌入了辅助功能对象的父级和兄弟对象。
since: 4.10
gtk_accessible_update_next_accessible_sibling
更新下一个辅助功能兄弟。
since: 4.10
gtk_accessible_update_property
更新辅助功能属性列表。
gtk_accessible_update_property_value
更新辅助功能属性数组。
gtk_accessible_update_relation
更新辅助功能关系列表。
gtk_accessible_update_relation_value
更新辅助功能关系数组。
gtk_accessible_update_state
更新辅助功能状态列表。
gtk_accessible_update_state_value
更新辅助功能状态数组。
从 GtkBuildable 继承的方法 (1)
属性
从 GtkWidget 继承的属性 (34)
Gtk.Widget:can-focus
小部件或其任何子级能否接受输入焦点。
Gtk.Widget:can-target
小部件能否接收指针事件。
Gtk.Widget:css-classes
应用于此小部件的 CSS 类列表。
Gtk.Widget:css-name
此小部件在 CSS 树中的名称。
Gtk.Widget:cursor
widget
使用的游标。
Gtk.Widget:focus-on-click
用鼠标单击小部件时,小部件是否应该获取焦点。
Gtk.Widget:focusable
此小部件本身能否接受输入 焦点。
Gtk.Widget:halign
如果小部件得到额外空间,如何分配水平空间。
Gtk.Widget:has-default
小部件是否是默认小部件。
Gtk.Widget:has-focus
小部件是否具有输入焦点。
Gtk.Widget:has-tooltip
启用或禁用 GtkWidget::query-tooltip
信号在 widget
上的发出。
Gtk.Widget:height-request
覆盖小部件的高度请求。
Gtk.Widget:hexpand
是否横向展开。
Gtk.Widget:hexpand-set
是否使用 hexpand
属性。
Gtk.Widget:layout-manager
要用于计算小部件的理想大小并分配其子级空间的 GtkLayoutManager
实例。
Gtk.Widget:margin-bottom
小部件底部的边距。
Gtk.Widget:margin-end
小部件水平方向上的末尾边距。
Gtk.Widget:margin-start
小部件水平方向上的起始边距。
Gtk.Widget:margin-top
小部件顶部的边距。
Gtk.Widget:名称
小组件的名称。
Gtk.Widget:不透明度
小组件请求的不透明度。
Gtk.Widget:溢出
如何处理小组件内容区域外部的内容。
Gtk.Widget:父级
此小组件的父级小组件。
Gtk.Widget:接收默认
当小组件被聚焦时,它是否会接收默认操作。
Gtk.Widget:根
包含此小组件的小组件树的 GtkRoot
小组件。
Gtk.Widget:比例系数
小组件的比例系数。
Gtk.Widget:敏感
小组件是否对此输入作出响应。
Gtk.Widget:工具提示标记
设置工具提示文本为指定的字符串,该字符串以 Pango 标记标记。
Gtk.Widget:工具提示文本
设置工具提示文本为指定的字符串。
Gtk.Widget:垂直对齐方式
如果小组件获得额外空间,如何分配垂直空间。
Gtk.Widget:垂直展开
是否垂直展开。
Gtk.Widget:设置垂直展开
是否使用 vexpand
属性。
Gtk.Widget:可见
小组件是否可见。
Gtk.Widget:请求宽度
对于小组件的宽度请求进行替换。
从 GtkAccessible (1) 继承的属性
信号
从 GtkWidget (13) 继承的信号
GtkWidget::destroy
信号表示小组件所有保持者的引用应释放其所保持的引用。
GtkWidget::direction-changed
当小组件的文本方向更改时发出。
GtkWidget::hide
在 widget
隐藏时发出。
GtkWidget::keynav-failed
如果键盘导航失败,则发出此信号。
GtkWidget::map
当 widget
即将映射时发出。
GtkWidget::mnemonic-activate
通过助记符激活小组件时发出。
GtkWidget::move-focus
当焦点移至此处时发出。
GtkWidget::query-tooltip
当小组件的工具提示即将显示时发出。
GtkWidget::realize
当 widget
与 GdkSurface
关联时发出。
GtkWidget::show
当 widget
显示时发出。
GtkWidget::state-flags-changed
当小组件状态更改时发出。
GtkWidget::unmap
当 widget
即将取消映射时发出。
GtkWidget::unrealize
与 widget
关联的 GdkSurface
被销毁时发出。
从 GObject (1) 继承的信号
GObject::notify
当对象的一个属性通过 g_object_set_property()、g_object_set() 等设置值时,会在对象上发出 notify 信号。