X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/f315b69922db769f3358e15616aa76c965be8a89..59db4308b546cbe32d3bfe6e23dbc1899d511975:/src/frame.h diff --git a/src/frame.h b/src/frame.h index 1aa88042ad..8ee37dfd69 100644 --- a/src/frame.h +++ b/src/frame.h @@ -1,5 +1,5 @@ /* Define frame-object for GNU Emacs. - Copyright (C) 1993-1994, 1999-2014 Free Software Foundation, Inc. + Copyright (C) 1993-1994, 1999-2015 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -332,9 +332,12 @@ struct frame frame. */ bool_bf can_x_set_window_size : 1; - /* True means run_window_configuration_change_hook can be processed - for this frame. */ - bool_bf can_run_window_configuration_change_hook : 1; + /* Set to true after this frame was made by `make-frame'. */ + bool_bf after_make_frame : 1; + + /* True means tool bar has been redisplayed at least once in current + session. */ + bool_bf tool_bar_redisplayed_once : 1; /* Bitfield area ends here. */ @@ -388,15 +391,11 @@ struct frame int left_pos, top_pos; /* Total width of this frame (including fringes, vertical scroll bar - and internal border widths) and total height (including menu bar, - tool bar, horizontal scroll bar and internal border widths) in - pixels. */ + and internal border widths) and total height (including internal + menu and tool bars, horizontal scroll bar and internal border + widths) in pixels. */ int pixel_width, pixel_height; - /* These many pixels are the difference between the outer window (i.e. the - left and top of the window manager decoration) and FRAME_X_WINDOW. */ - int x_pixels_diff, y_pixels_diff; - /* This is the gravity value for the specified window position. */ int win_gravity; @@ -1095,11 +1094,10 @@ SET_FRAME_VISIBLE (struct frame *f, int v) (f)->iconified = (eassert (0 <= (i) && (i) <= 1), (i)) extern Lisp_Object selected_frame; -extern Lisp_Object Qframep, Qframe_live_p; -extern Lisp_Object Qtty, Qtty_type; -extern Lisp_Object Qtty_color_mode; -extern Lisp_Object Qterminal; -extern Lisp_Object Qnoelisp; + +#if ! (defined USE_GTK || defined HAVE_NS) +extern int frame_default_tool_bar_height; +#endif extern struct frame *decode_window_system_frame (Lisp_Object); extern struct frame *decode_live_frame (Lisp_Object); @@ -1121,6 +1119,8 @@ extern void frame_make_pointer_visible (struct frame *); extern Lisp_Object delete_frame (Lisp_Object, Lisp_Object); extern bool frame_inhibit_resize (struct frame *, bool, Lisp_Object); extern void adjust_frame_size (struct frame *, int, int, int, bool, Lisp_Object); +extern void frame_size_history_add (struct frame *f, Lisp_Object fun_symbol, + int width, int height, Lisp_Object rest); extern Lisp_Object Vframe_list; @@ -1344,51 +1344,6 @@ extern Lisp_Object Vframe_list; Frame Parameters ***********************************************************************/ -extern Lisp_Object Qauto_raise, Qauto_lower; -extern Lisp_Object Qborder_color, Qborder_width; -extern Lisp_Object Qbuffer_predicate; -extern Lisp_Object Qcursor_color, Qcursor_type; -extern Lisp_Object Qfont; -extern Lisp_Object Qicon, Qicon_name, Qicon_type, Qicon_left, Qicon_top; -extern Lisp_Object Qinternal_border_width; -extern Lisp_Object Qright_divider_width, Qbottom_divider_width; -extern Lisp_Object Qtooltip; -extern Lisp_Object Qmenu_bar_lines, Qtool_bar_lines, Qtool_bar_position; -extern Lisp_Object Qmouse_color; -extern Lisp_Object Qname, Qtitle; -extern Lisp_Object Qparent_id; -extern Lisp_Object Qunsplittable, Qvisibility; -extern Lisp_Object Qscroll_bar_width, Qvertical_scroll_bars; -extern Lisp_Object Qscroll_bar_height, Qhorizontal_scroll_bars; -extern Lisp_Object Qscroll_bar_foreground, Qscroll_bar_background; -extern Lisp_Object Qscreen_gamma; -extern Lisp_Object Qline_spacing; -extern Lisp_Object Qwait_for_wm; -extern Lisp_Object Qfullscreen; -extern Lisp_Object Qfullwidth, Qfullheight, Qfullboth, Qmaximized; -extern Lisp_Object Qsticky; -extern Lisp_Object Qfont_backend; -extern Lisp_Object Qalpha; - -extern Lisp_Object Qleft_fringe, Qright_fringe; -extern Lisp_Object Qheight, Qwidth; -extern Lisp_Object Qminibuffer, Qmodeline; -extern Lisp_Object Qx, Qw32, Qpc, Qns; -extern Lisp_Object Qvisible; -extern Lisp_Object Qdisplay_type; - -extern Lisp_Object Qx_resource_name; - -extern Lisp_Object Qtop, Qbox, Qbottom; -extern Lisp_Object Qdisplay; - -extern Lisp_Object Qframe_position, Qframe_outer_size, Qframe_inner_size; -extern Lisp_Object Qexternal_border_size, Qtitle_height; -extern Lisp_Object Qmenu_bar_external, Qmenu_bar_size; -extern Lisp_Object Qtool_bar_external, Qtool_bar_size; - -extern Lisp_Object Qrun_hook_with_args; - #ifdef HAVE_WINDOW_SYSTEM /* The class of this X application. */ @@ -1399,7 +1354,6 @@ extern void x_set_scroll_bar_default_height (struct frame *); extern void x_set_offset (struct frame *, int, int, int); extern void x_wm_set_size_hint (struct frame *f, long flags, bool user_position); extern Lisp_Object x_new_font (struct frame *, Lisp_Object, int); -extern Lisp_Object Qface_set_after_frame_default; extern void x_set_frame_parameters (struct frame *, Lisp_Object); extern void x_set_fullscreen (struct frame *, Lisp_Object, Lisp_Object); extern void x_set_line_spacing (struct frame *, Lisp_Object, Lisp_Object); @@ -1457,7 +1411,6 @@ extern void x_sync (struct frame *); #endif /* HAVE_X_WINDOWS */ extern void x_query_colors (struct frame *f, XColor *, int); -extern void x_query_color (struct frame *f, XColor *); extern void x_focus_frame (struct frame *); #ifndef HAVE_NS @@ -1471,7 +1424,7 @@ x_set_bitmap_icon (struct frame *f) { Lisp_Object obj = assq_no_quit (Qicon_type, f->param_alist); - if (CONSP (obj)) + if (CONSP (obj) && !NILP (XCDR (obj))) x_bitmap_icon (f, XCDR (obj)); }