Cleanup XEditRes hack
* configure.ac [USE_X_TOOLKIT]: Define X_TOOLKIT_EDITRES if _XEditResCheckMessages is declared in X11/Xmu/Editres.h and may be linked with -lXmu. This should work with any non-ancient Xmu library. * xfns.c (toplevel): Remove old cruft. (x_window) [USE_X_TOOLKIT]: Use X_TOOLKIT_EDITRES. * xterm.c (toplevel): Remove old cruft. (handle_one_xevent): Use X_TOOLKIT_EDITRES. * xterm.h (toplevel): Include X11/Xmu/Editres.h if X_TOOLKIT_EDITRES.
This commit is contained in:
parent
f24fe30cb8
commit
e3ae3c4488
4 changed files with 32 additions and 28 deletions
41
configure.ac
41
configure.ac
|
@ -4287,23 +4287,32 @@ else
|
|||
[Returns true if character is any form of separator.])
|
||||
fi
|
||||
|
||||
AH_TEMPLATE(NO_EDITRES, [Define if XEditRes should not be used.])
|
||||
|
||||
case $opsys in
|
||||
aix4-2)
|
||||
dnl Unfortunately without libXmu we cannot support EditRes.
|
||||
if test "x$ac_cv_search_XmuConvertStandardSelection" = xno; then
|
||||
AC_DEFINE(NO_EDITRES, 1)
|
||||
if test "$USE_X_TOOLKIT" != "none"; then
|
||||
have_editres=yes
|
||||
case $opsys in
|
||||
hpux*)
|
||||
dnl Assar Westerlund <assar@sics.se> says this is necessary
|
||||
dnl for HP-UX 10.20, and that it works for HP-UX 0 as well.
|
||||
have_editres=no
|
||||
;;
|
||||
esac
|
||||
if test "$have_editres" != no && test ! -z "$LIBXMU"; then
|
||||
OLDLIBS="$LIBS"
|
||||
dnl See libXmu.a check above.
|
||||
if test x$HAVE_X11XTR6 = xyes; then
|
||||
LIBS="-lXt -lSM -lICE $LIBXMU"
|
||||
else
|
||||
OTHERLIBS="-lXt -$LIBXMU"
|
||||
fi
|
||||
;;
|
||||
|
||||
hpux*)
|
||||
dnl Assar Westerlund <assar@sics.se> says this is necessary for
|
||||
dnl HP-UX 10.20, and that it works for HP-UX 0 as well.
|
||||
AC_DEFINE(NO_EDITRES, 1)
|
||||
;;
|
||||
esac
|
||||
|
||||
AC_TRY_LINK(
|
||||
[#include <X11/Intrinsic.h>
|
||||
#include <X11/Xmu/Editres.h>],
|
||||
[_XEditResCheckMessages (0, 0, 0, 0);],
|
||||
[AC_DEFINE([X_TOOLKIT_EDITRES], 1,
|
||||
[Define to 1 if we should use XEditRes.])])
|
||||
LIBS=$OLDLIBS
|
||||
fi
|
||||
fi
|
||||
|
||||
case $opsys in
|
||||
sol2* | unixware )
|
||||
|
|
|
@ -91,11 +91,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include "../lwlib/xlwmenu.h"
|
||||
#endif
|
||||
|
||||
#if !defined (NO_EDITRES)
|
||||
#define HACK_EDITRES
|
||||
extern void _XEditResCheckMessages (Widget, XtPointer, XEvent *, Boolean *);
|
||||
#endif /* not defined NO_EDITRES */
|
||||
|
||||
/* Unique id counter for widgets created by the Lucid Widget Library. */
|
||||
|
||||
extern LWLIB_ID widget_id_tick;
|
||||
|
@ -2662,7 +2657,7 @@ x_window (struct frame *f, long window_prompting)
|
|||
|
||||
hack_wm_protocols (f, shell_widget);
|
||||
|
||||
#ifdef HACK_EDITRES
|
||||
#ifdef X_TOOLKIT_EDITRES
|
||||
XtAddEventHandler (shell_widget, 0, True, _XEditResCheckMessages, 0);
|
||||
#endif
|
||||
|
||||
|
|
|
@ -95,10 +95,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#endif
|
||||
|
||||
#ifdef USE_X_TOOLKIT
|
||||
#if !defined (NO_EDITRES)
|
||||
#define HACK_EDITRES
|
||||
extern void _XEditResCheckMessages (Widget, XtPointer, XEvent *, Boolean *);
|
||||
#endif /* not NO_EDITRES */
|
||||
|
||||
/* Include toolkit specific headers for the scroll bar widget. */
|
||||
|
||||
|
@ -7610,7 +7606,7 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
goto done;
|
||||
}
|
||||
|
||||
#ifdef HACK_EDITRES
|
||||
#ifdef X_TOOLKIT_EDITRES
|
||||
if (event->xclient.message_type == dpyinfo->Xatom_editres)
|
||||
{
|
||||
f = any;
|
||||
|
@ -7619,7 +7615,7 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
NULL, (XEvent *) event, NULL);
|
||||
goto done;
|
||||
}
|
||||
#endif /* HACK_EDITRES */
|
||||
#endif /* X_TOOLKIT_EDITRES */
|
||||
|
||||
if (event->xclient.message_type == dpyinfo->Xatom_DONE
|
||||
|| event->xclient.message_type == dpyinfo->Xatom_PAGE)
|
||||
|
|
|
@ -38,6 +38,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
|
|||
#include <X11/CoreP.h> /* foul, but we need this to use our own
|
||||
window inside a widget instead of one
|
||||
that Xt creates... */
|
||||
#ifdef X_TOOLKIT_EDITRES
|
||||
#include <X11/Xmu/Editres.h>
|
||||
#endif
|
||||
|
||||
typedef Widget xt_or_gtk_widget;
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue