之前 Emacs 使用 WebKitGTK 提供 xwidget-webkit,但由于新版 WebKitGTK 不再支持 Emacs 依赖的 off-screen 渲染,导致现有的 xwidget-webkit 失效甚至崩溃。WebKitGTK 从 2.42 以后停止了对 off-screen 窗口的支持,这正是 Emacs 需要的渲染方式。
为了解决这个限制,我们可以尝试用 WPE WebKit 继续为 Emacs 的网页视图提供支持。WPE 支持 off-screen 渲染并具备硬件加速视频播放等特性,更适合嵌入式和现代图形后端场景。基于这个思路,我做了一次粗略尝试,成功让 WPE 在 Emacs 中运行,相关实现见我的 PR:
目前实现还有很多需要完善的地方,但已经证明了用 WPE 继续支持 Emacs 的 xwidget-webkit 是可行的。
5 个赞
emacs 最近的webkit集成大调整好像是 @oldosfan 做的, 可以听听他的意见
yibie
3
macOS 下无需调整,天然支持 Xwidget。