<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Mar 30, 2010, at 5:19 PM, Adam Barth wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>The platform directory contains a lot more than just platform-specific&nbsp;files. It's the platform upon which WebCore is built. For example,&nbsp;KURL is in platform even though it's shared by all the ports. I think&nbsp;the main consideration for whether to put things in platform relate to&nbsp;the dependencies. For example, platform doesn't depend on the rest of&nbsp;WebCore.<br></div></blockquote><div><br></div>That’s right.</div><div><br></div><div>The WebCore/platform directory’s name is a bit of a pun. It contains the <b>platform abstraction</b>, exposing things present in the underlying operating system such as a way to find out about events and screen sizes and such, and also contains other basics that provide a <b>“platform”</b> for the rest of&nbsp;WebCore&nbsp;code, without dependencies on that code. It can be though of as a largely-separate lower level module within WebCore.</div><div><br></div><div>The platform directory <b>does not</b> contain all platform-specific files. Nor should it. Directories such as WebCore/loader and WebCore/plugins contain platform-specific subdirectories as needed.</div><div><br><blockquote type="cite"><div>As for whether audio should be a top-level concept, that might make&nbsp;sense. It seems similar to notifications and storage, which are&nbsp;top-level concepts.<br></div></blockquote></div><br><div>Code that is specifically about how the web models audio, and not how that is integrated with the underlying audio capabilities of the OS, more naturally would go somewhere outside the platform directory. A&nbsp;top level directory named audio might be confusing since HTMLAudioElement would not be in there.</div><div><br></div><div>&nbsp;&nbsp; &nbsp;-- Darin</div><div><br></div></body></html>