unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Robert Goldman <rpgoldman@sift.info>
Cc: Bastien <bastienguerry@googlemail.com>, emacs-devel@gnu.org
Subject: Re: save-frame-excursion?
Date: Fri, 24 Jul 2009 15:24:33 -0400	[thread overview]
Message-ID: <jwv63dh6g7d.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <4A692A6A.4080601@sift.info> (Robert Goldman's message of "Thu, 23 Jul 2009 22:28:42 -0500")

>>>> Do you know when/why it lost the focus?
>>> The org frame lost focus because focus shifted to the frame that
>>> contained the *Calendar* buffer.
>> OK, so the next question is "why/when did focus shift to the *Calendar"
>> buffer" (and just to be more clear by "why/when" I mean at the level of
>> the Elisp code, which trail of calls causes it).
> The calendar buffer was configured to be sticky in a particular frame,
> so that when emacs wanted to show that calendar buffer, it showed it in
> the different frame.

That still doesn't explain the shift of focus.

> I don't entirely understand how the stickiness happens -- configuration
> of the emacs calendar is far beyond me.

Doesn't matter.  If the code doesn't explicitly ask for a change in
focus, then there's no reason (other than to work around a bug
somewhere, probably) why we need to reset the focus via
select-frame-set-input-focus when unwinding.

That's why we need to know the detail.

> Admittedly it's unlikely (at least now) to get into a state where you
> will change the frame focus, but whenever you /do/ change the frame
> focus, wouldn't you want it restored?

Emacs almost never changes frame focus explicitly (for the good reason
that it's mighty hard to do it reliably for all possible WMs).


        Stefan




  reply	other threads:[~2009-07-24 19:24 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-23 17:30 save-frame-excursion? Bastien
2009-07-23 20:56 ` save-frame-excursion? Stefan Monnier
2009-07-24  2:24   ` save-frame-excursion? Robert Goldman
2009-07-24  3:16     ` save-frame-excursion? Stefan Monnier
2009-07-24  3:28       ` save-frame-excursion? Robert Goldman
2009-07-24 19:24         ` Stefan Monnier [this message]
2009-07-24 21:18           ` save-frame-excursion? Robert Goldman
2009-07-25 14:39             ` save-frame-excursion? Stefan Monnier
2009-07-25 11:42           ` save-frame-excursion? Bastien
2009-07-25 14:42             ` save-frame-excursion? Stefan Monnier
2009-07-25 22:11               ` save-frame-excursion? Bastien
2009-07-26 14:26                 ` save-frame-excursion? Stefan Monnier
2009-07-26 17:00                   ` save-frame-excursion? Drew Adams
2009-07-27  3:42                   ` save-frame-excursion? Bastien
2009-07-27  4:50                     ` save-frame-excursion? Stephen J. Turnbull
2009-07-27  4:58                       ` save-frame-excursion? Bastien
2009-07-27 17:49                     ` save-frame-excursion? Stefan Monnier
2009-07-27 21:05                       ` save-frame-excursion? Bastien
2009-07-28  2:25                         ` save-frame-excursion? Stefan Monnier

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=jwv63dh6g7d.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=bastienguerry@googlemail.com \
    --cc=emacs-devel@gnu.org \
    --cc=rpgoldman@sift.info \
    /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).