aboutsummaryrefslogtreecommitdiffstats
path: root/src/frame.h
diff options
context:
space:
mode:
authorBastien2017-07-03 09:06:29 +0200
committerBastien2017-07-03 09:06:29 +0200
commit5ca1888fe670aee7febd4d42665d7372ab2ffebc (patch)
tree1f7f8d8a7580e556fc83cf3a6aaeec567b33a090 /src/frame.h
parent20e006ffee41062f1b551a92c24d9edc53cd0f56 (diff)
parent1b4f0a92ff3505ef9a465b9b391756e3a73a6443 (diff)
downloademacs-5ca1888fe670aee7febd4d42665d7372ab2ffebc.tar.gz
emacs-5ca1888fe670aee7febd4d42665d7372ab2ffebc.zip
Merge branch 'master' into scratch/org-mode-merge
Diffstat (limited to 'src/frame.h')
-rw-r--r--src/frame.h63
1 files changed, 43 insertions, 20 deletions
diff --git a/src/frame.h b/src/frame.h
index 4aa7c34a29a..154dc9a3bb4 100644
--- a/src/frame.h
+++ b/src/frame.h
@@ -52,6 +52,19 @@ enum z_group
52 z_group_below, 52 z_group_below,
53 z_group_above_suspended, 53 z_group_above_suspended,
54}; 54};
55
56enum internal_border_part
57 {
58 INTERNAL_BORDER_NONE,
59 INTERNAL_BORDER_LEFT_EDGE,
60 INTERNAL_BORDER_TOP_LEFT_CORNER,
61 INTERNAL_BORDER_TOP_EDGE,
62 INTERNAL_BORDER_TOP_RIGHT_CORNER,
63 INTERNAL_BORDER_RIGHT_EDGE,
64 INTERNAL_BORDER_BOTTOM_RIGHT_CORNER,
65 INTERNAL_BORDER_BOTTOM_EDGE,
66 INTERNAL_BORDER_BOTTOM_LEFT_CORNER,
67 };
55#endif /* HAVE_WINDOW_SYSTEM */ 68#endif /* HAVE_WINDOW_SYSTEM */
56 69
57/* The structure representing a frame. */ 70/* The structure representing a frame. */
@@ -354,7 +367,11 @@ struct frame
354 367
355 /* The z-group this frame's window belongs to. */ 368 /* The z-group this frame's window belongs to. */
356 ENUM_BF (z_group) z_group : 2; 369 ENUM_BF (z_group) z_group : 2;
357#endif /* HAVE_WINDOW_SYSTEM and not HAVE_NS */ 370
371 /* Non-zero if display of truncation and continuation glyphs outside
372 the fringes is suppressed. */
373 bool_bf no_special_glyphs : 1;
374#endif /* HAVE_WINDOW_SYSTEM */
358 375
359 /* Whether new_height and new_width shall be interpreted 376 /* Whether new_height and new_width shall be interpreted
360 in pixels. */ 377 in pixels. */
@@ -824,7 +841,7 @@ default_pixels_per_inch_y (void)
824#ifdef USE_GTK 841#ifdef USE_GTK
825#define FRAME_TOOL_BAR_POSITION(f) (f)->tool_bar_position 842#define FRAME_TOOL_BAR_POSITION(f) (f)->tool_bar_position
826#else 843#else
827#define FRAME_TOOL_BAR_POSITION(f) ((void) f, Qtop) 844#define FRAME_TOOL_BAR_POSITION(f) ((void) (f), Qtop)
828#endif 845#endif
829 846
830/* Number of lines of frame F used for the tool-bar. */ 847/* Number of lines of frame F used for the tool-bar. */
@@ -908,16 +925,17 @@ default_pixels_per_inch_y (void)
908 ((f)->vertical_scroll_bar_type == vertical_scroll_bar_right) 925 ((f)->vertical_scroll_bar_type == vertical_scroll_bar_right)
909#else /* not HAVE_WINDOW_SYSTEM */ 926#else /* not HAVE_WINDOW_SYSTEM */
910/* If there is no window system, there are no scroll bars. */ 927/* If there is no window system, there are no scroll bars. */
911#define FRAME_VERTICAL_SCROLL_BAR_TYPE(f) ((void) f, vertical_scroll_bar_none) 928#define FRAME_VERTICAL_SCROLL_BAR_TYPE(f) \
912#define FRAME_HAS_VERTICAL_SCROLL_BARS(f) ((void) f, 0) 929 ((void) (f), vertical_scroll_bar_none)
913#define FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT(f) ((void) f, 0) 930#define FRAME_HAS_VERTICAL_SCROLL_BARS(f) ((void) (f), 0)
914#define FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT(f) ((void) f, 0) 931#define FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT(f) ((void) (f), 0)
932#define FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT(f) ((void) (f), 0)
915#endif /* HAVE_WINDOW_SYSTEM */ 933#endif /* HAVE_WINDOW_SYSTEM */
916 934
917#if defined (HAVE_WINDOW_SYSTEM) 935#if defined (HAVE_WINDOW_SYSTEM)
918#define FRAME_UNDECORATED(f) ((f)->undecorated) 936#define FRAME_UNDECORATED(f) ((f)->undecorated)
919#ifdef HAVE_NTGUI 937#ifdef HAVE_NTGUI
920#define FRAME_OVERRIDE_REDIRECT(f) ((void) f, 0) 938#define FRAME_OVERRIDE_REDIRECT(f) ((void) (f), 0)
921#else 939#else
922#define FRAME_OVERRIDE_REDIRECT(f) ((f)->override_redirect) 940#define FRAME_OVERRIDE_REDIRECT(f) ((f)->override_redirect)
923#endif 941#endif
@@ -928,6 +946,7 @@ default_pixels_per_inch_y (void)
928#define FRAME_SKIP_TASKBAR(f) ((f)->skip_taskbar) 946#define FRAME_SKIP_TASKBAR(f) ((f)->skip_taskbar)
929#define FRAME_NO_FOCUS_ON_MAP(f) ((f)->no_focus_on_map) 947#define FRAME_NO_FOCUS_ON_MAP(f) ((f)->no_focus_on_map)
930#define FRAME_NO_ACCEPT_FOCUS(f) ((f)->no_accept_focus) 948#define FRAME_NO_ACCEPT_FOCUS(f) ((f)->no_accept_focus)
949#define FRAME_NO_SPECIAL_GLYPHS(f) ((f)->no_special_glyphs)
931#define FRAME_Z_GROUP(f) ((f)->z_group) 950#define FRAME_Z_GROUP(f) ((f)->z_group)
932#define FRAME_Z_GROUP_NONE(f) ((f)->z_group == z_group_none) 951#define FRAME_Z_GROUP_NONE(f) ((f)->z_group == z_group_none)
933#define FRAME_Z_GROUP_ABOVE(f) ((f)->z_group == z_group_above) 952#define FRAME_Z_GROUP_ABOVE(f) ((f)->z_group == z_group_above)
@@ -935,16 +954,17 @@ default_pixels_per_inch_y (void)
935 ((f)->z_group == z_group_above_suspended) 954 ((f)->z_group == z_group_above_suspended)
936#define FRAME_Z_GROUP_BELOW(f) ((f)->z_group == z_group_below) 955#define FRAME_Z_GROUP_BELOW(f) ((f)->z_group == z_group_below)
937#else /* not HAVE_WINDOW_SYSTEM */ 956#else /* not HAVE_WINDOW_SYSTEM */
938#define FRAME_UNDECORATED(f) ((void) f, 0) 957#define FRAME_UNDECORATED(f) ((void) (f), 0)
939#define FRAME_OVERRIDE_REDIRECT(f) ((void) f, 0) 958#define FRAME_OVERRIDE_REDIRECT(f) ((void) (f), 0)
940#define FRAME_PARENT_FRAME(f) ((void) f, NULL) 959#define FRAME_PARENT_FRAME(f) ((void) (f), NULL)
941#define FRAME_SKIP_TASKBAR(f) ((void) f, 0) 960#define FRAME_SKIP_TASKBAR(f) ((void) (f), 0)
942#define FRAME_NO_FOCUS_ON_MAP(f) ((void) f, 0) 961#define FRAME_NO_FOCUS_ON_MAP(f) ((void) (f), 0)
943#define FRAME_NO_ACCEPT_FOCUS(f) ((void) f, 0) 962#define FRAME_NO_ACCEPT_FOCUS(f) ((void) (f), 0)
944#define FRAME_Z_GROUP(f) ((void) f, z_group_none) 963#define FRAME_NO_SPECIAL_GLYPHS(f) ((void) (f), 0)
945#define FRAME_Z_GROUP_NONE(f) ((void) f, true) 964#define FRAME_Z_GROUP(f) ((void) (f), z_group_none)
946#define FRAME_Z_GROUP_ABOVE(f) ((void) f, false) 965#define FRAME_Z_GROUP_NONE(f) ((void) (f), true)
947#define FRAME_Z_GROUP_BELOW(f) ((void) f, false) 966#define FRAME_Z_GROUP_ABOVE(f) ((void) (f), false)
967#define FRAME_Z_GROUP_BELOW(f) ((void) (f), false)
948#endif /* HAVE_WINDOW_SYSTEM */ 968#endif /* HAVE_WINDOW_SYSTEM */
949 969
950/* Whether horizontal scroll bars are currently enabled for frame F. */ 970/* Whether horizontal scroll bars are currently enabled for frame F. */
@@ -952,7 +972,7 @@ default_pixels_per_inch_y (void)
952#define FRAME_HAS_HORIZONTAL_SCROLL_BARS(f) \ 972#define FRAME_HAS_HORIZONTAL_SCROLL_BARS(f) \
953 ((f)->horizontal_scroll_bars) 973 ((f)->horizontal_scroll_bars)
954#else 974#else
955#define FRAME_HAS_HORIZONTAL_SCROLL_BARS(f) ((void) f, 0) 975#define FRAME_HAS_HORIZONTAL_SCROLL_BARS(f) ((void) (f), 0)
956#endif 976#endif
957 977
958/* Width that a scroll bar in frame F should have, if there is one. 978/* Width that a scroll bar in frame F should have, if there is one.
@@ -1288,19 +1308,20 @@ FRAME_TOTAL_FRINGE_WIDTH (struct frame *f)
1288 return FRAME_LEFT_FRINGE_WIDTH (f) + FRAME_RIGHT_FRINGE_WIDTH (f); 1308 return FRAME_LEFT_FRINGE_WIDTH (f) + FRAME_RIGHT_FRINGE_WIDTH (f);
1289} 1309}
1290 1310
1291/* Pixel-width of internal border lines */ 1311/* Pixel-width of internal border lines. */
1292INLINE int 1312INLINE int
1293FRAME_INTERNAL_BORDER_WIDTH (struct frame *f) 1313FRAME_INTERNAL_BORDER_WIDTH (struct frame *f)
1294{ 1314{
1295 return frame_dimension (f->internal_border_width); 1315 return frame_dimension (f->internal_border_width);
1296} 1316}
1297 1317
1298/* Pixel-size of window divider lines */ 1318/* Pixel-size of window divider lines. */
1299INLINE int 1319INLINE int
1300FRAME_RIGHT_DIVIDER_WIDTH (struct frame *f) 1320FRAME_RIGHT_DIVIDER_WIDTH (struct frame *f)
1301{ 1321{
1302 return frame_dimension (f->right_divider_width); 1322 return frame_dimension (f->right_divider_width);
1303} 1323}
1324
1304INLINE int 1325INLINE int
1305FRAME_BOTTOM_DIVIDER_WIDTH (struct frame *f) 1326FRAME_BOTTOM_DIVIDER_WIDTH (struct frame *f)
1306{ 1327{
@@ -1498,6 +1519,7 @@ extern void x_set_scroll_bar_height (struct frame *, Lisp_Object, Lisp_Object);
1498extern long x_figure_window_size (struct frame *, Lisp_Object, bool, int *, int *); 1519extern long x_figure_window_size (struct frame *, Lisp_Object, bool, int *, int *);
1499 1520
1500extern void x_set_alpha (struct frame *, Lisp_Object, Lisp_Object); 1521extern void x_set_alpha (struct frame *, Lisp_Object, Lisp_Object);
1522extern void x_set_no_special_glyphs (struct frame *, Lisp_Object, Lisp_Object);
1501 1523
1502extern void validate_x_resource_name (void); 1524extern void validate_x_resource_name (void);
1503 1525
@@ -1521,6 +1543,7 @@ extern void x_real_positions (struct frame *, int *, int *);
1521extern void free_frame_menubar (struct frame *); 1543extern void free_frame_menubar (struct frame *);
1522extern void x_free_frame_resources (struct frame *); 1544extern void x_free_frame_resources (struct frame *);
1523extern bool frame_ancestor_p (struct frame *af, struct frame *df); 1545extern bool frame_ancestor_p (struct frame *af, struct frame *df);
1546extern enum internal_border_part frame_internal_border_part (struct frame *f, int x, int y);
1524 1547
1525#if defined HAVE_X_WINDOWS 1548#if defined HAVE_X_WINDOWS
1526extern void x_wm_set_icon_position (struct frame *, int, int); 1549extern void x_wm_set_icon_position (struct frame *, int, int);