all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: martin rudalics <rudalics@gmx.at>
To: Drew Adams <drew.adams@oracle.com>, 28978@debbugs.gnu.org
Subject: bug#28978: 26.0; Regression: separate, dedicated `*Completions*' frame no longer has parameter `minibuffer'
Date: Thu, 26 Oct 2017 09:57:51 +0200	[thread overview]
Message-ID: <59F1957F.80900@gmx.at> (raw)
In-Reply-To: <22c73180-e9a6-416f-9e28-da98d07908f8@default>

 >> Since the 'minibuffer' parameter of a frame cannot be changed (from nil
 >> to some non-nil value and vice-versa at least) after its creation,
 >
 > Is that something new?

Hardly.  The text in the Elisp manual

`minibuffer'
      Whether this frame has its own minibuffer.  The value `t' means
      yes, `nil' means no, `only' means this frame is just a minibuffer.
      If the value is a minibuffer window (in some other frame), the
      frame uses that minibuffer.

      This frame parameter takes effect when the frame is created, and
      can not be changed afterwards.

is the same for Emacs 23 as for Emacs 26.  It's not correct because we
allow to set the parameter from one minibuffer window to another but I
didn't change the doc yet simply because I never read the corresponding
code attentively enough.

 > I don't call `make-frame' to create frame `*Completions*'.
 > It is created when ` 1on1-display-*Completions*-frame' is
 > called, and that is done by `special-display-function'.
 > I showed the code for that in my previous message.

The 'minibuffer' parameter must be set up specially by whoever calls
‘make-frame’.  If this is not done, you can't change it afterwards.  The
default value of ‘special-display-function’ is
‘special-display-popup-frame’ and I don't see the latter setting up the
'minibuffer' parameter anywhere.

 > I don't ever set parameter `minibuffer' explicitly for
 > *Completions*.  I'm guessing that it has always gotten
 > set automatically when frame input was redirected from
 > frame *Completions* to the standalone minibuffer.
 >
 > (It is redirected to `completion-reference-buffer' if
 > the minibuffer is not active (and if `c-r-b' is not
 > frame *Completions*)).

Maybe you mean "focus redirection" here which is something different
from setting up the 'minibuffer' parameter.

 > See previous message for that code.  The complete code is
 > here: https://www.emacswiki.org/emacs/download/oneonone.el
 >
 > As I say, the code works in all Emacs releases.  It
 > does not work in this Emacs 26 prerelease (only).
 >
 > Here is (some of) the code (from icicles-mcmd.el) that
 > relies on the parameter having being set:

I understand that you want that parameter to have a non-nil value there.
So make sure that it is.  For this you will have to debug your earlier
version to see how they set up the 'miniuffer' parameter and compare
them with the current version to see how it fails to do that.

martin






  reply	other threads:[~2017-10-26  7:57 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-24 20:20 bug#28978: 26.0; Regression: separate, dedicated `*Completions*' frame no longer has parameter `minibuffer' Drew Adams
2017-10-25  7:45 ` martin rudalics
2017-10-25 14:47   ` Drew Adams
2017-10-26  7:57     ` martin rudalics [this message]
2017-10-26 14:01       ` Drew Adams
2017-10-27  8:25         ` martin rudalics
2017-10-27 14:19           ` Drew Adams
2017-10-28  8:45             ` martin rudalics
2017-10-28 19:15               ` Drew Adams
2017-10-29 11:18                 ` martin rudalics
2017-10-29 15:59                   ` Drew Adams
2017-10-29 18:13                     ` martin rudalics
2017-10-29 23:56                       ` Drew Adams
2017-10-30  8:24                         ` martin rudalics
2017-10-30 14:32                           ` Drew Adams
2017-10-30 19:00                             ` martin rudalics
2017-10-30 19:16                               ` Drew Adams

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

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

  git send-email \
    --in-reply-to=59F1957F.80900@gmx.at \
    --to=rudalics@gmx.at \
    --cc=28978@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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.