From: Jan Djärv Date: Sun, 10 Mar 2002 16:15:20 +0000 (+0000) Subject: Added calls to x_session_check_input () and x_session_initialize (). X-Git-Tag: ttn-vms-21-2-B4~16251 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=5f30b9577a64efb90b13e18cc158dd06eae8612c;p=emacs.git Added calls to x_session_check_input () and x_session_initialize (). --- diff --git a/src/xterm.c b/src/xterm.c index 58a60b59145..41331326ad7 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -10032,6 +10032,12 @@ XTread_socket (sd, bufp, numchars, expected) x_io_error_quitter (dpyinfo->display); } +#ifdef HAVE_X_SM + BLOCK_INPUT; + count += x_session_check_input (bufp, &numchars); + UNBLOCK_INPUT; +#endif + while (XPending (dpyinfo->display)) { XNextEvent (dpyinfo->display, &event); @@ -10114,11 +10120,17 @@ XTread_socket (sd, bufp, numchars, expected) the session manager, who's looking for such a PropertyNotify. Can restart processing when a keyboard or mouse event arrives. */ - if (numchars > 0) + /* If we have a session manager, don't set this. + KDE will then start two Emacsen, one for the + session manager and one for this. */ + if (numchars > 0 +#ifdef HAVE_X_SM + && ! x_session_have_connection () +#endif + ) { f = x_top_window_to_frame (dpyinfo, event.xclient.window); - /* This is just so we only give real data once for a single Emacs process. */ if (f == SELECTED_FRAME ()) @@ -15056,6 +15068,10 @@ x_initialize () #endif /* ! defined (SIGWINCH) */ signal (SIGPIPE, x_connection_signal); + +#ifdef HAVE_X_SM + x_session_initialize (); +#endif }