summaryrefslogtreecommitdiff
path: root/src/xterm.h
diff options
context:
space:
mode:
authorJan Djärv <jan.h.d@swipnet.se>2008-02-07 14:07:45 +0000
committerJan Djärv <jan.h.d@swipnet.se>2008-02-07 14:07:45 +0000
commit89f74d7c5fdda02f525fcefb960e4ec8e7dab4ce (patch)
tree9a11efcb7d7cbcf8a7b60c3a0f8fce7e8182a300 /src/xterm.h
parent81c02ebe5cd0dc322e25b482930e49b6510e8570 (diff)
downloademacs-89f74d7c5fdda02f525fcefb960e4ec8e7dab4ce.tar.gz
emacs-89f74d7c5fdda02f525fcefb960e4ec8e7dab4ce.tar.bz2
emacs-89f74d7c5fdda02f525fcefb960e4ec8e7dab4ce.zip
(struct x_display_info): Add AtomXatom_XEMBED.
(enum xembed_info, enum xerm srmbed_message, enum xembed_focus) (enum xembed_modifier, enum xembed_accelerator): New. (xembed_set_info, xembed_send_message): Declare. (FRAME_X_EMBEDDED_P): New.
Diffstat (limited to 'src/xterm.h')
-rw-r--r--src/xterm.h63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/xterm.h b/src/xterm.h
index 2cc4b9eaffc..9fa2a36ae08 100644
--- a/src/xterm.h
+++ b/src/xterm.h
@@ -293,6 +293,9 @@ struct x_display_info
/* Atom used in toolkit scroll bar client messages. */
Atom Xatom_Scrollbar;
+ /* Atom used in XEmbed client messages. */
+ Atom Xatom_XEMBED;
+
int cut_buffers_initialized; /* Whether we're sure they all exist */
/* The frame (if any) which has the X window that has keyboard focus.
@@ -1066,6 +1069,66 @@ extern int x_session_have_connection P_ ((void));
extern void x_session_close P_ ((void));
#endif
+/* XEmbed implementation. */
+
+#define XEMBED_VERSION 0
+
+enum xembed_info
+ {
+ XEMBED_MAPPED = 1 << 0
+ };
+
+enum xembed_message
+ {
+ XEMBED_EMBEDDED_NOTIFY = 0,
+ XEMBED_WINDOW_ACTIVATE = 1,
+ XEMBED_WINDOW_DEACTIVATE = 2,
+ XEMBED_REQUEST_FOCUS = 3,
+ XEMBED_FOCUS_IN = 4,
+ XEMBED_FOCUS_OUT = 5,
+ XEMBED_FOCUS_NEXT = 6,
+ XEMBED_FOCUS_PREV = 7,
+
+ XEMBED_MODALITY_ON = 10,
+ XEMBED_MODALITY_OFF = 11,
+ XEMBED_REGISTER_ACCELERATOR = 12,
+ XEMBED_UNREGISTER_ACCELERATOR = 13,
+ XEMBED_ACTIVATE_ACCELERATOR = 14
+ };
+
+enum xembed_focus
+ {
+ XEMBED_FOCUS_CURRENT = 0,
+ XEMBED_FOCUS_FIRST = 1,
+ XEMBED_FOCUS_LAST = 2
+ };
+
+enum xembed_modifier
+ {
+ XEMBED_MODIFIER_SHIFT = 1 << 0,
+ XEMBED_MODIFIER_CONTROL = 1 << 1,
+ XEMBED_MODIFIER_ALT = 1 << 2,
+ XEMBED_MODIFIER_SUPER = 1 << 3,
+ XEMBED_MODIFIER_HYPER = 1 << 4
+ };
+
+enum xembed_accelerator
+ {
+ XEMBED_ACCELERATOR_OVERLOADED = 1 << 0
+ };
+
+/* Defined in xterm.c */
+
+extern void xembed_set_info P_ ((struct frame *f, enum xembed_info flags));
+extern void xembed_send_message P_ ((struct frame *f, Time time,
+ enum xembed_message message,
+ long detail, long data1, long data2));
+
+/* Is the frame embedded into another application? */
+
+#define FRAME_X_EMBEDDED_P(f) (FRAME_X_OUTPUT(f)->explicit_parent != 0)
+
+
#define FONT_TYPE_FOR_UNIBYTE(font, ch) 0
#define FONT_TYPE_FOR_MULTIBYTE(font, ch) 0