/* Definitions and headers for communication with X protocol.
- Copyright (C) 1989, 1993-1994, 1998-2011 Free Software Foundation, Inc.
+ Copyright (C) 1989, 1993-1994, 1998-2012 Free Software Foundation, Inc.
This file is part of GNU Emacs.
/* Emacs bitmap-id of the default icon bitmap for this frame.
Or -1 if none has been allocated yet. */
- int icon_bitmap_id;
+ ptrdiff_t icon_bitmap_id;
/* The root window of this screen. */
Window root_window;
struct x_bitmap_record *bitmaps;
/* Allocated size of bitmaps field. */
- int bitmaps_size;
+ ptrdiff_t bitmaps_size;
/* Last used bitmap index. */
- int bitmaps_last;
+ ptrdiff_t bitmaps_last;
/* Which modifier keys are on which modifier bits?
/* Atoms that are drag and drop atoms */
Atom *x_dnd_atoms;
- size_t x_dnd_atoms_size;
- size_t x_dnd_atoms_length;
+ ptrdiff_t x_dnd_atoms_size;
+ ptrdiff_t x_dnd_atoms_length;
/* Extended window manager hints, Atoms supported by the window manager and
- atoms for settig the window type. */
+ atoms for setting the window type. */
Atom Xatom_net_supported, Xatom_net_supporting_wm_check;
Atom *net_supported_atoms;
int nr_net_supported_atoms;
/* Atoms dealing with EWMH (i.e. _NET_...) */
Atom Xatom_net_wm_state, Xatom_net_wm_state_fullscreen,
Xatom_net_wm_state_maximized_horz, Xatom_net_wm_state_maximized_vert,
- Xatom_net_wm_state_sticky, Xatom_net_frame_extents;
+ Xatom_net_wm_state_sticky, Xatom_net_wm_state_hidden,
+ Xatom_net_frame_extents;
/* XSettings atoms and windows. */
Atom Xatom_xsettings_sel, Xatom_xsettings_prop, Xatom_xsettings_mgr;
/* If >=0, a bitmap index. The indicated bitmap is used for the
icon. */
- int icon_bitmap;
+ ptrdiff_t icon_bitmap;
/* Default ASCII font of this frame. */
struct font *font;
x_check_expected_move. */
int left_before_move;
int top_before_move;
+
+ /* Non-zero if _NET_WM_STATE_HIDDEN is set for this frame. */
+ int net_wm_state_hidden_seen;
};
#define No_Cursor (None)
{
/* Values for focus_state, used as bit mask.
EXPLICIT means we received a FocusIn for the frame and know it has
- the focus. IMPLICIT means we recevied an EnterNotify and the frame
+ the focus. IMPLICIT means we received an EnterNotify and the frame
may have the focus if no window manager is running.
FocusOut and LeaveNotify clears EXPLICIT/IMPLICIT. */
FOCUS_NONE = 0,
#define GDK_WINDOW_XID(w) GDK_WINDOW_XWINDOW (w)
#define DEFAULT_GDK_DISPLAY() GDK_DISPLAY ()
#define gtk_widget_get_preferred_size(a, ign, b) \
- gtk_widget_size_request(a, b)
+ gtk_widget_size_request (a, b)
#endif
#define GTK_WIDGET_TO_X_WIN(w) \
extern int x_text_icon (struct frame *, const char *);
extern int x_bitmap_icon (struct frame *, Lisp_Object);
extern void x_catch_errors (Display *);
-extern void x_check_errors (Display *, const char *);
+extern void x_check_errors (Display *, const char *)
+ ATTRIBUTE_FORMAT_PRINTF (2, 0);
extern int x_had_errors_p (Display *);
-extern int x_catching_errors (void);
extern void x_uncatch_errors (void);
extern void x_clear_errors (Display *);
extern void x_set_window_size (struct frame *, int, int, int);
extern void x_set_mouse_position (struct frame *, int, int);
extern void x_set_mouse_pixel_position (struct frame *, int, int);
+extern void xembed_request_focus (struct frame *);
extern void x_ewmh_activate_frame (struct frame *);
extern void x_make_frame_visible (struct frame *);
extern void x_make_frame_invisible (struct frame *);