summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo Lu <luangruo@yahoo.com>2022-12-01 19:15:28 +0800
committerEli Zaretskii <eliz@gnu.org>2022-12-01 14:34:17 +0200
commit3b5b99ac919eff05374d74b4a052d33c34c56742 (patch)
tree188a870658a3f93b2d304e741e486e500638fbaf
parent4b2f5425d7af1a6f992ad8ce0a4452a2e778815a (diff)
downloademacs-3b5b99ac919eff05374d74b4a052d33c34c56742.tar.gz
* doc/lispref/frames.texi (Input Focus): Clarify for XInput 2 support.
-rw-r--r--doc/lispref/frames.texi12
1 files changed, 10 insertions, 2 deletions
diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi
index b3f1a29ae8f..a656964198b 100644
--- a/doc/lispref/frames.texi
+++ b/doc/lispref/frames.texi
@@ -2854,10 +2854,18 @@ The plural ``frames'' in the previous paragraph is deliberate: while
Emacs itself has only one selected frame, Emacs can have frames on
many different terminals (recall that a connection to a window system
counts as a terminal), and each terminal has its own idea of which
-frame has input focus. When you set the input focus to a frame, you
-set the focus for that frame's terminal, but frames on other terminals
+frame has input focus. Under the X Window System, where user input is
+organized into individual ``seats'' of input, each seat in turn can
+have its own specific input focus. When you set the input focus to a
+frame, you set the focus for that frame's terminal on the last seat
+which interacted with Emacs, but frames on other terminals and seats
may still remain focused.
+If the input focus is set before any user interaction has occurred on
+the specified terminal, then the X server picks a random seat
+(normally the one with the lowest number) and sets the input focus
+there.
+
Lisp programs can switch frames temporarily by calling the function
@code{select-frame}. This does not alter the window system's concept
of focus; rather, it escapes from the window manager's control until