[webkit-dev] Win32: hitting the home stretch

Justin Haygood jhaygood at spsu.edu
Sat Jul 8 09:46:54 PDT 2006


Hello Everyone!

The Windows ports of JavaScriptCore and WebCore are hitting the home stretch
for anyone who wants to implement:


JavaScriptCore:
1. The current Win32 collector implementation is MSVC x86 only (using inline
assembly). This should be changed to a C/C++ implementation so that it will
compile on x64 (and potentially) MinGW
2. Bindings is currently not implemented. This can be split up into 2 basic
components:

   1. All uses of CFDictionary need to be changed to HashMap. However, a
   const char * hashing algorithm that uses the string value instead of the
   pointer value needs to be implemented first.
   2. All uses of CFRuntime need to be ported over to a more cross
   platform method. CFRuntime is used for 2 different uses:
      1. threading
      2. callbacks

WebCore:
1. Frames support. This will require work in both WebCore and WebKit
(WebCore has to callback into WebKit for WebKit to create the native
subwindow for WebCore)
2. HTML Canvas support. This will however require porting to the C++
GraphicsContext API and for GraphicsContext to be more complete on Cairo.
(this will also help GTK and I believe wX ports)
3. TransferJobWin needs to be rewritten to be more asynchronous and support
HTTP and HTTPS. This is all possible via WinInet ( the API currently in use
).
4. I noticed that XMLHttpRequest isn't working on Windows. This might be
related to point 3.
5. SVG support. This will probably either require temporarily porting
KCanvas to Cairo for the interim. This isn't as important. (this will also
help GTK and I believe wX ports)

This is just stuff I've noticed over the past year. Finally, a native WebKit
implementation! Web Designers and Web Surfers rejoice!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/webkit-dev/attachments/20060708/5445c4ca/attachment.html


More information about the webkit-dev mailing list