From: Keith David Bershatsky <esq@lawlist.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: Why do idle timers trigger redisplay?
Date: Fri, 12 Feb 2016 08:38:37 -0800 [thread overview]
Message-ID: <m2vb5tlw8i.wl%esq@lawlist.com> (raw)
Thank you, Eli, for helping me to better understand why code run by timers is considered input that triggers redisplay (which in turn figures out what to do).
As always, your tutoring is greatly appreciated.
Keith
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
At Fri, 12 Feb 2016 10:25:51 +0200,
Eli Zaretskii wrote:
>
> > Date: Thu, 11 Feb 2016 16:14:44 -0800
> > From: Keith David Bershatsky <esq@lawlist.com>
> >
> > Question, please: Is it a necessary evil that the `timer-idle-list` must always trigger a redisplay?
>
> Emacs does another redisplay cycle each time there was some kind of
> input. The logic of this is that any input could potentially affect
> what is displayed (the job of figuring out what, if anything, does
> need to be redrawn is integral part of what redisplay does, and it
> might as well conclude that no redisplay is actually needed).
>
> Code run by timers is one such kind of input, since any code run by
> timers runs with the purpose of doing something with Emacs data:
> buffers, strings, windows, frames, etc.
>
> Other kinds of input include: keyboard input, input from subprocesses,
> mouse gestures, events that come from sources like D-bus and file
> notifications, etc. They all cause a cycle of redisplay.
next reply other threads:[~2016-02-12 16:38 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-12 16:38 Keith David Bershatsky [this message]
2016-02-14 13:51 ` Why do idle timers trigger redisplay? Stefan Monnier
-- strict thread matches above, loose matches on Subject: below --
2016-02-12 0:14 bug#22404: 25.1.50; Forcing `window-scroll-functions` to run Keith David Bershatsky
2016-02-12 8:25 ` Why do idle timers trigger redisplay? Eli Zaretskii
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=m2vb5tlw8i.wl%esq@lawlist.com \
--to=esq@lawlist.com \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
/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.