【问题标题】:During XGrabKey(board), discover which window had been focused在 JXGrabKey(board) 期间,发现哪个窗口被聚焦
【发布时间】:2012-11-22 01:16:11
【问题描述】:
  1. 一个程序调用了 XGrabKey() 来创建一个热键。
  2. 用户按下该组合键(同时聚焦另一个窗口)。
  3. 程序接收控制以响应组合键执行某些操作。同时,该程序暂时被重点关注(因为 XGrabKey 的影响(见man XGrabKeyman XGrabKeyboard))。

我希望程序为最初聚焦的窗口创建一个合成 X 事件(按键或鼠标单击)。在某些情况下,这意味着我需要在向它发送事件之前聚焦该窗口(Firefox 在未聚焦时会忽略合成事件),这意味着我需要知道它是哪个窗口。我怎样才能知道它是哪个窗口?

【问题讨论】:

    标签: x11


    【解决方案1】:

    等待下一个FocusOut 事件,确认mode 设置为NotifyUngrab,使用XGetInputFocus() 获得焦点,然后发送您的合成事件。

    【讨论】:

    • 这似乎可行:除非我回到这个项目并发现它没有,否则我会将其设置为已接受。谢谢!
    猜你喜欢
    • 2012-06-01
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多