【发布时间】:2011-04-01 11:52:38
【问题描述】:
我正在使用 xlib 编写一个简单的窗口管理器。该代码将客户端窗口重新设置为一个比客户端窗口稍大的窗口,称为框架窗口。我正在尝试实施单击以聚焦策略。当在框架窗口中按下鼠标按钮并且能够在按下按钮时提升框架窗口时,我会收到按钮按下事件。但是,在客户端窗口中按下鼠标按钮时,我没有收到任何事件。这个想法是捕获此事件并在客户端窗口中按下鼠标按钮时提升框架窗口。
【问题讨论】:
标签: x11 xlib window-managers
我正在使用 xlib 编写一个简单的窗口管理器。该代码将客户端窗口重新设置为一个比客户端窗口稍大的窗口,称为框架窗口。我正在尝试实施单击以聚焦策略。当在框架窗口中按下鼠标按钮并且能够在按下按钮时提升框架窗口时,我会收到按钮按下事件。但是,在客户端窗口中按下鼠标按钮时,我没有收到任何事件。这个想法是捕获此事件并在客户端窗口中按下鼠标按钮时提升框架窗口。
【问题讨论】:
标签: x11 xlib window-managers
您必须在子窗口上使用 XGrabButton()。你的下一个问题是当按钮被按下时,子窗口失去焦点;您可能希望保留自己对“焦点窗口”的想法,而不是在 detail=NotifyGrab 事件上更改它。以 metacity 源代码为例。
【讨论】: