help-gnu-emacs
[Top][All Lists]
Advanced

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

Re: How can I force updating mini window's header line when mode line is


From: Amos Bird
Subject: Re: How can I force updating mini window's header line when mode line is updated?
Date: Thu, 26 Apr 2018 01:12:38 +0800
User-agent: mu4e 1.0-alpha3; emacs 27.0.50


Thanks for the kind help. I've made some progress and I'll report it on emacs-devel :)

Eli Zaretskii <eliz@gnu.org> writes:

From: Amos Bird <amosbird@gmail.com>
Date: Wed, 25 Apr 2018 20:41:09 +0800

Dear community,

I'm trying to setup one mode line per frame. Here is what I've
done.

1. turn on the head line of mini window by tweaking
window_wants_header_line.
2. change shrink_mini_window so that it shrinks mini window to two
lines instead of one.
3. (setq-default header-line-format mode-line-format)

It's great to hear someone hacks the display code to add features. However, these issues are best discussed on emacs-devel, not here.
Who knows, we could even ask you to contribute the code ;-)

However the header line doesn't get updated at all. It seems
xdisp.c only provides ways to update mode line, and I've reached the limit of my emacs-fu. How can I achieve this without hacking
tons of the display logic? Many thanks!

I think you need to modify window_wants_header_line, it currently has hard-wired knowledge that a minibuffer window will never display a
header line.

Once that is done, the feature should work, because the same triggers
that update the mode line also update the header line, so this:

It seems xdisp.c only provides ways to update mode line

is inaccurate. See the part of redisplay_window immediately following the 'done' label: it calls display_mode_lines, which displays both the
mode line and the header line.


--
Amos Bird
amosbird@gmail.com



reply via email to

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