Commit c047688c authored by Joseph Arceneaux's avatar Joseph Arceneaux
Browse files

*** empty log message ***

parent 3c254570
...@@ -171,8 +171,8 @@ extern Atom Xatom_wm_save_yourself; ...@@ -171,8 +171,8 @@ extern Atom Xatom_wm_save_yourself;
extern Atom Xatom_wm_delete_window; extern Atom Xatom_wm_delete_window;
/* Other WM communication */ /* Other WM communication */
Atom Xatom_wm_configure_denied; /* When our config request is denied */ extern Atom Xatom_wm_configure_denied; /* When our config request is denied */
Atom Xatom_wm_window_moved; /* When the WM moves us. */ extern Atom Xatom_wm_window_moved; /* When the WM moves us. */
#else /* X10 */ #else /* X10 */
...@@ -3922,7 +3922,8 @@ also be depressed for NEWSTRING to appear.") ...@@ -3922,7 +3922,8 @@ also be depressed for NEWSTRING to appear.")
register Lisp_Object newstring; register Lisp_Object newstring;
{ {
char *rawstring; char *rawstring;
register KeySym keysym, modifier_list[16]; register KeySym keysym;
KeySym modifier_list[16];
CHECK_STRING (x_keysym, 1); CHECK_STRING (x_keysym, 1);
CHECK_STRING (newstring, 3); CHECK_STRING (newstring, 3);
......
...@@ -1691,6 +1691,18 @@ static char *events[] = ...@@ -1691,6 +1691,18 @@ static char *events[] =
sometimes don't work. */ sometimes don't work. */
static Time enter_timestamp; static Time enter_timestamp;
/* Communication with window managers. */
Atom Xatom_wm_protocols;
/* Kinds of protocol things we may receive. */
Atom Xatom_wm_take_focus;
Atom Xatom_wm_save_yourself;
Atom Xatom_wm_delete_window;
/* Other WM communication */
Atom Xatom_wm_configure_denied; /* When our config request is denied */
Atom Xatom_wm_window_moved; /* When the WM moves us. */
/* Read events coming from the X server. /* Read events coming from the X server.
This routine is called by the SIGIO handler. This routine is called by the SIGIO handler.
We return as soon as there are no more events to be read. We return as soon as there are no more events to be read.
...@@ -1761,6 +1773,51 @@ XTread_socket (sd, bufp, numchars, waitp, expected) ...@@ -1761,6 +1773,51 @@ XTread_socket (sd, bufp, numchars, waitp, expected)
switch (event.type) switch (event.type)
{ {
#ifdef HAVE_X11 #ifdef HAVE_X11
case ClientMessage:
{
if (event.xclient.message_type == Xatom_wm_protocols
&& event.xclient.format == 32)
{
if (event.xclient.data.l[0] == Xatom_wm_take_focus)
{
s = x_window_to_screen (event.xclient.window);
if (s)
x_focus_on_screen (s);
/* Not certain about handling scrollbars here */
}
else if (event.xclient.data.l[0] == Xatom_wm_save_yourself)
{
/* Save state modify the WM_COMMAND property to
something which can reinstate us. This notifies
the session manager, who's looking for such a
PropertyNotify. Can restart processing when
a keyboard or mouse event arrives. */
if (numchars > 0)
{
}
}
else if (event.xclient.data.l[0] == Xatom_wm_delete_window)
{
struct screen *s = x_window_to_screen (event.xclient.window);
if (s)
if (numchars > 0)
{
}
}
}
else if (event.xclient.message_type == Xatom_wm_configure_denied)
{
}
else if (event.xclient.message_type == Xatom_wm_window_moved)
{
int new_x, new_y;
new_x = event.xclient.data.s[0];
new_y = event.xclient.data.s[1];
}
}
break;
case SelectionClear: /* Someone has grabbed ownership. */ case SelectionClear: /* Someone has grabbed ownership. */
x_disown_selection (event.xselectionclear.window, x_disown_selection (event.xselectionclear.window,
......
...@@ -33,8 +33,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ ...@@ -33,8 +33,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define EVENT_BUFFER_SIZE 64 #define EVENT_BUFFER_SIZE 64
#define RES_CLASS "emacs"
/* Max and Min sizes in character columns. */ /* Max and Min sizes in character columns. */
#define MINWIDTH 10 #define MINWIDTH 10
#define MINHEIGHT 10 #define MINHEIGHT 10
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment