X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fconsole-x.h;h=1850c216bff3440f4e94de5b0b96b1fb272ebae5;hb=5d0cf827247def2db200614bf5d3ab700776d641;hp=6a601890d66711ec63f5a28d92bc754cdfaadd90;hpb=3e447015251ce6dcde843cbed10d9033d5538622;p=chise%2Fxemacs-chise.git.1 diff --git a/src/console-x.h b/src/console-x.h index 6a60189..1850c21 100644 --- a/src/console-x.h +++ b/src/console-x.h @@ -35,22 +35,14 @@ Boston, MA 02111-1307, USA. */ #ifdef HAVE_X_WINDOWS #include "console.h" +/* must come before Xutil.h, which is included indirectly from xintrinsic.h, + to avoid breakage in keysym-parsing macros from X11R6, at least X.org as + of 2005-01-17, and probably XFree86 too from reports on c.e.x */ +#include #include "xintrinsic.h" #include -#include #include - -#if 0 /* mrb - Xos sux. */ -#ifdef USG -#undef USG /* ####KLUDGE for Solaris 2.2 and up */ -#include -#define USG -#else -#include -#endif -#endif /* 0 */ - #include #ifdef HAVE_XPM @@ -76,7 +68,7 @@ struct x_device /* Xt application info. */ Widget Xt_app_shell; - /* Cache of GC's for frame's on this device. */ + /* Cache of GC's for frames on this device. */ struct gc_cache *gc_cache; /* Selected visual, depth and colormap for this device */ @@ -88,14 +80,14 @@ struct x_device Pixmap gray_pixmap; /* Atoms associated with this device. */ - /* allocated in Xatoms_of_xfns in xfns.c */ + /* allocated in Xatoms_of_device_x */ Atom Xatom_WM_PROTOCOLS; Atom Xatom_WM_DELETE_WINDOW; Atom Xatom_WM_SAVE_YOURSELF; Atom Xatom_WM_TAKE_FOCUS; Atom Xatom_WM_STATE; - /* allocated in Xatoms_of_select_x in xselect.c */ + /* allocated in Xatoms_of_select_x */ Atom Xatom_CLIPBOARD; Atom Xatom_TIMESTAMP; Atom Xatom_TEXT; @@ -108,7 +100,7 @@ struct x_device Atom Xatom_ATOM_PAIR; Atom Xatom_COMPOUND_TEXT; - /* allocated in Xatoms_of_objects_x in objects-x.c */ + /* allocated in Xatoms_of_objects_x */ Atom Xatom_FOUNDRY; Atom Xatom_FAMILY_NAME; Atom Xatom_WEIGHT_NAME; @@ -181,6 +173,7 @@ struct x_device unsigned int need_to_add_mask, down_mask; KeyCode last_downkey; Time release_time; + Time modifier_release_time; }; #define DEVICE_X_DATA(d) DEVICE_TYPE_DATA (d, x) @@ -206,14 +199,14 @@ struct x_device #define DEVICE_X_FONTSET(d) (DEVICE_X_DATA (d)->fontset) #endif /* HAVE_XIM */ -/* allocated in Xatoms_of_xfns in xfns.c */ +/* allocated in Xatoms_of_device_x */ #define DEVICE_XATOM_WM_PROTOCOLS(d) (DEVICE_X_DATA (d)->Xatom_WM_PROTOCOLS) #define DEVICE_XATOM_WM_DELETE_WINDOW(d) (DEVICE_X_DATA (d)->Xatom_WM_DELETE_WINDOW) #define DEVICE_XATOM_WM_SAVE_YOURSELF(d) (DEVICE_X_DATA (d)->Xatom_WM_SAVE_YOURSELF) #define DEVICE_XATOM_WM_TAKE_FOCUS(d) (DEVICE_X_DATA (d)->Xatom_WM_TAKE_FOCUS) #define DEVICE_XATOM_WM_STATE(d) (DEVICE_X_DATA (d)->Xatom_WM_STATE) -/* allocated in Xatoms_of_select_x in xselect.c */ +/* allocated in Xatoms_of_select_x */ #define DEVICE_XATOM_CLIPBOARD(d) (DEVICE_X_DATA (d)->Xatom_CLIPBOARD) #define DEVICE_XATOM_TIMESTAMP(d) (DEVICE_X_DATA (d)->Xatom_TIMESTAMP) #define DEVICE_XATOM_TEXT(d) (DEVICE_X_DATA (d)->Xatom_TEXT) @@ -226,7 +219,7 @@ struct x_device #define DEVICE_XATOM_ATOM_PAIR(d) (DEVICE_X_DATA (d)->Xatom_ATOM_PAIR) #define DEVICE_XATOM_COMPOUND_TEXT(d) (DEVICE_X_DATA (d)->Xatom_COMPOUND_TEXT) -/* allocated in Xatoms_of_objects_x in objects-x.c */ +/* allocated in Xatoms_of_objects_x */ #define DEVICE_XATOM_FOUNDRY(d) (DEVICE_X_DATA (d)->Xatom_FOUNDRY) #define DEVICE_XATOM_FAMILY_NAME(d) (DEVICE_X_DATA (d)->Xatom_FAMILY_NAME) #define DEVICE_XATOM_WEIGHT_NAME(d) (DEVICE_X_DATA (d)->Xatom_WEIGHT_NAME) @@ -383,7 +376,7 @@ extern Lisp_Object Vdefault_x_device; /* Number of pixels below each line. */ extern int x_interline_space; /* #### implement me */ -extern int x_selection_timeout; +extern Fixnum x_selection_timeout; struct frame *x_any_window_to_frame (struct device *d, Window); struct frame *x_any_widget_or_parent_to_frame (struct device *d, @@ -415,7 +408,7 @@ int x_IO_error_handler (Display *disp); void x_redraw_exposed_area (struct frame *f, int x, int y, int width, int height); void x_output_string (struct window *w, struct display_line *dl, - Emchar_dynarr *buf, int xpos, int xoffset, + Charc_dynarr *buf, int xpos, int xoffset, int start_pixpos, int width, face_index findex, int cursor, int cursor_start, int cursor_width, int cursor_height); @@ -491,6 +484,23 @@ extern int in_specifier_change_function; extern Lisp_Object Vx_initial_argv_list; /* #### ugh! */ +/* Standins for various X encodings, until we know them better */ + +/* !!#### Need to verify the encoding used in lwlib -- Qnative or Qctext? + Almost certainly the former. Use a standin for now. */ +#define Qlwlib_encoding Qnative + +#define Qx_atom_name_encoding Qctext +/* font names are often stored in atoms, so it gets sticky if we set this + to something different from atom-name encoding */ +#define Qx_font_name_encoding Qctext + +#define Qx_color_name_encoding Qctext + +/* the following probably must agree with Qcommand_argument_encoding and + Qenvironment_variable_encoding */ +#define Qx_display_name_encoding Qnative + #endif /* HAVE_X_WINDOWS */ #endif /* INCLUDED_console_x_h_ */