comparison src/xterm.h @ 42724:6d3fb8c8283b

(struct x_output): New members want_fullscreen, x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
author Eli Zaretskii <eliz@gnu.org>
date Sun, 13 Jan 2002 12:21:19 +0000
parents b4898b480ab0
children 4fec5d1a39fa
comparison
equal deleted inserted replaced
42723:112393bdb5f9 42724:6d3fb8c8283b
592 EmacsFrameSetCharSize when the shell widget is resized. For some 592 EmacsFrameSetCharSize when the shell widget is resized. For some
593 window managers like fvwm2 2.2.5 and KDE 2.1 this event doesn't 593 window managers like fvwm2 2.2.5 and KDE 2.1 this event doesn't
594 arrive for an unknown reason and Emacs hangs in Xt. If this is 594 arrive for an unknown reason and Emacs hangs in Xt. If this is
595 zero, tell Xt not to wait. */ 595 zero, tell Xt not to wait. */
596 int wait_for_wm; 596 int wait_for_wm;
597
598 /* See enum below */
599 int want_fullscreen;
600
601 /* This many pixels are the difference between the outer window (i.e. the
602 left of the window manager decoration) and FRAME_X_WINDOW. */
603 int x_pixels_diff;
604
605 /* This many pixels are the difference between the outer window (i.e. the
606 top of the window manager titlebar) and FRAME_X_WINDOW. */
607 int y_pixels_diff;
608
609 /* As x_pixels_diff, but to FRAME_OUTER_WINDOW. For some reason the
610 two might differ by a pixel, depending on WM */
611 int x_pixels_outer_diff;
612
613 /* As y_pixels_diff, but to FRAME_OUTER_WINDOW. In the toolkit version,
614 these may differ because this does not take into account possible
615 menubar. y_pixels_diff is with menubar height included */
616 int y_pixels_outer_diff;
617 };
618
619 enum
620 {
621 /* Values used as a bit mask, BOTH == WIDTH | HEIGH */
622 FULLSCREEN_NONE = 0,
623 FULLSCREEN_WIDTH = 1,
624 FULLSCREEN_HEIGHT = 2,
625 FULLSCREEN_BOTH = 3,
626 FULLSCREEN_WAIT = 4,
627 FULLSCREEN_MOVE_WAIT = 8,
597 }; 628 };
598 629
599 /* Return the X window used for displaying data in frame F. */ 630 /* Return the X window used for displaying data in frame F. */
600 #define FRAME_X_WINDOW(f) ((f)->output_data.x->window_desc) 631 #define FRAME_X_WINDOW(f) ((f)->output_data.x->window_desc)
601 632
602 /* Return the outermost X window associated with the frame F. */ 633 /* Return the outermost X window associated with the frame F. */
603 #ifdef USE_X_TOOLKIT 634 #ifdef USE_X_TOOLKIT
604 #define FRAME_OUTER_WINDOW(f) (XtWindow ((f)->output_data.x->widget)) 635 #define FRAME_OUTER_WINDOW(f) ((f)->output_data.x->widget ? \
636 XtWindow ((f)->output_data.x->widget) : \
637 FRAME_X_WINDOW (f))
605 #else 638 #else
606 #define FRAME_OUTER_WINDOW(f) (FRAME_X_WINDOW (f)) 639 #define FRAME_OUTER_WINDOW(f) (FRAME_X_WINDOW (f))
607 #endif 640 #endif
608 641
609 #define FRAME_FONT(f) ((f)->output_data.x->font) 642 #define FRAME_FONT(f) ((f)->output_data.x->font)
991 #endif 1024 #endif
992 extern void x_query_colors P_ ((struct frame *f, XColor *, int)); 1025 extern void x_query_colors P_ ((struct frame *f, XColor *, int));
993 extern void x_query_color P_ ((struct frame *f, XColor *)); 1026 extern void x_query_color P_ ((struct frame *f, XColor *));
994 extern void x_clear_area P_ ((Display *, Window, int, int, int, int, int)); 1027 extern void x_clear_area P_ ((Display *, Window, int, int, int, int, int));
995 1028
1029 extern void x_fullscreen_adjust P_ ((struct frame *f, int *, int *,
1030 int *, int *));
1031
1032
996 /* Defined in xselect.c */ 1033 /* Defined in xselect.c */
997 1034
998 extern void x_handle_property_notify P_ ((XPropertyEvent *)); 1035 extern void x_handle_property_notify P_ ((XPropertyEvent *));
999 extern void x_handle_selection_notify P_ ((XSelectionEvent *)); 1036 extern void x_handle_selection_notify P_ ((XSelectionEvent *));
1000 extern void x_handle_selection_request P_ ((struct input_event *)); 1037 extern void x_handle_selection_request P_ ((struct input_event *));