summaryrefslogtreecommitdiff
path: root/packages/matchbox-applet-tasks
diff options
context:
space:
mode:
authorPaul Sokolovsky <pmiscml@gmail.com>2007-11-29 11:03:24 +0000
committerPaul Sokolovsky <pmiscml@gmail.com>2007-11-29 11:03:24 +0000
commit437af8f045847a573bd30b5cc4d82cb4faded0fd (patch)
tree06759fcbd5a42697e5b4f17a51d4d7d6be3948c0 /packages/matchbox-applet-tasks
parent52b15d1b1c6f46cf6ad78609d6c1238bdfa7ddc6 (diff)
matchbox-applet-inputmanager 0.6: Implement smart IM visibility protocol.
* One of the very noticeable pain points in matchbox' IM handling is high latency of IM popping up, which can take up to half-second with complex screen layouts. This is rooted in the fact that IM process is killed when IM window is hidden, and started again afterwards. * I wanted to address this on inputmanager level, transparently to actual IM implementation, by hiding/showing IM's window by the manager. Unfortunately, there appears to be no reliable method to figure out window IDs from process properties (for example, _MB_CLIENT_EXEC_MAP X property, maintained by matcbox, doesm't capture all apps started, in particular, it captures neither xkbd nor matchbox-keyboard, GPE's term app is not caught too, while either GPE apps are). Then, wanted to implement custom PropertyNotify-based protocol, though there would be left issue of distinguishing IMs which support this protocol and ones which don't. Finally, by random gerpping, I found that xkbd supports Unix signal based visibility protocol! By receiving SIGUSR1, it hides/shows its window. This seems like 100% win, as the default behavior for SIGUSR1 is process termination, so unsupporting clients will be just terminated as before.
Diffstat (limited to 'packages/matchbox-applet-tasks')
0 files changed, 0 insertions, 0 deletions