unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Robert Weiner <rsw@gnu.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: martin rudalics <rudalics@gmx.at>,
	Stefan Monnier <monnier@iro.umontreal.ca>,
	emacs-devel <emacs-devel@gnu.org>
Subject: Re: Suggestion: Add discussion of input focus handling to select-window; add select-frame-window
Date: Sat, 16 Dec 2017 13:16:48 -0500	[thread overview]
Message-ID: <CA+OMD9gs+rWSWAz5TS_rnM6DCNeZHNg2LMePV+rRi-DrFgg79A@mail.gmail.com> (raw)
In-Reply-To: <83wp1mr3cp.fsf@gnu.org>

[-- Attachment #1: Type: text/plain, Size: 2401 bytes --]

On Sat, Dec 16, 2017 at 12:26 PM, Eli Zaretskii <eliz@gnu.org> wrote:

>
> There's a node "Input Focus" in the ELisp manual.  What is missing
> from it to cover what you want?
>
> In my scheme of Emacs-ware, there's no such thing as "redirecting
> input to a window".


​When the user selects another window within the selected frame
or a select-window is done on the selected frame, user input
(typing) and programmatic input (insert) shifts from the prior
window to the new window.  No frame change has occurred yet
where user input like self-inserting characters goes is different.
How can this not be part of your Emacs model?

​​
>   Input is redirected to a frame, and then t
> ​​
> ​​
> he
> ​​
>
> ​​
> selected window on that frame is usually
> ​​
> the one that reacts to user
> ​​
> input (I say "usually' because some input
> ​​
> , like mouse gestures, can
> ​​
> operate on n on-selected windows).
>
​​
​
​Some concept other than input focus is sending those inputs to the
selected window (maybe we limit discussion to keyboard inputs for now).
Maybe it could have a name and be described.
​

> ​​
>
> ​​
> > I read through parts of the Elisp manual.  The section on Windows does
> not explain
> ​​
> > how to redirect user input ot an arbitrary window.  The top-level on
> Frames does
> ​​
> > not either.  It is not until I get to the section on Input Focus that I
> get any
> ​​
> > helpful information on this and that section refers only to frames, not
> selected
> ​​
> > windows.
> ​​
>
> ​​
> Then perhaps the only stuff that's missing is some appropriately
> ​​
> worded index entries that lead to "Input Focus", and maybe also short
> ​​
> notes with cross-references elsewhere in the manual.

​​
Frame-level input focus is insufficient to describe the window to which
keyboard input goes in all cases.  It requires a combination of set input
focus and select-window, right?  Plus, if we want to see any changes in
buffer-to-window mappings during the course of a function, we must invoke
redisplay.  It is the description of the interrelations of these things that
is not described in a single place anywhere, especially with code samples,
making it difficult for programmers to see what must be done.

Bob

[-- Attachment #2: Type: text/html, Size: 6591 bytes --]

  reply	other threads:[~2017-12-16 18:16 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-12-12 15:39 Suggestion: Add discussion of input focus handling to select-window; add select-frame-window Robert Weiner
2017-12-12 18:13 ` Robert Weiner
2017-12-12 18:49   ` Robert Weiner
2017-12-12 20:40   ` Stefan Monnier
2017-12-12 21:29     ` Robert Weiner
2017-12-12 21:57       ` Stefan Monnier
2017-12-12 20:37 ` Stefan Monnier
2017-12-12 21:19   ` Robert Weiner
2017-12-13  8:49 ` martin rudalics
2017-12-13 13:37   ` Stefan Monnier
2017-12-13 14:37     ` Robert Weiner
2017-12-13 19:29       ` martin rudalics
2017-12-13 20:30         ` Eli Zaretskii
2017-12-13 22:10           ` Stefan Monnier
2017-12-14  3:33             ` Eli Zaretskii
2017-12-14 15:01               ` Robert Weiner
2017-12-14 20:09                 ` Eli Zaretskii
2017-12-14 23:43                   ` Robert Weiner
2017-12-15  1:42                     ` Stefan Monnier
2017-12-16 16:11                       ` Robert Weiner
2017-12-16 16:42                         ` Eli Zaretskii
2017-12-16 17:23                           ` Robert Weiner
2017-12-16 16:27                       ` Robert Weiner
2017-12-16 16:21                 ` Robert Weiner
2017-12-16 16:29                   ` Eli Zaretskii
2017-12-16 17:04                     ` Robert Weiner
2017-12-16 17:15                       ` Robert Weiner
2017-12-16 17:26                       ` Eli Zaretskii
2017-12-16 18:16                         ` Robert Weiner [this message]
2017-12-16 18:41                           ` Eli Zaretskii
2017-12-16 19:18                             ` Robert Weiner
2017-12-16 19:56                               ` Eli Zaretskii
2017-12-16 20:52                                 ` Robert Weiner
2017-12-22 10:19                                   ` Eli Zaretskii
2017-12-16 22:44                                 ` Robert Weiner
2017-12-13 14:51   ` Robert Weiner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+OMD9gs+rWSWAz5TS_rnM6DCNeZHNg2LMePV+rRi-DrFgg79A@mail.gmail.com \
    --to=rsw@gnu.org \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    --cc=rswgnu@gmail.com \
    --cc=rudalics@gmx.at \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).