为什么 glxgears 没有出现在 xlsclients 中?

为什么 glxgears 没有出现在 xlsclients 中?
$ glxgears -display :1
No protocol specified
Error: couldn't open display :1

$ glxgears -display :0
288 frames in 5.0 seconds = 57.491 FPS
292 frames in 5.0 seconds = 58.308 FPS
...

glxgears在运行时,我在xlsclients不同的终端窗口中运行:

$ xlsclients -display :0
alan-laptop  gnome-shell
alan-laptop  gsd-xsettings
alan-laptop  gsd-clipboard
alan-laptop  gsd-power
alan-laptop  gsd-color
alan-laptop  ibus-x11
alan-laptop  gsd-keyboard
alan-laptop  gsd-wacom
alan-laptop  gsd-media-keys
alan-laptop  firefox

系统:Fedora 29,使用 Wayland 的 gnome-shell。

$ rpm -q gnome-shell
gnome-shell-3.30.2-1.fc29.x86_64
$ rpm -q xorg-x11-server-Xwayland
xorg-x11-server-Xwayland-1.20.4-1.fc29.x86_64
$ rpm -q --whatprovides $(which xlsclients)
xorg-x11-utils-7.5-29.fc29.x86_64
$ rpm -q --whatprovides $(which glxgears)
glx-utils-8.4.0-1.fc29.x86_64

答案1

xlsclients是一个简单的应用程序,它列出了顶部窗口(即作为根窗口的子窗口或具有 WM_STATE 属性的窗口)上设置的WM_CLIENT_MACHINE和属性。” WM_COMMAND--莫斯维

根据 ICCCM,属性必须由客户端设置。即如果glxgears不设置它们,它将不会显示在xlsclients.

WM_CLIENT_MACHINE并且WM_COMMAND被 ICCCM 标记为过时。而且,看起来他们只是必需的作为会话管理的一部分,不一定所有 X 客户端都支持。

这表明xlsclients应该被认为是过时的:-)。

相关内容