unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Drew Adams <drew.adams@oracle.com>
Cc: 11939@debbugs.gnu.org
Subject: bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes'
Date: Tue, 14 Aug 2012 11:10:38 +0200	[thread overview]
Message-ID: <502A160E.5040601@gmx.at> (raw)
In-Reply-To: <EAADE3D8CAE148C99C152006C76F1A9E@us.oracle.com>

 > It turns out that the problem was 3-fold.  That is, there were three places in
 > the code of `1on1-fit-minibuffer-frame' that caused the problem: each was
 > _alone_ capable of causing the problem, so all three needed to be fixed.  Here
 > they are.
 >
 > 1. This was one of the guards of the body of `1on1-fit-minibuffer-frame':
 >
 > (save-selected-window
 >   (select-window (minibuffer-window))
 >   (one-window-p nil 'selected-frame))

Any reason why you don't use

(one-window-p nil (window-frame (minibuffer-window)))

here?

 > The call to `save-selected-window' somehow gave the focus to the *Completions*
 > frame.  The solution was to change `save-selected-window' to
 > `save-window-excursion' here.  I don't know why, but I'm hoping you will.

You mean that `save-select-window' can redirect focus and not direct it
back to where it was before calling it?  If this is the case, please
check whether it happens in Emacs 23 as well and file a bug report
(without referencing `1on1-fit-minibuffer-frame', if possible).

 > 2. This was called near the beginning of the `1on1-fit-minibuffer-frame' body:
 >
 > (let* ((frame (save-selected-window
 >                 (select-window (minibuffer-window))
 >                 (selected-frame)))

Do you mean

(window-frame (minibuffer-window))

here?

 > The fix here too was to use `save-window-excursion' instead of
 > `save-selected-window'.

Same as above.

 > 3. At the end of the `1on1-fit-minibuffer-frame' body there is this call:
 >
 > (1on1-set-minibuffer-frame-top/bottom)
 >
 > The code for that function is this:
 >
 > (defun 1on1-set-minibuffer-frame-top/bottom ()
 >   (when 1on1-minibuffer-frame
 >     (condition-case nil
 >         (if (fboundp 'redisplay)
 > 	    (redisplay t)
 > 	  (force-mode-line-update t))
 >       (error nil)) ; Ignore errors from, e.g., killed buffers.
 >     (modify-frame-parameters
 >      1on1-minibuffer-frame
 >      `((top ,@ (or 1on1-minibuffer-frame-top/bottom
 >                    (- (* 2 (frame-char-height
 >                              1on1-minibuffer-frame)))))))))
 >
 > Here the problem was the call to `redisplay'.  I changed (foundp 'redisplay) to
 > just nil to fix things - `force-mode-line-update' works without changing the
 > focus.
 >
 > `redisplay' is defined in C code.  I do not know why it causes a problem here
 > (why would redisplay change the input focus?), and I don't know what the proper
 > solution might be, except to just use `force-mode-line-update' as I was already
 > doing in older Emacs versions (which do not have `redisplay').
 >
 > Do you have an idea about this?  Does any of this make sense to you?

No.  Can't you distill a simple test case?  `redisplay' shouldn't care
about frame focus either.

 > Each of these fixes is needed for `1on1-fit-minibuffer-frame'.  Reverting any of
 > them brings back the problem (giving *Completions* the focus).  I do not
 > understand any of these fixes (why they work), and I am certainly not claiming
 > anything about them or about the problem, which I do not understand.  I am only
 > saying that together these changes fix the problem I encountered.
 >
 > But if you can explain things I will be glad to learn.

I can't explain any of these.  In the past, I tried to make most window
functions work on any window/frame to work independently from the
selected window.  Earlier, selecting a window must have been a very
simple procedure.  Nowadays, this incurs so many side-effects in the
window/frame/display area that you should try to avoid `select-window'
wherever possible.

martin





  reply	other threads:[~2012-08-14  9:10 UTC|newest]

Thread overview: 147+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-13 18:00 bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus when it calls `list-processes' Drew Adams
2012-07-14 13:27 ` martin rudalics
2012-07-14 14:51   ` Drew Adams
2012-07-14 16:19     ` martin rudalics
2012-07-14 17:12       ` Drew Adams
2012-07-15 12:59         ` martin rudalics
2012-07-15 15:06           ` Drew Adams
2012-07-15 16:08             ` martin rudalics
2012-07-15 16:43               ` Drew Adams
2012-07-16  9:12                 ` martin rudalics
2012-07-16 14:23                   ` Drew Adams
2012-07-16 16:07                     ` martin rudalics
2012-07-16 16:36                       ` Drew Adams
2012-07-16 17:04                         ` martin rudalics
2012-07-16 18:22                           ` Drew Adams
2012-07-16 23:26                             ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus when itcalls `list-processes' Drew Adams
2012-07-17  9:50                               ` martin rudalics
2012-07-17 15:21                                 ` Drew Adams
2012-07-18 16:16                                   ` martin rudalics
2012-07-19  3:56                                     ` Drew Adams
2012-07-19 10:42                                       ` martin rudalics
2012-07-19 17:45                                         ` Drew Adams
2012-07-21 11:02                                           ` martin rudalics
2012-07-21 18:13                                             ` Drew Adams
2012-07-22  8:49                                               ` martin rudalics
     [not found]                                                 ` <ED063FDC2B7C4B2A9CB2BDADAE2F00A2@us.orac! ! le.com>
2012-07-22 16:55                                                 ` Drew Adams
2012-07-23  9:34                                                   ` martin rudalics
2012-07-23 16:12                                                     ` Drew Adams
2012-07-17  9:50                             ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus when it calls `list-processes' martin rudalics
2012-07-17 14:22                               ` Drew Adams
2012-07-18 16:16                                 ` martin rudalics
2012-07-18 17:23                                   ` Drew Adams
2012-07-19 10:41                                     ` martin rudalics
2012-07-19 17:43                                       ` Drew Adams
2012-07-21 11:01                                         ` martin rudalics
2012-07-21 18:13                                           ` Drew Adams
2012-07-19  3:54                                   ` Drew Adams
2012-07-19 10:42                                     ` martin rudalics
2012-07-19 17:43                                       ` Drew Adams
2012-07-21 11:01                                         ` martin rudalics
2012-07-21 18:13                                           ` Drew Adams
2012-07-22  8:48                                             ` martin rudalics
2012-07-22 16:46                                               ` Drew Adams
2012-07-22 17:06                                                 ` Eli Zaretskii
     [not found]                                                   ` <8C! 6D5530BE0@[87.69.210.75! ]>
     [not found]                                                   ` <83! 4n@[87.69.210.75]>
2012-07-22 19:42                                                   ` Drew Adams
2012-07-22 20:49                                                     ` Eli Zaretskii
2012-07-22 21:01                                                       ` Drew Adams
2012-07-22 21:07                                                         ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus whenit " Drew Adams
2012-07-22 21:21                                                           ` Daniel Colascione
2012-07-23  1:13                                                             ` Drew Adams
2012-07-22 21:16                                                         ` Drew Adams
2012-07-23 17:33                                                           ` Eli Zaretskii
2012-07-23 18:00                                                             ` Drew Adams
2012-07-23 16:04                                                         ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus when it " Eli Zaretskii
2012-07-23 16:28                                                           ` Drew Adams
2012-07-23 17:58                                                             ` Eli Zaretskii
2012-07-23 18:29                                                               ` Drew Adams
2012-07-23 19:30                                                                 ` Eli Zaretskii
2012-07-24 12:47                                                                   ` martin rudalics
2012-07-25 15:42                                                                     ` Drew Adams
2012-07-25 16:17                                                                       ` Eli Zaretskii
2012-07-25 16:42                                                                         ` Drew Adams
2012-07-25 17:28                                                                           ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus whenit " Drew Adams
2012-07-26  9:44                                                                             ` martin rudalics
     [not found]                                                                               ` <32A934E820BA4853B84229C32F7145A1@us.oracle! ! .com>
2012-07-26 13:51                                                                               ` Drew Adams
2012-07-26 16:05                                                                                 ` martin rudalics
2012-07-26 16:21                                                                                   ` Drew Adams
2012-07-26 16:52                                                                                     ` martin rudalics
     [not found]                                                                                       ` <2F76545DBD0C4F199A60F4! B750709112@us.oracle.com>
     [not found]                                                                                         ` <FBD01B85621E4CB5AF89A744D72DA935@us.oracle.! ! com>
2012-07-26 17:08                                                                                       ` Drew Adams
2012-07-26 17:41                                                                                         ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenit " Drew Adams
2012-07-27  6:33                                                                                           ` martin rudalics
2012-07-28 15:29                                                                                             ` Drew Adams
2012-07-29 13:56                                                                                               ` martin rudalics
2012-07-28 15:31                                                                                             ` Drew Adams
2012-07-29 13:56                                                                                               ` martin rudalics
2012-07-27  6:33                                                                                         ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus whenit " martin rudalics
2012-07-28 15:29                                                                                           ` Drew Adams
2012-07-29 13:55                                                                                             ` martin rudalics
2012-07-29 16:26                                                                                               ` Drew Adams
2012-07-29 17:08                                                                                                 ` martin rudalics
     [not found]                                                                                                   ` <F930898D9C4E4DC295235DD8!A4B7BFFE@us.oracle.com>
     [not found]                                                                                                   ` <F930898D9C4E4DC295235DD8! A4B7BFFE@us.oracle.com>
     [not found]                                                                                                     ` <F1206E98AF6C40E8BBDD20894A9BC0D2@us.oracle.co! ! m>
2012-07-29 18:01                                                                                                   ` Drew Adams
2012-07-30  9:13                                                                                                     ` martin rudalics
2012-08-01 16:34                                                                                                       ` Drew Adams
     [not found]                                                                                                   ` <F930898D9C4E4DC295235DD8! A4B7BFFE@us.oracle.co m>
2012-07-29 19:26                                                                                                     ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenit " Drew Adams
2012-07-30  9:13                                                                                                       ` martin rudalics
2012-08-01 16:34                                                                                                         ` Drew Adams
     [not found]                                                                                                           ` <501BAAB0.1020!807@gmx! .at>
2012-08-03 10:40                                                                                                           ` martin rudalics
2012-08-03 16:46                                                                                                             ` Drew Adams
2012-08-03 17:00                                                                                                               ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls `list-processes' Drew Adams
2012-08-04 13:45                                                                                                                 ` martin rudalics
     [not found]                                                                                                                   ` <7E4F337C7F6A4B8281!ABE6C82 A8CA70E@us.oracle.com>
     [not found]                                                                                                                   ` <7E4F337C7F6A4B8281! ABE6C82A8CA70E@us.oracle.com>
     [not found]                                                                                                                     ` <B7E92FDE8CFC4F798AEEB7CBFEFA933D@us.orac! ! le.com>
2012-08-05 22:32                                                                                                                   ` Drew Adams
2012-08-05 23:10                                                                                                                     ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls`list-processes' Drew Adams
2012-08-06 15:29                                                                                                                       ` martin rudalics
2012-08-06 20:56                                                                                                                         ` Drew Adams
     [not found]                                                                                                                           ` < 5022103E.6060502@gmx.at>
2012-08-07  8:58                                                                                                                           ` martin rudalics
2012-08-08  7:07                                                                                                                           ` martin rudalics
2012-08-08 16:19                                                                                                                             ` Drew Adams
2012-08-08 16:32                                                                                                                               ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibufferfocuswhenitcalls`list-processes' Drew Adams
2012-08-08 16:38                                                                                                                                 ` bug#11939: 24.1; `save-buffers-kill-emacs' losesminibufferfocuswhenitcalls`list-processes' Drew Adams
2012-08-09  8:45                                                                                                                                   ` martin rudalics
2012-08-10 17:47                                                                                                                                     ` Drew Adams
2012-08-11  9:31                                                                                                                                       ` martin rudalics
2012-08-11 16:58                                                                                                                                         ` Drew Adams
     [not found]                                                                                                                                           ` <502!785DF.1040200@gmx.at>
     [not found]                                                                                                                                             ` <A5E13547EC48444192A20752F3F4FAF9@us.oracle.com!>
     [not found]                                                                                                                                               ` <5028! A8FD.60705@gmx .at>
     [not found]                                                                                                                                           ` <502! 785DF.1040200@gmx.at>
     [not found]                                                                                                                                             ` <A5E13547EC48444192A20752F3F4FAF9@us.oracle.com! >
2012-08-12 10:30                                                                                                                                           ` martin rudalics
2012-08-12 15:03                                                                                                                                             ` Drew Adams
2012-08-13  7:13                                                                                                                                               ` martin rudalics
2012-08-13 13:51                                                                                                                                                 ` Drew Adams
2012-08-13 16:23                                                                                                                                                   ` martin rudalics
2012-08-13 22:20                                                                                                                                                   ` bug#11939: 24.1; `save-buffers-kill-emacs'losesminibufferfocuswhenitcalls`list-processes' Drew Adams
2012-08-14  9:10                                                                                                                                                     ` martin rudalics [this message]
2012-08-14 14:36                                                                                                                                                       ` Drew Adams
2012-08-14 16:04                                                                                                                                                         ` martin rudalics
2012-08-14 17:39                                                                                                                                                           ` Drew Adams
     [not found]                                                                                                                                                             ` <502B7AC2.70! 004@gmx. at>
2012-08-15 10:32                                                                                                                                                             ` martin rudalics
2012-08-26  4:11                                                                                                                                                               ` Drew Adams
2012-08-26  4:31                                                                                                                                                                 ` Drew Adams
2012-08-09  8:45                                                                                                                                 ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibufferfocuswhenitcalls`list-processes' martin rudalics
2012-08-09 21:53                                                                                                                                   ` Drew Adams
2012-08-10  9:33                                                                                                                                     ` martin rudalics
2012-08-09  8:44                                                                                                                               ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls`list-processes' martin rudalics
2012-08-09 21:53                                                                                                                                 ` Drew Adams
2012-08-06 15:29                                                                                                                     ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenitcalls `list-processes' martin rudalics
2012-08-06 20:55                                                                                                                       ` Drew Adams
2012-08-07  8:58                                                                                                                         ` martin rudalics
2012-08-07 13:39                                                                                                                           ` Drew Adams
2012-08-04 13:44                                                                                                               ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focuswhenit calls `list-processes' martin rudalics
2012-08-06  1:11                                                                                                                 ` Drew Adams
2012-08-06 15:29                                                                                                                   ` martin rudalics
2012-08-06 21:05                                                                                                                     ` Drew Adams
     [not found]                                                                                                                       ` <50! 20D8B6.5000701@gmx.at>
     [not found]                                                                                                                         ` <254E2E4A521F4250A06349AD44BEEE63@us.oracle.co! ! m>
2012-08-07  8:58                                                                                                                       ` martin rudalics
2012-08-07 13:59                                                                                                                         ` Drew Adams
2012-08-08  7:07                                                                                                                           ` martin rudalics
     [not found]                                                                                                                             ` <E0132113E8CD4470A74D81C04D74585C@us.orac! ! le.com>
2012-08-08 16:18                                                                                                                             ` Drew Adams
2012-08-09  8:44                                                                                                                               ` martin rudalics
2012-08-09 21:54                                                                                                                                 ` Drew Adams
2012-07-26 15:48                                                                           ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus when it " martin rudalics
2012-07-26 15:52                                                                             ` Drew Adams
2012-07-23  9:34                                                 ` martin rudalics
2012-07-23 16:12                                                   ` Drew Adams
2012-07-24 12:46                                                     ` martin rudalics
2012-07-25 15:02                                                       ` Drew Adams
2012-07-26  9:43                                                         ` martin rudalics
2012-07-16 14:52                   ` Drew Adams
2012-09-05 14:30 ` martin rudalics
2012-09-05 14:35   ` Drew Adams
2012-10-03 16:18     ` bug#11939: 24.1; `save-buffers-kill-emacs' loses minibuffer focus when itcalls `list-processes' Drew Adams
2012-10-05  7:04       ` martin rudalics

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=502A160E.5040601@gmx.at \
    --to=rudalics@gmx.at \
    --cc=11939@debbugs.gnu.org \
    --cc=drew.adams@oracle.com \
    /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).