From: Joakim Verona Date: Wed, 12 Jun 2013 10:32:25 +0000 (+0200) Subject: Merge branch 'trunk' into xwidget X-Git-Tag: emacs-25.0.90~2906 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e6fa6da6899bf1b4877b96c450eae3934085d560;p=emacs.git Merge branch 'trunk' into xwidget Conflicts: src/Makefile.in src/keyboard.c src/termhooks.h --- e6fa6da6899bf1b4877b96c450eae3934085d560 diff --cc configure.ac index e750ffeba96,656255c0e9a..67015b19e36 --- a/configure.ac +++ b/configure.ac @@@ -200,10 -200,24 +200,26 @@@ OPTION_DEFAULT_ON([gconf],[don't compil OPTION_DEFAULT_ON([gsettings],[don't compile with GSettings support]) OPTION_DEFAULT_ON([selinux],[don't compile with SELinux support]) OPTION_DEFAULT_ON([gnutls],[don't use -lgnutls for SSL/TLS support]) - OPTION_DEFAULT_ON([inotify],[don't compile with inotify (file-watch) support]) + + AC_ARG_WITH([file-notification],[AS_HELP_STRING([--with-file-notification=LIB], + [use a file notification library (LIB one of: yes, gfile, inotify, w32, no)])], + [ case "${withval}" in + y | ye | yes ) val=yes ;; + n | no ) val=no ;; + g | gf | gfi | gfil | gfile ) val=gfile ;; + i | in | ino | inot | inoti | inotif | inotify ) val=inotify ;; + w | w3 | w32 ) val=w32 ;; + * ) AC_MSG_ERROR([`--with-file-notification=$withval' is invalid; + this option's value should be `yes', `no', `gfile', `inotify' or `w32'. + `yes' is a synonym for `w32' on MS-Windows, and for `gfile' otherwise.]) + ;; + esac + with_file_notification=$val + ], + [with_file_notification=$with_features]) +OPTION_DEFAULT_OFF([xwidgets],[enable use of some gtk widgets it Emacs buffers]) + ## For the times when you want to build Emacs but don't have ## a suitable makeinfo, and can live without the manuals. dnl http://lists.gnu.org/archive/html/emacs-devel/2008-04/msg01844.html diff --cc src/Makefile.in index bf3c9bf3b6b,90083eb910f..8d8133c9e6c --- a/src/Makefile.in +++ b/src/Makefile.in @@@ -344,10 -345,9 +354,10 @@@ ALL_CFLAGS=-Demacs $(MYCPPFLAGS) -I. -I $(C_SWITCH_MACHINE) $(C_SWITCH_SYSTEM) $(C_SWITCH_X_SITE) \ $(GNUSTEP_CFLAGS) $(CFLAGS_SOUND) $(RSVG_CFLAGS) $(IMAGEMAGICK_CFLAGS) \ $(LIBXML2_CFLAGS) $(DBUS_CFLAGS) $(XRANDR_CFLAGS) $(XINERAMA_CFLAGS) \ + $(WEBKIT_CFLAGS) $(CLUTTER_CFLAGS) $(GIR_CFLAGS) \ $(SETTINGS_CFLAGS) $(FREETYPE_CFLAGS) $(FONTCONFIG_CFLAGS) \ $(LIBOTF_CFLAGS) $(M17N_FLT_CFLAGS) $(DEPFLAGS) \ - $(LIBGNUTLS_CFLAGS) \ + $(LIBGNUTLS_CFLAGS) $(GFILENOTIFY_CFLAGS) \ $(WARN_CFLAGS) $(WERROR_CFLAGS) $(CFLAGS) ALL_OBJC_CFLAGS=$(ALL_CFLAGS) $(GNU_OBJC_CFLAGS) @@@ -373,14 -373,12 +383,14 @@@ base_obj = dispnew.o frame.o scroll.o x syntax.o $(UNEXEC_OBJ) bytecode.o \ process.o gnutls.o callproc.o \ region-cache.o sound.o atimer.o \ - doprnt.o intervals.o textprop.o composite.o xml.o inotify.o \ + doprnt.o intervals.o textprop.o composite.o xml.o $(NOTIFY_OBJ) \ + xwidget.o \ profiler.o \ $(MSDOS_OBJ) $(MSDOS_X_OBJ) $(NS_OBJ) $(CYGWIN_OBJ) $(FONT_OBJ) \ - $(W32_OBJ) $(WINDOW_SYSTEM_OBJ) + $(W32_OBJ) $(WINDOW_SYSTEM_OBJ) $(XGSELOBJ) obj = $(base_obj) $(NS_OBJC_OBJ) +xwidget.o: xwidget.c xwidget.h ## Object files used on some machine or other. ## These go in the DOC file on all machines in case they are needed. ## Some of them have no DOC entries, but it does no harm to have them diff --cc src/keyboard.c index 7c3056079be,7cb4c4b91e3..6129fdd26c8 --- a/src/keyboard.c +++ b/src/keyboard.c @@@ -317,12 -314,9 +314,12 @@@ static Lisp_Object Qsave_session #ifdef HAVE_DBUS static Lisp_Object Qdbus_event; #endif +#ifdef HAVE_XWIDGETS +Lisp_Object Qxwidget_event; +#endif - #ifdef HAVE_INOTIFY - static Lisp_Object Qfile_inotify; - #endif /* HAVE_INOTIFY */ + #ifdef USE_FILE_NOTIFY + static Lisp_Object Qfile_notify; + #endif /* USE_FILE_NOTIFY */ static Lisp_Object Qconfig_changed_event; /* Lisp_Object Qmouse_movement; - also an event header */ @@@ -6001,21 -5985,12 +6002,21 @@@ make_lispy_event (struct input_event *e } #endif /* HAVE_DBUS */ +#ifdef HAVE_XWIDGETS + case XWIDGET_EVENT: + { + printf("cool, an xwidget event arrived in make_lispy_event!\n"); + return Fcons (Qxwidget_event,event->arg); + } +#endif /* HAVE_XWIDGETS */ + + - #ifdef HAVE_INOTIFY + #if defined HAVE_GFILENOTIFY || defined HAVE_INOTIFY case FILE_NOTIFY_EVENT: { - return Fcons (Qfile_inotify, event->arg); + return Fcons (Qfile_notify, event->arg); } - #endif /* HAVE_INOTIFY */ + #endif /* defined HAVE_GFILENOTIFY || defined HAVE_INOTIFY */ case CONFIG_CHANGED_EVENT: return Fcons (Qconfig_changed_event, @@@ -11033,13 -11013,9 +11039,13 @@@ syms_of_keyboard (void DEFSYM (Qdbus_event, "dbus-event"); #endif +#ifdef HAVE_XWIDGETS + Qxwidget_event = intern ("xwidget-event"); + staticpro (&Qxwidget_event); +#endif /* HAVE_XWIDGETS */ - #ifdef HAVE_INOTIFY - DEFSYM (Qfile_inotify, "file-inotify"); - #endif /* HAVE_INOTIFY */ + #ifdef USE_FILE_NOTIFY + DEFSYM (Qfile_notify, "file-notify"); + #endif /* USE_FILE_NOTIFY */ DEFSYM (QCenable, ":enable"); DEFSYM (QCvisible, ":visible"); diff --cc src/termhooks.h index cdb788cfb07,4f3fa9cb47f..fdbeda076b7 --- a/src/termhooks.h +++ b/src/termhooks.h @@@ -211,11 -211,8 +211,11 @@@ enum event_kin /* Non-key system events (e.g. application menu events) */ , NS_NONKEY_EVENT #endif - +#ifdef HAVE_XWIDGETS + /* events generated by xwidgets*/ + , XWIDGET_EVENT +#endif - #if defined (HAVE_INOTIFY) || defined (HAVE_NTGUI) + #ifdef USE_FILE_NOTIFY /* File or directory was changed. */ , FILE_NOTIFY_EVENT #endif