Subject: Re: bug#16691: 24.3.50; emacs_backtrace.txt

From: Eli Zaretskii <[email-masked]>
Date: Mon, 10 Feb 2014 20:44:06 +0200

> Date: Mon, 10 Feb 2014 19:35:25 +0100
> From: martin rudalics <[email-masked]>
> CC: [email-masked], [email-masked], [email-masked]
> 
>  > If you meant row->y, then it is used in many different places,
>  > including the display back-end,
> 
> Where is the display back-end?  If it's update_window

It is _called_ by update_window.  In update_text_area, you will see
the calls to rif->write_glyphs, which eventually calls the back-end
(xterm.c, w32term.c, term.c, etc.).

> we there set
> 
>        yb = window_text_bottom_y (w);
> 
> and then
> 
> 	  mode_line_row->y = yb;
> 
> so any prior notion of that row's y is lost.  And for the header line we
> do
> 
> 	  header_line_row->y = 0;
> 
> But this still doesn't use row->y.  Where is the backend that uses
> row->y to determine where on the screen to draw that row?

Are you talking only about the mode line and the header line?  If so,
then yes, those rows don't need the y coordinate, as they "know" where
it is in advance.

I thought you were asking a more general question about row->x and
row->y.