You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA. */
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA. */
#include <X11/Xlib.h>
#include <X11/cursorfont.h>
typedef GtkWidget *xt_or_gtk_widget;
#define XtParent(x) (gtk_widget_get_parent (x))
#undef XSync
-#define XSync(d, b) gdk_window_process_all_updates ()
+#define XSync(d, b) do { gdk_window_process_all_updates (); \
+ XSync (d, b); } while (0)
+
#endif /* USE_GTK */
/* More atoms for font properties. The last three are private
properties, see the comments in src/fontset.h. */
- Atom Xatom_PIXEL_SIZE,
+ Atom Xatom_PIXEL_SIZE, Xatom_AVERAGE_WIDTH,
Xatom_MULE_BASELINE_OFFSET, Xatom_MULE_RELATIVE_COMPOSE,
Xatom_MULE_DEFAULT_ASCENT;
GtkWidget *toolbar_widget;
/* The handle box that makes the tool bar detachable. */
GtkWidget *handlebox_widget;
+ /* Non-zero if the tool bar is detached. */
+ int toolbar_detached;
/* The last size hints set. */
GdkGeometry size_hints;
XIC xic;
XIMStyle xic_style;
XFontSet xic_xfs;
+ char *xic_base_fontname;
#endif
/* Relief GCs, colors etc. */
#define FRAME_X_XIM_STYLES(f) (FRAME_X_DISPLAY_INFO (f)->xim_styles)
#define FRAME_XIC_STYLE(f) ((f)->output_data.x->xic_style)
#define FRAME_XIC_FONTSET(f) ((f)->output_data.x->xic_xfs)
+#define FRAME_XIC_BASE_FONTNAME(f) ((f)->output_data.x->xic_base_fontname)
/* Value is the smallest width of any character in any font on frame F. */
extern void cancel_mouse_face P_ ((struct frame *));
extern void x_scroll_bar_clear P_ ((struct frame *));
-extern void x_start_queuing_selection_requests P_ ((Display *));
-extern void x_stop_queuing_selection_requests P_ ((Display *));
extern int x_text_icon P_ ((struct frame *, char *));
extern int x_bitmap_icon P_ ((struct frame *, Lisp_Object));
extern int x_catch_errors P_ ((Display *));
extern void x_handle_property_notify P_ ((XPropertyEvent *));
extern void x_handle_selection_notify P_ ((XSelectionEvent *));
-extern void x_handle_selection_request P_ ((struct input_event *));
-extern void x_handle_selection_clear P_ ((struct input_event *));
+extern void x_handle_selection_event P_ ((struct input_event *));
extern void x_clear_frame_selections P_ ((struct frame *));
extern int x_handle_dnd_message P_ ((struct frame *,
extern unsigned char * x_encode_text P_ ((Lisp_Object, Lisp_Object, int,
int *, int *));
extern void x_implicitly_set_name P_ ((struct frame *, Lisp_Object, Lisp_Object));
+extern void xic_free_xfontset P_ ((struct frame *));
extern void create_frame_xic P_ ((struct frame *));
extern void destroy_frame_xic P_ ((struct frame *));
extern void xic_set_preeditarea P_ ((struct window *, int, int));
/* Defined in xmenu.c */
+extern void x_menu_set_in_use P_ ((int));
+extern void x_menu_wait_for_event P_ ((void *data));
extern void x_activate_menubar P_ ((struct frame *));
extern int popup_activated P_ ((void));
extern void initialize_frame_menubar P_ ((struct frame *));