Index: xine-ui-0.99.5/configure.ac =================================================================== --- xine-ui-0.99.5.orig/configure.ac +++ xine-ui-0.99.5/configure.ac @@ -364,6 +364,13 @@ if test "x$with_caca" != "xno"; then if test "x$with_caca" = "xyes" && test "x$have_caca" = "xno"; then AC_MSG_ERROR([CACA support requested, but libcaca 0.99 not found]) fi + AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include + caca_event_t ev;]], + [[ev.type = 0;]] + )], + [], + [AC_DEFINE(CACA_EVENT_OPAQUE, [1], ["Define if struct caca_event is opaque and must not be accessed directly"])] + ) fi AM_CONDITIONAL([HAVE_CACA], [test "x$have_caca" = "xyes"]) Index: xine-ui-0.99.5/src/aaui/main.c =================================================================== --- xine-ui-0.99.5.orig/src/aaui/main.c +++ xine-ui-0.99.5/src/aaui/main.c @@ -593,8 +593,12 @@ static int aaxine_get_key_event(void) { while ( !caca_get_event(aaxine.display, CACA_EVENT_KEY_PRESS, &ev, 50000) && aaxine.running ) ; if (!aaxine.running) return 0; +#ifdef CACA_EVENT_OPAQUE + return caca_get_event_key_ch( &ev ); +#else return ev.data.key.ch; #endif +#endif } /*