unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: rswgnu@gmail.com
Cc: rudalics@gmx.at, monnier@iro.umontreal.ca, 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 18:42:43 +0200	[thread overview]
Message-ID: <83374asjy4.fsf@gnu.org> (raw)
In-Reply-To: <CA+OMD9jfacXy752a8VVsr3zxgUxaC7SEyTM+byFpFC+v1bbzSQ@mail.gmail.com> (message from Robert Weiner on Sat, 16 Dec 2017 11:11:43 -0500)

> From: Robert Weiner <rsw@gnu.org>
> Date: Sat, 16 Dec 2017 11:11:43 -0500
> Cc: Eli Zaretskii <eliz@gnu.org>, martin rudalics <rudalics@gmx.at>, emacs-devel <emacs-devel@gnu.org>
> 
> So if I programmatically select-window in a frame that does not have or gain
> input focus, will most editing take place there?

That's a meaningless question, IMO, because "editing takes place"
means interactive editing, and that only happens _after_ your command
finishes its job, and Emacs returns to the main command loop.  And the
manual says "_most_ editing" for a reason.

> Maybe there is another as yet undefined idea in there of interactive
> window selection where input focus does shift.

I think you are interpreting the ELisp manual too literally.  It is
not meant to describe how the Emacs internals work, certainly not in
all cases.  The text which describes what it means for the window to
be "selected" is intended to make the _notion_ of the selected window
clear enough to continue describing the features which manipulate the
selected window, nothing more, nothing less.  You should not interpret
that text as an exhaustive and mathematically rigorous _definition_ of
what a selected window is, and even less when Emacs decides on its own
to select a different window.  The simplest example is the minibuffer
window.

> At the very least, the basic sequence of calls to select an arbitrary window
> for user editing should be explained both here and in the select-window function,
> since someone thinking about windows and buffers isn't likely to reference
> frame-related documentation even though input focus is a frame-related concept.

And they don't need to look up frame- and focus-related documentation,
as long as they only need to select a window.  What you needed is to
select another frame, select another window on that frame, and make
sure that frame is at the top of the z-order.  That has very little to
do with selecting a window, and much more to do with frames and input
focus -- and those topics are described in the docs under their proper
subjects.

I could support some gentle notes in the ELisp manual's node
"Selecting Windows", where it already mentions frames.  But doc
strings are inappropriate for references to almost unrelated subjects,
nor for general descriptions of complex topics.



  reply	other threads:[~2017-12-16 16:42 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 [this message]
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
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=83374asjy4.fsf@gnu.org \
    --to=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).