* configure.ac (HAVE_XKB): Define if Xkb is present.

* src/xterm.c: Include X11/XKBlib.h
(XTring_bell): Use XkbBell if HAVE_XKB.

Fixes: debbugs:14041
This commit is contained in:
Jan Djärv 2013-03-25 18:58:35 +01:00
parent 553fabe73a
commit a4cedbf774
3 changed files with 13 additions and 0 deletions

View file

@ -1,3 +1,7 @@
2013-03-25 Jan Djärv <jan.h.d@swipnet.se>
* configure.ac (HAVE_XKB): Define if Xkb is present.
2013-03-24 Paul Eggert <eggert@cs.ucla.edu>
Merge from gnulib, incorporating:

View file

@ -1822,6 +1822,7 @@ if test "${HAVE_X11}" = "yes"; then
AC_MSG_RESULT($emacs_xkb)
if test $emacs_xkb = yes; then
AC_DEFINE(HAVE_XKBGETKEYBOARD, 1, [Define to 1 if you have the XkbGetKeyboard function.])
AC_DEFINE(HAVE_XKB, 1, [Define to 1 if you have the Xkb extension.])
fi
AC_CHECK_FUNCS(XrmSetDatabase XScreenResourceString \

View file

@ -130,6 +130,10 @@ extern void _XEditResCheckMessages (Widget, XtPointer, XEvent *, Boolean *);
#include "bitmaps/gray.xbm"
#ifdef HAVE_XKB
#include <X11/XKBlib.h>
#endif
/* Default to using XIM if available. */
#ifdef USE_XIM
int use_xim = 1;
@ -3218,7 +3222,11 @@ XTring_bell (struct frame *f)
else
{
block_input ();
#ifdef HAVE_XKB
XkbBell (FRAME_X_DISPLAY (f), None, 0, None);
#else
XBell (FRAME_X_DISPLAY (f), 0);
#endif
XFlush (FRAME_X_DISPLAY (f));
unblock_input ();
}