diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 92 | ||||
| -rw-r--r-- | src/deps.mk | 1 | ||||
| -rw-r--r-- | src/termhooks.h | 3 |
3 files changed, 60 insertions, 36 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index ac2299a4f79..584ee17cc1b 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,63 @@ | |||
| 1 | 2012-12-10 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | Support for filesystem notifications on MS-Windows. | ||
| 4 | * w32proc.c (sys_select): If drain_message_queue returns non-zero, | ||
| 5 | and this is a TTY frame, signal the caller that keyboard input is | ||
| 6 | available. | ||
| 7 | |||
| 8 | * w32xfns.c (drain_message_queue): Now returns an int: an | ||
| 9 | indication whether any WM_EMACS_FILENOTIFY messages were found in | ||
| 10 | the queue. | ||
| 11 | |||
| 12 | * w32inevt.c (handle_file_notifications): New function. | ||
| 13 | (w32_console_read_socket): Call it to process file notifications. | ||
| 14 | |||
| 15 | * w32console.c (initialize_w32_display): Record the main thread ID | ||
| 16 | in dwMainThreadId. | ||
| 17 | |||
| 18 | * deps.mk (inotify.o): New dependency list. | ||
| 19 | |||
| 20 | * Makefile.in (SOME_MACHINE_OBJECTS): Add w32notify.o. | ||
| 21 | |||
| 22 | * w32term.h (WM_EMACS_FILENOTIFY): New custom message. | ||
| 23 | (WM_EMACS_END): Bump value by 1. | ||
| 24 | (notification_buffer_in_use, file_notifications) | ||
| 25 | (notifications_size, notifications_desc): Declare. | ||
| 26 | (w32_get_watch_object, lispy_file_action, globals_of_w32notify): | ||
| 27 | Add prototypes. | ||
| 28 | |||
| 29 | * w32term.c (lispy_file_action, queue_notifications): New functions. | ||
| 30 | (syms_of_w32term) <Qadded, Qremoved, Qmodified, Qrenamed_from> | ||
| 31 | <Qrenamed_to>: New symbols. | ||
| 32 | (w32_read_socket): Handle the WM_EMACS_FILENOTIFY message. | ||
| 33 | |||
| 34 | * w32notify.c: New file, implements file event notifications for | ||
| 35 | MS-Windows. | ||
| 36 | |||
| 37 | * w32fns.c (w32_wnd_proc): Handle the WM_EMACS_FILENOTIFY message | ||
| 38 | by posting it to the w32_read_socket queue. | ||
| 39 | |||
| 40 | * termhooks.h (enum event_kind) [HAVE_NTGUI]: Support | ||
| 41 | FILE_NOTIFY_EVENT. | ||
| 42 | |||
| 43 | * makefile.w32-in (OBJ2): Add $(BLD)/w32notify.$(O). | ||
| 44 | (GLOBAL_SOURCES): Add w32notify.c | ||
| 45 | ($(BLD)/w32notify.$(O)): New set of dependencies. | ||
| 46 | |||
| 47 | * lisp.h (syms_of_w32notify) [WINDOWSNT]: Add prototype. | ||
| 48 | |||
| 49 | * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]: Handle | ||
| 50 | FILE_NOTIFY_EVENT. | ||
| 51 | (syms_of_keyboard) [HAVE_NTGUI] <Qfile_notify>: New symbol. | ||
| 52 | (keys_of_keyboard) [WINDOWSNT]: Bind file-notify to | ||
| 53 | w32notify-handle-event by default. | ||
| 54 | |||
| 55 | * emacs.c (main) [WINDOWSNT]: Call globals_of_w32notify and | ||
| 56 | syms_of_w32notify. | ||
| 57 | |||
| 1 | 2012-12-10 RĂ¼diger Sonderfeld <ruediger@c-plusplus.de> | 58 | 2012-12-10 RĂ¼diger Sonderfeld <ruediger@c-plusplus.de> |
| 2 | 59 | ||
| 60 | Support for filesystem notifications on GNU/Linux via inotify. | ||
| 3 | * termhooks.h (enum event_kind) [HAVE_INOTIFY]: Add | 61 | * termhooks.h (enum event_kind) [HAVE_INOTIFY]: Add |
| 4 | FILE_NOTIFY_EVENT. | 62 | FILE_NOTIFY_EVENT. |
| 5 | 63 | ||
| @@ -2168,40 +2226,6 @@ | |||
| 2168 | (x_set_icon_name, ns_set_name, ns_set_name_as_filename): | 2226 | (x_set_icon_name, ns_set_name, ns_set_name_as_filename): |
| 2169 | Remove ns_in_resize check. | 2227 | Remove ns_in_resize check. |
| 2170 | 2228 | ||
| 2171 | 2012-10-07 Eli Zaretskii <eliz@gnu.org> | ||
| 2172 | |||
| 2173 | * w32term.h (WM_EMACS_FILENOTIFY): New custom message. | ||
| 2174 | (WM_EMACS_END): Bump value by 1. | ||
| 2175 | |||
| 2176 | * w32term.c (lispy_file_action, queue_notifications): New functions. | ||
| 2177 | (syms_of_w32term) <Qadded, Qremoved, Qmodified, Qrenamed_from> | ||
| 2178 | <Qrenamed_to>: New symbols. | ||
| 2179 | |||
| 2180 | * w32notify.c: New file, implement file event notifications for | ||
| 2181 | MS-Windows. | ||
| 2182 | |||
| 2183 | * w32fns.c (w32_wnd_proc): Handle the WM_EMACS_FILENOTIFY message | ||
| 2184 | by posting it to the w32_read_socket queue. | ||
| 2185 | |||
| 2186 | * termhooks.h (enum event_kind) [WINDOWSNT]: New event kind | ||
| 2187 | FILE_NOTIFY_EVENT. | ||
| 2188 | |||
| 2189 | * makefile.w32-in (OBJ2): Add $(BLD)/w32notify.$(O). | ||
| 2190 | (GLOBAL_SOURCES): Add w32notify.c | ||
| 2191 | ($(BLD)/w32notify.$(O)): New set of dependencies. | ||
| 2192 | |||
| 2193 | * lisp.h (syms_of_w32notify) [WINDOWSNT]: Add prototype. | ||
| 2194 | |||
| 2195 | * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]: Handle | ||
| 2196 | FILE_NOTIFY_EVENT. | ||
| 2197 | (syms_of_keyboard) [WINDOWSNT] <Qfile_notify>: New symbol. | ||
| 2198 | (keys_of_keyboard) [WINDOWSNT]: Bind file-notify to | ||
| 2199 | w32notify-handle-event by default. | ||
| 2200 | |||
| 2201 | * emacs.c (main) [WINDOWSNT]: Call syms_of_w32notify. | ||
| 2202 | |||
| 2203 | * alloc.c (NSTATICS): Enlarge to 0x660. | ||
| 2204 | |||
| 2205 | 2012-10-07 Paul Eggert <eggert@cs.ucla.edu> | 2229 | 2012-10-07 Paul Eggert <eggert@cs.ucla.edu> |
| 2206 | 2230 | ||
| 2207 | Improve sys_siglist detection. | 2231 | Improve sys_siglist detection. |
diff --git a/src/deps.mk b/src/deps.mk index c7316a24dad..beca5f7c6bc 100644 --- a/src/deps.mk +++ b/src/deps.mk | |||
| @@ -128,6 +128,7 @@ image.o: image.c frame.h window.h dispextern.h blockinput.h atimer.h \ | |||
| 128 | indent.o: indent.c frame.h window.h indent.h buffer.h lisp.h $(config_h) \ | 128 | indent.o: indent.c frame.h window.h indent.h buffer.h lisp.h $(config_h) \ |
| 129 | termchar.h termopts.h disptab.h region-cache.h character.h category.h \ | 129 | termchar.h termopts.h disptab.h region-cache.h character.h category.h \ |
| 130 | keyboard.h systime.h coding.h $(INTERVALS_H) globals.h | 130 | keyboard.h systime.h coding.h $(INTERVALS_H) globals.h |
| 131 | inotify.o: inotify.c lisp.h coding.h process.h keyboard.h frame.h termhooks.h | ||
| 131 | insdel.o: insdel.c window.h buffer.h $(INTERVALS_H) blockinput.h character.h \ | 132 | insdel.o: insdel.c window.h buffer.h $(INTERVALS_H) blockinput.h character.h \ |
| 132 | atimer.h systime.h region-cache.h lisp.h globals.h $(config_h) | 133 | atimer.h systime.h region-cache.h lisp.h globals.h $(config_h) |
| 133 | keyboard.o: keyboard.c termchar.h termhooks.h termopts.h buffer.h character.h \ | 134 | keyboard.o: keyboard.c termchar.h termhooks.h termopts.h buffer.h character.h \ |
diff --git a/src/termhooks.h b/src/termhooks.h index 5e73127a699..1a261bacdc5 100644 --- a/src/termhooks.h +++ b/src/termhooks.h | |||
| @@ -201,7 +201,6 @@ enum event_kind | |||
| 201 | On X, the window manager seems to grab the keys it wants | 201 | On X, the window manager seems to grab the keys it wants |
| 202 | first, so this is not a problem there. */ | 202 | first, so this is not a problem there. */ |
| 203 | , MULTIMEDIA_KEY_EVENT | 203 | , MULTIMEDIA_KEY_EVENT |
| 204 | , FILE_NOTIFY_EVENT | ||
| 205 | #endif | 204 | #endif |
| 206 | 205 | ||
| 207 | #ifdef HAVE_NS | 206 | #ifdef HAVE_NS |
| @@ -212,7 +211,7 @@ enum event_kind | |||
| 212 | , NS_NONKEY_EVENT | 211 | , NS_NONKEY_EVENT |
| 213 | #endif | 212 | #endif |
| 214 | 213 | ||
| 215 | #ifdef HAVE_INOTIFY | 214 | #if defined (HAVE_INOTIFY) || defined (HAVE_NTGUI) |
| 216 | /* File or directory was changed. */ | 215 | /* File or directory was changed. */ |
| 217 | , FILE_NOTIFY_EVENT | 216 | , FILE_NOTIFY_EVENT |
| 218 | #endif | 217 | #endif |