keybase / keybase/keybase-issues

Linux Keybase hangs when it can't sent notifications (was "steal focus")

Open
#3,438 20 comments 0 reactions 0 assignees View on GitHub
Dominant language
No language data
Stars
899
Forks
40
PR merge metrics
No merged PRs in 30d

Description

I'm running the Linux Keybase GUI under FVWM and the XFCE panel on Fedora 29.

Any time there's an incoming chat message and I don't have the cursor over the Keybase window, the program hangs completely for probably a minute or two. It ignores all user events and won't repaint its window. Eventually it recovers completely... until the next message comes in. This happens regardless of whether theKeybase window is in front, obscured, or not open at all.

I suspect that the real triggering condition is not "mouse is not over the window", but "window does not have the keyboard focus and the program can't grab it". I have FVWM configured for focus-follows-mouse, because click-to-focus is morally wrong. Therefore Keybase usually won't have the focus if the mouse isn't over the window. Even more unusually, I've tried to configure FVWM to prevent all programs from stealing focus. Assuming that's working right, which I haven't really tested, Keybase will *not* get the keyboard if it tries to take it.

I get the feeling that it's trying, and reacting poorly to failure.

I'd like to convince you that chat apps shouldn't try to grab the keyboard in the first place. It amounts to a "randomly send a password to a friend every once in a while" feature. However, since every chat app seems to do it, I'm afraid I'll fail to convince you.

... but I'd at least like it if the program didn't actually hang if it can't steal the focus. And maybe you could at least have the *option* of not trying?

My FVWM config file is attached: [config.txt](https://github.com/keybase/keybase-issues/files/3311800/config.txt)

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the hang with the Linux Keybase GUI under FVWM and the XFCE panel on Fedora 29, using the attached FVWM config and triggering an incoming chat message without keyboard focus. Trace the notification and focus-handling path; done means messages no longer freeze the application when focus cannot be grabbed, with the reported setup covered by a regression check.

Written by the indexing model from the issue text.

Assessment

Tech stack
linux
Domain
desktop, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.