2021.07.30

Q:x11, x.org, xlib的关系?参考what is the difference between X11 and Xlib?

A:前两者的关系如上图。xlib(也叫libx11)是X11 client(用户程序)使用X11 protocol的库。 所以为了避免xlib库不同(不同语言的binding,静态链接)的问题,应该在X11 server上搞事情

要是一个程序在启动时就读了屏幕的长宽和位置,那全屏就没办法可变。

大概还是需要虚拟显示设备。

但是一般需求也不要时常变换,重启应用是可接受的!


xlib全屏的例子:

XLIB How to make a window go fullscreen?

大概就是_NET_WM_STATE改为_NET_WM_STATE_FULLSCREEN

在X11 server端插桩捕获这个行为。