Subject: bug#13225: 24.3.50; Non-selected window has not mode-line-inactive face

From: Stefan Monnier <[email-masked]>
Date: Wed, 19 Dec 2012 13:30:54 -0500

>   selected_frame = frame;
>   /* If redisplay causes scrolling, it sets point in the window, so we need to
>      be careful with the selected-window's point handling.  */
>   select_window_1 (XFRAME (frame)->selected_window, 0);

> This selects the frame, and _also_ makes that frame's selected window
> be the global selected_window.  Therefore, when display_mode_lines
> comes to select a proper face for the mode line, it always finds the
> frame's selected window in selected_window, and thus always uses the
> face for selected windows.

Ah, yes, that makes sense.
Of course, when we drop frame-local variables this problem
will disappear.

Maybe we should live with the "selected_frame->selected_window !=
selected_window" problem until we get rid of frame-local vars.

        Stefan