[webkit-dev] KWQ Graphics code on Windows
Kevin Ollivier
kevino at theolliviers.com
Fri Jan 20 21:43:35 PST 2006
Hi Krzysztof,
On Jan 20, 2006, at 4:41 PM, Krzysztof Kowalczyk wrote:
> On 1/20/06, David Hyatt <hyatt at apple.com> wrote:
>> How big is the wxWidgets DLL (or DLLs)?
>
> Hard to tell because they don't provide binaries, but judging from
> wxPython 2.6.1, at least 4.7 MB on Windows (the size of
> C:\Python24\Lib\site-packages\wx-2.6-msw-unicode\wx\wxmsw26uh_vc.dll,
> but there's more stuff).
Right, but the other stuff wouldn't be needed for WebKit; they're add-
on UI controls and wxPython wrappers, basically. Also, wxPython
builds about everything wx offers into the DLL (you can build smaller
DLLs with a subset of controls), and leaves assert handling on, along
with some debugging code that wouldn't be included in a "regular"
release app. So 4.7MB is pretty much the "kitchen sink" estimate;
WebKit would probably ship something smaller than that. To be honest,
I use the wxPython DLL myself as none of my clients have complained
about download size and it's convenient to have everything at your
fingertips if you need it.
In any case, I will try building using the modular DLL option, which
builds several smaller libraries instead of one big one (I figure
we'll need base, core, and maybe net), and see how much we can trim
off the size. I'll report back when I get some hard numbers.
> wxPython doesn't seem like a good idea - it's a *huge* (size and
> complexity) dependency.
(Side note: obviously we would be using wxWidgets itself, not the
wxPython wrappers, for a WebKit backend.)
I admit I'm biased here, but I feel that's an exaggeration. The most
complex way of solving the problem, IMHO, would be to roll a new/
custom API; it will be the most maintenance work and require the most
initial design time and implementation effort, with the size benefits
being a savings of, at most, a few MB of disk space on the user's
computer. Then there's the optimization argument, but wxWidgets uses
GDI under the hood and provides access to internals in most cases, so
native optimizations above and beyond what the wx API offers can be
made where needed. Also, the wxWidgets API, unlike other APIs, has
been around and stabilized for far more than 1-2 years. The wx APIs
get a fair amount of testing, and if you check the mailing lists,
you'll see they're quite active, a sign IMHO of a healthy and active
development community.
It seems to me using an existing API brings more benefits than it
takes away, but then again I do have to admit that I don't see why a
few MB of disk space is such a huge issue. After all, look at iTunes
+Quicktime - that's a 34MB download, and takes ~100MB disk space, but
most people don't seem to mind. :-) Compressed, wx will probably add
1-2 MB to the download, if that, and 5 MB max to the disk space
requirements. I personally don't think that's unreasonable.
Kevin
> -- kjk
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at opendarwin.org
> http://www.opendarwin.org/mailman/listinfo/webkit-dev
More information about the webkit-dev
mailing list