[webkit-dev] Understanding WebKit layering and layering violations

Fady Samuel fsamuel at chromium.org
Fri Jan 6 08:08:20 PST 2012


Hi Adam,

Your diagram is a start. I don't recall all my layering violation
confusions but the latest confusion I had was in regards to what goes in
the Source/WebCore/platform directory?

Why are things like ScrollView ScrollableArea, Timer, or even
NotImplemented or Length in that directory? A lot of these things don't
look like platform-specific code. They're also not necessarily interfaces
to platform-specific code. So what are they? How does one decide something
belongs in Source/WebCore/platform. What can things in this directory
depend on and what can they not depend on?

Thanks,

Fady

On Thu, Jan 5, 2012 at 7:39 PM, Adam Barth <abarth at webkit.org> wrote:

> On Thu, Jan 5, 2012 at 4:18 PM, Fady Samuel <fsamuel at chromium.org> wrote:
> > I've been working on WebKit off and on for a while now but I must admit
> > that, up to this point, I still don't have a firm grasp of all the
> layering
> > in WebKit. What depends on what, and what cannot depend on what? What is
> the
> > motivation of each of these individual layers? I understand the need to
> have
> > WebKit supported under multiple platforms and with any embedder, and but
> I
> > often don't fully understand what constitues a layering violation or why.
> >
> > Could someone please summarize or provide a link that explains all this?
> I
> > think this would be beneficial to the entire WebKit community!
>
> There's one diagram:
>
>
> https://docs.google.com/drawings/d/10WlCj2J3arxf4cDGRKteNinaP755iFnmYtYtnNSCQOY/edit?authkey=CP6plYAI&hl=en_US
>
> It's not perfectly accurate because it's something of a proposal, but
> it should give you a high-level view.  Do you have specific questions?
>  I'm happy to draw more pictures if that would be helpful.
>
> Adam
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20120106/c8f8e970/attachment.html>


More information about the webkit-dev mailing list