X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/476e9367ec1f440aa23904b7bc482ea4a3b8041c..57fd5c55e459e10cd8a81a92ec2a6f8721f9c30f:/src/xterm.h diff --git a/src/xterm.h b/src/xterm.h index 03d7b630d6..c8b768f618 100644 --- a/src/xterm.h +++ b/src/xterm.h @@ -1,12 +1,12 @@ /* Definitions and headers for communication with X protocol. Copyright (C) 1989, 1993, 1994, 1998, 1999, 2000, 2001, 2002, 2003, - 2004, 2005, 2006 Free Software Foundation, Inc. + 2004, 2005, 2006, 2007 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) +the Free Software Foundation; either version 3, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, @@ -256,7 +256,7 @@ struct x_display_info char *x_id_name; /* The number of fonts actually stored in x_font_table. - font_table[n] is used and valid iff 0 <= n < n_fonts. 0 <= + font_table[n] is used and valid if 0 <= n < n_fonts. 0 <= n_fonts <= font_table_size and font_table[i].name != 0. */ int n_fonts; @@ -389,6 +389,17 @@ struct x_display_info X_WMTYPE_A, X_WMTYPE_B } wm_type; + + + /* Atoms that are drag and drop atoms */ + Atom *x_dnd_atoms; + size_t x_dnd_atoms_size; + size_t x_dnd_atoms_length; + + /* Extended window manager hints, Atoms supported by the window manager */ + Atom *net_supported_atoms; + int nr_net_supported_atoms; + Window net_supported_window; }; #ifdef HAVE_X_I18N @@ -639,18 +650,14 @@ struct x_output FocusOut and LeaveNotify clears EXPLICIT/IMPLICIT. */ int focus_state; - /* The latest move we made to FRAME_OUTER_WINDOW. Saved so we can - compensate for type A WMs (see wm_type in dpyinfo above). */ - int expected_top; - int expected_left; - /* The offset we need to add to compensate for type A WMs. */ int move_offset_top; int move_offset_left; - /* Nonzero if we have made a move and needs to check if the WM placed us - at the right position. */ - int check_expected_move; + /* The frame's left/top offsets before we call XMoveWindow. See + x_check_expected_move. */ + int left_before_move; + int top_before_move; }; #define No_Cursor (None) @@ -802,6 +809,12 @@ struct scroll_bar place where the user grabbed it. If the handle isn't currently being dragged, this is Qnil. */ Lisp_Object dragging; + +#ifdef USE_TOOLKIT_SCROLL_BARS + /* t if the background of the fringe that is adjacent to a scroll + bar is extended to the gap between the fringe and the bar. */ + Lisp_Object fringe_extended_p; +#endif }; /* The number of elements a vector holding a struct scroll_bar needs. */ @@ -979,10 +992,10 @@ extern int x_had_errors_p P_ ((Display *)); extern int x_catching_errors P_ ((void)); extern void x_uncatch_errors P_ ((void)); extern void x_clear_errors P_ ((Display *)); -extern void x_fully_uncatch_errors P_ ((void)); extern void x_set_window_size P_ ((struct frame *, int, int, int)); extern void x_set_mouse_position P_ ((struct frame *, int, int)); extern void x_set_mouse_pixel_position P_ ((struct frame *, int, int)); +extern void x_ewmh_activate_frame P_ ((struct frame *)); extern void x_raise_frame P_ ((struct frame *)); extern void x_lower_frame P_ ((struct frame *)); extern void x_make_frame_visible P_ ((struct frame *)); @@ -1002,6 +1015,7 @@ extern XtAppContext Xt_app_con; extern int x_alloc_lighter_color_for_widget __P ((Widget, Display*, Colormap, unsigned long *, double, int)); +extern void x_activate_timeout_atimer P_ ((void)); #endif extern void x_query_colors P_ ((struct frame *f, XColor *, int)); extern void x_query_color P_ ((struct frame *f, XColor *));