Subject: bug#18357: 24.3.93; Calendar not fully displayed

From: Stephen Berman <[email-masked]>
Date: Sat, 30 Aug 2014 21:35:19 +0200

On Sat, 30 Aug 2014 20:08:55 +0200 martin rudalics <[email-masked]> wrote:

>> Are you sure fit-window-to-buffer was called?  My reading of
>> calendar.el is that it isn't in this scenario.
>
> It is.

Martin is correct: when calendar-generate-window is called from
calendar-basic-setup, the selected window is the one containing the
*Calendar* buffer (this is because calendar-basic-setup previously
called `(pop-to-buffer calendar-buffer)').

>>> For Stephen's the estimate is for a non-selected window and `calendar'
>>> selects the window _after_ `fit-window-to-buffer' was executed.
>>
>> See above: are you sure?
>
> Yes.  Stephen please verify.

If I follow you (but I'm not sure I do), I think you are mistaken here:
when I step through the code, fit-window-to-buffer is called (in
calendar-generate-window, as noted above) with *Calendar* buffer window
already being the selected window.  In any case, the estimate for the
mode line height should be the same in my case as in yours, see below.

>>> If you have a better explanation, I'll be all ears.
>>
>> I don't see what I need to explain.  From my POV, what we see here is
>> all normal, as I already explained in my original response to Stephen.
>
> The problem is that `fit-window-to-buffer' shouldn't leave a line
> partially visible.  At least not in the case at hand where there's
> plenty of space.
>
>> Then you agree with me: there's no problem here, just normal reaction
>> to the fact that point entered a partially visible line.
>
> See above.  Stephen, does it fit if you make the font of a non-active
> mode line just as high as that of an active one?

In my recipe, both active and inactive mode lines have the same height:
face mode-line-inactive inherits the overline attribute from face
mode-line.

One interesting observation (which I do not understand), is that when I
execute the recipe and step through calendar-generate-window with
Edebug, after the call to fit-window-to-buffer, the height of the
Calendar window is 9, and the Calendar is fully displayed.  But when I
execute the recipe alone, the height is 8 and the display is partial.

Steve Berman