我该如何使用SDL2支持Wayland上的GNOME?

3
GNOME选择在Wayland下不支持服务器端装饰。这没关系,但我正在使用SDL制作一款游戏,希望得到一流的Linux支持,包括在最大桌面环境(包括GNOME)下原生运行Wayland(使用SDL_VIDEODRIVER = wayland)。目前,当我使用SDL_VIDEODRIVER = wayland运行我的游戏时,没有绘制任何装饰。我该如何与系统的其余部分集成?非GTK/Qt应用程序的情况怎样?

你是从最新的HG检出中运行SDL,还是依赖于你的发行版二进制文件? - genpfault
1个回答

1
SDL2的开发人员正在努力解决这个问题:https://github.com/libsdl-org/SDL/pull/4068。因此,虽然现在没有简单的解决方案,但好消息是,您可能真的不需要做任何事情,只需等待几个月,然后使用最新的SDL2即可。
总体而言,非Qt/GTK的情况如下:
GNOME目前不愿将装饰代码引入到GNOME的合成器Mutter中,主要原因是技术原因:GNOME的装饰是基于GTK+的,但是Mutter现在显然没有任何GTK+代码,因此集成起来似乎并不像人们希望的那么容易。

所以非GTK/Qt应用程序有三个选择:1. 他们可以手动实现, 或者2. 他们可以使用像libdecoration这样的东西,因为SDL2显然会这样做,或者3. 纯粹将GTK+作为窗口和装饰的依赖项引入,例如Electron/Chromium使用它。至少在中期内,GNOME似乎不会修复这个问题,所以我所知道的只有这些选择。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接