I have been a little slack recently on my port of Google Gears to Windows CE powered devices. However progress is still being made and I feel that I am getting closer to a version which has all features fully functional.
I have checked in changes to the google-gears-ce SVN repository which enable the worker pool feature of Google Gears to operate correctly on Windows CE. Once again it was a minor bug fix once I tracked down the problem. Windows CE will not allow a window with a client rectangle of 0×0 pixels to be created. Google Gears was creating such a window for thread syncronisation purposes to enable it to pass asynchronous results back to the main GUI thread. The solution was to change the code to create a window of 5×5 pixels. Although the window now has a larger client rectangle, it is still invisible due to the window being created without the WS_VISIBLE window style being set.
I have also checked in an initial build script (build-ppc.bat) which attempts to build a Google Gears CE executable for Windows Mobile powered PDAs. At present this won’t even compile due to missing header files within the Windows Mobile SDK etc, but it’s a start down the road of my initial aim for this project.
The most significant outstanding bug still to be resolved, is the issue I am having around getting the offline mode to work. Obviously this is a major part of the google gears solution and it is a bit disappointing that it has held out on me for so long. The Asyncronous Pluggable Protocol implementation Google Gears utilises to hook into requests for http:// and https:// URLs, is failing to initialise due to some differences between the platforms. The good news is that it appears that I am not the only one finding this problem and it does look solveable. It may however require a far amount of new code to be written (rather than the existing bug fixes which have turned out to be one or two lines here or there).
Once this final hurdle is overcame, it should be fairly easy to tidy up a couple of minor lose ends and have a fully functional version of Google Gears working on Windows CE.