如何确保GTK Broadway中点击事件被正确的组件接收
GTK应用通过Broadway运行时的焦点/交互异常问题
- 我使用GTK开发的一款应用,在多台设备上运行均正常。
- 但通过Broadway运行时,出现以下异常现象:
- 点击可点击组件(如text view、按钮)后,该组件会“保持”焦点
- 若组件支持悬停状态,点击后会一直显示hovered状态
- 点击其他组件时,响应点击的仍是最初被点击的组件
- 示例:选中包含文本的text view后,点击其左侧的按钮,text view内的光标会移至最左端;点击右侧按钮则移至最右端
- 唯一的重置方法是将指针移出窗口,此时点击任意组件都能被正确接收,但之后该组件仍会保持焦点
- 我目前的思路均不靠谱:
- 点击后重置焦点,但这并不合理,因为我经常需要焦点保持在原地,比如在text view中
- 模拟指针移出窗口的相关信号,但这更不合理,且我尚不清楚需要模拟的具体信号是什么
感谢您的帮助!
内容的提问来源于stack exchange,提问作者Oliver Cox
相关产品推荐
相关产品推荐

