1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-25 15:00:45 -08:00

(mac_window) [USE_MAC_TOOLBAR]: Set toolbar_win_gravity.

(x_set_tool_bar_lines) [USE_MAC_TOOLBAR]: Set FRAME_EXTERNAL_TOOL_BAR.
This commit is contained in:
YAMAMOTO Mitsuharu 2007-06-14 08:38:52 +00:00
parent 66d8c4894d
commit cccda642c8

View file

@ -1682,6 +1682,25 @@ x_set_tool_bar_lines (f, value, oldval)
/* Make sure we redisplay all windows in this frame. */
++windows_or_buffers_changed;
#if USE_MAC_TOOLBAR
FRAME_TOOL_BAR_LINES (f) = 0;
if (nlines)
{
FRAME_EXTERNAL_TOOL_BAR (f) = 1;
if (FRAME_MAC_P (f) && !IsWindowToolbarVisible (FRAME_MAC_WINDOW (f)))
/* Make sure next redisplay shows the tool bar. */
XWINDOW (FRAME_SELECTED_WINDOW (f))->update_mode_line = Qt;
}
else
{
if (FRAME_EXTERNAL_TOOL_BAR (f))
free_frame_tool_bar (f);
FRAME_EXTERNAL_TOOL_BAR (f) = 0;
}
return;
#endif
delta = nlines - FRAME_TOOL_BAR_LINES (f);
/* Don't resize the tool-bar to more than we have room for. */
@ -2284,6 +2303,16 @@ mac_window (f)
XSetWindowBackground (FRAME_MAC_DISPLAY(f), FRAME_MAC_WINDOW (f),
FRAME_BACKGROUND_PIXEL (f));
#if USE_MAC_TOOLBAR
/* At the moment, the size of the tool bar is not yet known. We
record the gravity value of the newly created window and use it
to adjust the position of the window (especially for a negative
specification of its vertical position) when the tool bar is
first redisplayed. */
if (FRAME_EXTERNAL_TOOL_BAR (f))
f->output_data.mac->toolbar_win_gravity = f->win_gravity;
#endif
validate_x_resource_name ();
/* x_set_name normally ignores requests to set the name if the