预检清单
- 我已阅读了此项目的 Contributing Guidelines。
- 我同意遵循此项目遵循的 Code of Conduct。
- 我在 issue tracker 中搜索了一个与我想提交的功能请求相匹配的功能请求,但没有成功。
问题描述
在运行 Wayland 时,Electron 应用程序默认使用 XWayland,而本地渲染被隐藏在一个功能标志后面。
如果 XWayland 没有运行,Electron 应用程序在启动时会直接崩溃。
建议的解决方案
如果 $DISPLAY
未设置,那么尝试使用 Xorg/XWayland 是没有意义的。与其直接崩溃,不如在 $WAYLAND_DISPLAY
设置的情况下回退到使用 wayland(即
if DISPLAY is set:
use Xorg
else if WAYLAND_DISPLAY is set:
use Wayland
else:
crash
)。
考虑过的替代方案
默认启用原生 Wayland 支持可能是最好的选择,但我肯定有原因将其设置为功能标志。然而,我没有找到任何关于这个问题的开放问题,所以也许有一个单独的工单来跟踪启用 wayland 的开箱即用选项,或者讨论阻止它的是什么。
其他信息
无
2条答案
按热度按时间zd287kbt1#
如果是这样会更好:
yacmzcpb2#
还有
XDG_SESSION_TYPE
,KDE 开发人员似乎更喜欢在他们的 Qt 应用程序的显示服务器决策逻辑中检查它。参见 1 , 2 。我没有在 GTK 中找到相关的代码,但我怀疑只有
WAYLAND_DISPLAY
被检查,而不是XDG_SESSION_TYPE
。我认为,只要作为 Wayland 客户端运行时没有 IME 框架支持,Wayland Ozone 平台就不应该被设置为默认值。除非 Electron 的开发人员不在乎东亚语言。
因此,#33662 应该阻止将 Wayland 设置为默认值。