Emacs code has deep assumption of mini window having only one
line.
This is not entirely correct. As long as other windows on the
same
frame fit, a minibuffer window can get quite large (see
'max-mini-window-height'). But in some parts of the window and
redisplay code we assume that minibuffer windows behave like
pseudo
windows (those used for displaying the tool bar or the menu bar
on
some platforms) or internal windows - they can't have dividers,
a mode
or a header line because these are simply not counted when
displaying
the window or calculating its height. That's why you observe
that
After I turn on the header line, things become messy.
For example, 'window_wants_header_line' in window.c cannot deal
with
that.
I'll try
collecting all the hard-coded logic and see if this route
indeed
works.
Good idea. Note that I'm currently changing a number of things
related to minibuffer windows which, among others, should allow
them
to appear anywhere on a frame or even not being displayed at
all. So
I do not think that displaying the mode line of a frame within
the
minibuffer window is a good idea in the first place. Even
presently,
people who use standalone minibuffer frames might not be very
enthralled by the idea that they have to look on their
minibuffer
frame for consulting the mode line contents.
I think that if we want frame-local modelines which, IIUC should
display the mode line contents of the frame's selected window,
it
might be a better idea to add a new kind of pseudo window on top
or
bottom of a frame for that.
martin