• YAMAMOTO Mitsuharu's avatar
    Make line<->pixel_y conversion macros aware of native menu/tool bars. · 4b00d3b1
    YAMAMOTO Mitsuharu authored
    They are placed above the internal border.  This supersedes special
    treatment of native tool bars in the display code.
    
    This fixes wrong display position of native menu bars and bogus mouse
    highlighting of native tool bars, both of which can be found when
    internal border width is large.  Also it fixes wrong flashed part on
    visible bell with native menu bars.
    
    * frame.h (FRAME_TOP_MARGIN_HEIGHT): New macro.
    (FRAME_LINE_TO_PIXEL_Y, FRAME_PIXEL_Y_TO_LINE): Take account of pseudo
    windows above internal border.
    
    * window.h (WINDOW_MENU_BAR_P, WINDOW_TOOL_BAR_P): New macros.
    (WINDOW_TOP_EDGE_Y, WINDOW_BOTTOM_EDGE_Y): Take account of pseudo
    windows above internal border.
    
    * xdisp.c (get_glyph_string_clip_rects, init_glyph_string): Don't treat
    tool bar windows specially.
    
    * xfns.c (x_set_tool_bar_lines): Take account of menu bar height.
    
    * xterm.c (x_after_update_window_line): Don't treat tool bar windows
    specially.
    (XTflash): Take account of menu bar height.
    
    * w32term.c (x_after_update_window_line): Don't treat tool bar windows
    specially.
    4b00d3b1
ChangeLog 735 KB