我正在写一个简单的窗口管理器作为一个业余项目,我选择了python和xlib来实现它。我想有一些奇特的效果,比如窗口从左到右滑动,根据我所能挖掘到的,最好的方法是使用复合扩展将窗口渲染到屏幕外缓冲区,然后操纵这些缓冲区并按照我的意愿绘制它们。
然而,由于python xlib文档有些缺乏,我找不到这样做的方法,也没有找到任何将python xlib与复合扩展一起使用的示例。我在哪里可以找到这些信息,有人在composite中使用过python-xlib吗?
我想我可以一直切换到xcb,它似乎支持python的composite,但我不想重写整个东西,也不想在缺乏python文档的情况下找到一个不同的API。
总而言之,我的问题是:
欢迎任何其他建议和建议。
是的,python xlib中支持Composite扩展。看看 extension client implementation 你可能需要 composite_redirect_window 和 composite_name_window_pixmap
composite_redirect_window
composite_name_window_pixmap