Subject: Re: bug#48674: Frames and minibuffer bug

From: Iris García <[email-masked]>
Date: Tue, 1 Jun 2021 13:29:25 +0200

Hi Alan,

No worries! I did follow the thread and tried your 3 patches, the last one
is indeed working as expected as far as I can tell.

Thank you very much for the quick response and fix.

Regards,

Iris.

On Mon, 31 May 2021 at 18:36, Alan Mackenzie <[email-masked]> wrote:

> Hello, Iris.
>
> Firstly, forgive me for not answering you sooner.  I didn't want want to
> waste any more of your time with any more unusable patches.  This was a
> tricky bug to solve, and indeed only the third patch attempt was
> satisfactory.
>
> I have now committed this third patch, and would ask you to remove the
> patch I sent you a few days ago, and update your Emacs to the current
> master version.
>
> I am closing the bug with this post, but if you find any more trouble
> with it, would you please let us know, so that we can open it again.
> Thanks!
>
> --
> Alan Mackenzie (Nuremberg, Germany).
>
>
> On Thu, May 27, 2021 at 19:56:03 +0000, Iris García wrote:
> > Hi Martin,
>
> > I forgot to include you in my last mail where I said:
>
> > I think I have found the new issue (it is related to the former one), my
> > > code this time was the following:
>
> > > (defvar box-cursor t)
> > >
> > > (defun test/set-cursor()
> > >   "Set cursor in all frames depending on the active state."
> > >   (interactive)
> > >   (dolist (frame (frame-list))
> > >     (with-selected-frame frame
> > >       (if box-cursor
> > >           (progn
> > >             (modify-frame-parameters
> > >              frame (list (cons 'cursor-type 'box)))
> > >             (modify-frame-parameters
> > >              frame (list (cons 'cursor-color "#00A9FE"))))
> > >         (progn
> > >           (modify-frame-parameters
> > >            frame (list (cons 'cursor-type 'hbar)))
> > >           (modify-frame-parameters
> > >            frame (list (cons 'cursor-color "green")))
> > >           )))))
> > >
> > > (defun test/enter-minibuffer()
> > >   (setq box-cursor nil)
> > >   (test/set-cursor))
> > >
> > > (defun test/exit-minibuffer()
> > >   (setq box-cursor t)
> > >   (test/set-cursor))
> > >
> > >
> > > (add-hook 'window-state-change-hook #'test/enter-minibuffer)
> > > (add-hook 'window-state-change-hook #'test/exit-minibuffer)
> > >
> > > (server-start)
> > > (make-frame
>
> > > The only difference is the add-hook, this time using
> > > window-state-change-hook instead of minibuffer-...
> > > This leads to the same bug.
>
> > > Regards,
>
> > > Iris.
>