emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: input-pending-p after make-frame-visible


From: Aaron Jensen
Subject: Re: input-pending-p after make-frame-visible
Date: Wed, 20 Oct 2021 13:47:57 -0400

On Wed, Oct 20, 2021 at 1:40 PM Eli Zaretskii <eliz@gnu.org> wrote:
>
> > From: Aaron Jensen <aaronjensen@gmail.com>
> > Date: Wed, 20 Oct 2021 13:15:21 -0400
> > Cc: martin rudalics <rudalics@gmx.at>, Alan Third <alan@idiocy.org>,
> >       Gregory Heytings <gregory@heytings.org>, emacs-devel@gnu.org,
> >       YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
> >
> > On Wed, Oct 20, 2021 at 12:41 PM Eli Zaretskii <eliz@gnu.org> wrote:
> > >
> > > > Any concerns with installing the attached?
> > >
> > > Yes: I don't think we understand what it will do, apart of fixing this
> > > particular problem for you.
> >
> > The primary thing that it does is make input-pending-p respect
> > while-no-input-ignore-events, which is necessary to make
> > while-no-input fully respect while-no-input-ignore-events because it
> > uses input-pending-p.
>
> Yes.  But the change you propose is in readable_events, a function
> that has many more callers than just input-pending-p.  In particular,
> one of its callers is kbd_buffer_get_event, which is the API through
> which Emacs reads all of its input.  And now, under some
> circumstances, that API will ignore some events.  That's scary, at
> least for me.

AFAICT kbd_buffer_get_event calls `readable_events (0)' only, which
will disregard any of the code I changed or added. The
READABLE_EVENTS_FILTER_EVENTS must be set for it to come into play.
Only input-pending-p sets that flag AFAICT.

> > > I _might_ be okay with installing this on master, conditioned on some
> > > new variable, so that if some problem reveals itself, it would be easy
> > > to see if it's due to this change.
> >
> > Okay, let's see if we get any more clarity first and then I can
> > introduce a variable. What would you like to call it? And are you
> > referring to a new ifdef check?
>
> No, that must be a variable exposed to Lisp, so users could fiddle
> with it without rebuilding.

Ah, I believe that variable exists already and can affect everything I
changed other than the reliance on USE_TOOLKIT_SCROLL_BARS:
while-no-input-ignore-events

Aaron



reply via email to

[Prev in Thread] Current Thread [Next in Thread]