Win32: Port Directory Monitoring to New GLocalFileMonitor
authorChun-wei Fan <fanchunwei@src.gnome.org>
Thu, 12 Mar 2015 11:20:30 +0000 (19:20 +0800)
committerRyan Lortie <desrt@desrt.ca>
Fri, 20 Mar 2015 16:01:35 +0000 (12:01 -0400)
commit671292bbb284735aead726f55fbd8c99f9793959
treeb4028c7d2c4e95139536ef0e75375cc44e98f79d
parentd682df186e9cca2b8db0e921450a4db31cf0c467
Win32: Port Directory Monitoring to New GLocalFileMonitor

This WIP patch moves the Windows Directory Monitoring code to the new
GLocalFileMonitor mechanism, and adds file monitoring in the process.

Progress from previous patch:
-File renames are now properly supported, but G_FILE_MONITOR_EVENT_MOVED_IN
 and G_FILE_MONITOR_EVENT_MOVED_OUT needs to be investigated, as
 ReadDirectoryChangesW() seems to send FILE_ACTION_REMOVED when a file is
 moved out of a directory.
-Events are handled for both the long and short (8.3) variants of the
 filenames, and files monitored will report changes when it is changed
 via its short or long filenames.

Things to be done:
-Perhaps find out about attribute changes in files in a monitored
 directory; if a file is monitored, attribute changes are correctly
 handled.
-Investigate on G_FILE_MONITOR_EVENT_MOVED_OUT,
 G_FILE_MONITOR_EVENT_MOVED_IN, G_FILE_MONITOR_EVENT_PRE_UNMOUNT,
 G_FILE_MONITOR_EVENT_UNMOUNTED.
-Investigate on the "boredom" algoritm, and see how we can do it on
 Windows.

https://bugzilla.gnome.org/show_bug.cgi?id=730116
gio/Makefile.am
gio/win32/Makefile.am
gio/win32/gwin32directorymonitor.c [deleted file]
gio/win32/gwin32directorymonitor.h [deleted file]
gio/win32/gwin32filemonitor.c [new file with mode: 0644]
gio/win32/gwin32filemonitor.h [new file with mode: 0644]
gio/win32/gwin32fsmonitorutils.c [new file with mode: 0644]
gio/win32/gwin32fsmonitorutils.h [new file with mode: 0644]