2006-06-15  Joost de Valk  <jdevalk@opendarwin.org>

        Patch by David Kilzer, reviewed by Geoffrey Garen, landed by Joost de Valk.

        Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9407

        Improve wording of first paragraph of webkit site.

        * index.html: 

2006-06-08  Timothy Hatcher  <timothy@apple.com>

        Reviewed by Darin.

        Include our own copies of the BSD and LGPL licenses.

        * coding/bsd-license.html: Added.
        * coding/lgpl-license.html: Added.
        * nav.inc: link to our copies of the licenses

2006-06-04  David Kilzer  <ddkilzer@kilzer.net>

        Reviewed by ggaren.

        http://bugzilla.opendarwin.org/show_bug.cgi?id=9303
        JavaScript error when loading WebKit blog page

        * blog/wp-content/themes/webkit/sidebar.php: Removed unused JavaScript.  Synced with nav.inc.
        * nav.inc: Removed evil tabs--whitespace change only.

2006-05-24  Bradley Morrison  <bradley.morrison@nokia.com>

        Reviewed by John Sullivan.

        * quality/lifecycle.html: mentions case of PlatformOnly bugs
                                  and 'other' bug databases.

2006-05-25  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Timothy Hatcher.

        Adding Google Analytics tracking code, to create stats of our webpages.

        * blog/wp-content/themes/webkit/footer.php:
        * footer.inc:

2006-05-23  Bradley Morrison  <bradley.morrison@nokia.com>

        Reviewed by Timothy.

        * index.html: Link to Nokia's S60 WebKit.

2006-05-08  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Anders.

        * building/checkout.html: changed link to point to universal binary. Thanks to Duncan Wilcox for hinting this one.

2006-04-28  Eric Seidel  <eseidel@apple.com>

        Reviewed by andersca.

        * projects/svg/status.xml: Update to reflect current status.

2006-04-18  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Eric Seidel .

        Added WebKit detection scripts and a small howto + a new section to our
        website: Web Developers.

        * nav.inc:
        * webdevelopers: Added.
        * webdevelopers/index.html: Added.
        * webdevelopers/webkit_version.html: Added.
        * webdevelopers/webkit_version.js: Added.
        * webdevelopers/webkit_version_xl.html: Added.
        * webdevelopers/webkit_version_xl.js: Added.

2006-04-17  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by ggaren.

        * blog/wp-config.php: passwords and users don't belong in SVN. 

2006-04-16  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Maciej.

        * quality/lifecycle.html: small textual change to my contact info;
        * quality/reporting.html: added non-ADC bug report URL.

2006-04-16  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Maciej.

        * contact.html: added URL's for trac, CIA, webkit-unassigned and build bot. These probably need to be on other places to but we will do that later on.

2006-04-13  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Maciej.

        * projects/compat/hitlist.html: Added Google Calendar to the list
        in place of www.hangseng.com/ebanking

2006-04-11  Eric Seidel  <eseidel@apple.com>

        Reviewed by andersca.

        * quality/testing.html: fix run-mozilla-tests to run-javascriptcore-tests

2006-04-10  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Beth. 

        * projects/compat/hitlist.html: updated dates

2006-03-23  David Kilzer  <ddkilzer@kilzer.ent>

        Reviewed by Darin.

        - Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7918
        Coding style doc uses illegal entity

        * coding/coding-style.html: Changed &emdash; to &mdash;.

2006-03-15  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by TimH.

        * projects/compat/hitlist.html: Moved delta.com to the alumni list,
        added description of alumni list.

2006-03-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Beth.

        Clarified that sites on the list aren't necessarily "broken."

        * projects/compat/hitlist.html:

2006-03-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Beth.

        Updated links to gap and bananarepublic bugs.

        * projects/compat/hitlist.html:

2006-03-06  Mitz Pettel  <opendarwin.org@mitzpettel.com>

        Reviewed by Darin.

        Change "Mail.app" to "Mail".
        
        * index.html:
        * projects/editing/index.html:

2006-03-06  Geoffrey Garen  <ggaren@apple.com>

        Oops, accidentally deleted the archives links.

        * blog/wp-content/themes/webkit/sidebar.php: Bring them back.

2006-03-06  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Beth.

        Some site cleanup.

        * blog/wp-content/themes/webkit/sidebar.php: sync with the sidebar
        for the rest of the site.
        * quality/lifecycle.html: add Joost's homepage to his contact info.

2006-03-06  Geoffrey Garen  <ggaren@apple.com>

        Doing penance after being set straight by Joost.

        * projects/compat/hitlist.html: Remove slur against QA. My humblest 
        apologies.

2006-03-06  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Maciej, Darin.

        Added Safari Compatibility Hit List.

        * nav.inc: Link to the hit list.
        * projects/compat/hitlist.html: Added.
        * projects/compat/index.html: Link to the hit list.

2006-03-02  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        * quality/reporting.html: display a nicer message to those using 10.2

2006-02-26  David Kilzer  <ddkilzer@kilzer.net>

        Reviewed by Maciej, landed by Geoff.

        Change "Deployment" to "Release" and "Development" to "Debug".
        Update latest Xcode version from 2.2 to 2.2.1.

        * building/build.html

2006-02-21  Geoffrey Garen  <ggaren@apple.com>

        Accidentally wrote "Release" instead of "Debug" in my last patch.

        * quality/leakhunting.html:

2006-02-20  Geoffrey Garen  <ggaren@apple.com>

        Some quick proof-reading of the patch I just landed -- no review
        necessary.

        * quality/leakhunting.html:

2006-02-21  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Darin, Geoff.

        Added a page about leakhunting, based on the info Sullivan gave in two blogposts about it. (posts 20 and 24)

        Added this page to the menu, adding in an extra section header
"Testing" as well.

        * nav.inc:
        * quality/leakhunting.html: Added.

2006-02-19  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Darin.

        Fixed Bugzilla URL's
                
        * projects/forms/index.html:
        * projects/html/index.html:
        * projects/xslt/index.html:

2006-02-19  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Darin.

        Made line-height global instead of just for p

        Editing: 
        fixed bugzilla link, added starting <p> to first paragraph
        removed paragraph about tab-stops

        * css/main.css:
        * projects/editing/index.html:

2006-02-17  Darin Adler  <darin@apple.com>

        * coding/coding-style.html: Mention other non-function brace cases.

2006-02-17  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Tim H.

        Added left position and margin-bottom to blog footer.

        * css/main.css:

2006-02-16  Timothy Hatcher  <timothy@apple.com>

        Reviewed by Maciej.
        
        Fixes PNGs with 8bit alpha on IE.

        * css/ie.css: attach the pngbehavior.htc to img tags
        * images/blank.png: Added.
        * index.html: add the width and height to the download img
        * pngbehavior.htc: Added.

2006-02-16  Justin Garcia  <justin.garcia@apple.com>

        Changed by Darin on my machine.

        * coding/coding-style.html: Re-merged in changes Darin made to the guidelines
        a few days back. 

2006-02-16  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed and landed by Maciej.

        Made the author name bold on the frontpage.
        Moved the "Posted by" line up under the title and made the author name
bold in single view.

        * blog/wp-content/themes/webkit/index.php:
        * blog/wp-content/themes/webkit/single.php:

2006-02-15  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Tim H.

        Updated the site to use the new layout.

        * .htaccess: Added.
        * ChangeLog:
        * blog/wp-content/themes/classic: Removed.
        * blog/wp-content/themes/classic/comments-popup.php: Removed.
        * blog/wp-content/themes/classic/comments.php: Removed.
        * blog/wp-content/themes/classic/footer.php: Removed.
        * blog/wp-content/themes/classic/header.php: Removed.
        * blog/wp-content/themes/classic/index.php: Removed.
        * blog/wp-content/themes/classic/sidebar.php: Removed.
        * blog/wp-content/themes/classic/style.css: Removed.
        * blog/wp-content/themes/default: Removed.
        * blog/wp-content/themes/default/404.php: Removed.
        * blog/wp-content/themes/default/archive.php: Removed.
        * blog/wp-content/themes/default/archives.php: Removed.
        * blog/wp-content/themes/default/comments-popup.php: Removed.
        * blog/wp-content/themes/default/comments.php: Removed.
        * blog/wp-content/themes/default/footer.php: Removed.
        * blog/wp-content/themes/default/header.php: Removed.
        * blog/wp-content/themes/default/images: Removed.
        * blog/wp-content/themes/default/images/kubrickbg.jpg: Removed.
        * blog/wp-content/themes/default/images/kubrickbgcolor.jpg: Removed.
        * blog/wp-content/themes/default/images/kubrickbgwide.jpg: Removed.
        * blog/wp-content/themes/default/images/kubrickfooter.jpg: Removed.
        * blog/wp-content/themes/default/images/kubrickheader.jpg: Removed.
        * blog/wp-content/themes/default/index.php: Removed.
        * blog/wp-content/themes/default/links.php: Removed.
        * blog/wp-content/themes/default/page.php: Removed.
        * blog/wp-content/themes/default/search.php: Removed.
        * blog/wp-content/themes/default/searchform.php: Removed.
        * blog/wp-content/themes/default/sidebar.php: Removed.
        * blog/wp-content/themes/default/single.php: Removed.
        * blog/wp-content/themes/default/style.css: Removed.
        * blog/wp-content/themes/webkit/404.php:
        * blog/wp-content/themes/webkit/archive.php:
        * blog/wp-content/themes/webkit/archives.php:
        * blog/wp-content/themes/webkit/footer.php:
        * blog/wp-content/themes/webkit/header.php:
        * blog/wp-content/themes/webkit/images: Removed.
        * blog/wp-content/themes/webkit/images/bluebanner.png: Removed.
        * blog/wp-content/themes/webkit/images/kubrickbg.jpg: Removed.
        * blog/wp-content/themes/webkit/images/kubrickbgcolor.jpg: Removed.
        * blog/wp-content/themes/webkit/images/kubrickbgwide.jpg: Removed.
        * blog/wp-content/themes/webkit/images/kubrickfooter.jpg: Removed.
        * blog/wp-content/themes/webkit/images/kubrickheader.jpg: Removed.
        * blog/wp-content/themes/webkit/images/separator.png: Removed.
        * blog/wp-content/themes/webkit/images/webkit-background.png: Removed.
        * blog/wp-content/themes/webkit/index.php:
        * blog/wp-content/themes/webkit/page.php:
        * blog/wp-content/themes/webkit/search.php:
        * blog/wp-content/themes/webkit/sidebar.php:
        * blog/wp-content/themes/webkit/single.php:
        * blog/wp-content/themes/webkit/style.css:
        * building/build.html:
        * building/checkout.html:
        * coding/coding-style.html:
        * coding/contributing.html:
        * contact.html:
        * css: Added.
        * css/blue.css: Added.
        * css/gray.css: Added.
        * css/green.css: Added.
        * css/ie.css: Added.
        * css/main.css: Added.
        * css/pink.css: Added.
        * css/purple.css: Added.
        * css/yellow.css: Added.
        * footer.inc: Added.
        * header.inc: Added.
        * images/blue-background.png: Added.
        * images/blue-bullet.png: Added.
        * images/bluebanner.png: Removed.
        * images/download.png: Added.
        * images/end.png: Added.
        * images/gray-background.png: Added.
        * images/green-background.png: Added.
        * images/green-bullet.png: Added.
        * images/icon-gold.png: Added.
        * images/icon.png: Added.
        * images/ie-nav.png: Added.
        * images/middle.png: Added.
        * images/nav.png: Added.
        * images/pink-background.png: Added.
        * images/pink-bullet.png: Added.
        * images/purple-background.png: Added.
        * images/purple-bullet.png: Added.
        * images/separator.png: Removed.
        * images/webkit-background.png: Removed.
        * images/welcomeopen.gif: Removed.
        * images/yellow-background.png: Added.
        * images/yellow-bullet.png: Added.
        * index.html:
        * nav.inc: Added.
        * projects/accessibility/index.html:
        * projects/cleanup/index.html:
        * projects/compat/index.html:
        * projects/css/index.html:
        * projects/documentation/index.html:
        * projects/dom/index.html:
        * projects/editing/index.html:
        * projects/forms/index.html:
        * projects/html/index.html:
        * projects/index.html:
        * projects/javascript/index.html:
        * projects/layout/index.html:
        * projects/mathml/index.html:
        * projects/performance/index.html:
        * projects/plugins/index.html:
        * projects/portability/index.html:
        * projects/printing/index.html:
        * projects/svg/index.html:
        * projects/webkit/index.html:
        * projects/xml/index.html:
        * projects/xslt/index.html:
        * quality/bugpriorities.html:
        * quality/bugwriting.html:
        * quality/bugzilla.html:
        * quality/lifecycle.html:
        * quality/reduction.html:
        * quality/reporting.html:
        * quality/testing.html:
        * quality/testwriting.html:
        * sidebar.css: Removed.
        * sidebar.html: Removed.
        * webkitdev.css: Removed.

2006-02-15  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Tim H.

        Updated page to show 10.4.4 or 10.4.5
        Added support for recognizing Shiira.

        * quality/reporting.html:

2006-02-12  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by eseidel.

        Added a little piece of text to the page about reductions, pointing to the bugzilla page. 

        Changed "Sign up for a" into "Create a" bugzilla account.

        * quality/reduction.html:
        * quality/reporting.html:

2006-02-12  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Darin.

        Added a Bugzilla page, which contains information about creating a Bugzilla account, what editbugs and canconfirm
        bits are and how to get them.
        
        Changed link in reporting page to link to Bugzilla page.
        
        * quality/bugzilla.html: Added.
        * quality/reporting.html:

2006-02-12  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by eseidel.

        - Changed 10.2 paragraph to say Mac OS X instead of just OS X
        - Detabified the file.

        * quality/reporting.html:

2006-02-10  Darin Adler  <darin@apple.com>

        * index.html: Fixed a typo in a link.

2006-02-10  Darin Adler  <darin@apple.com>

        * building/checkout.html: Fixed a spelling mistake.

2006-02-10  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed and landed by Anders.

        http://bugzilla.opendarwin.org/show_bug.cgi?id=7164
        Code cleanup

        Changed <div id="banner" to <h1 id="banner"
        global cleanup of CSS and code

        * building/build.html:
        * building/checkout.html:
        * coding/coding-style.html:
        * coding/contributing.html:
        * contact.html:
        * index.html:
        * projects/accessibility/index.html:
        * projects/cleanup/index.html:
        * projects/compat/index.html:
        * projects/css/index.html:
        * projects/documentation/index.html:
        * projects/dom/index.html:
        * projects/editing/index.html:
        * projects/forms/index.html:
        * projects/html/index.html:
        * projects/index.html:
        * projects/javascript/index.html:
        * projects/layout/index.html:
        * projects/mathml/index.html:
        * projects/performance/index.html:
        * projects/plugins/index.html:
        * projects/portability/index.html:
        * projects/printing/index.html:
        * projects/svg/index.html:
        * projects/webkit/index.html:
        * projects/xml/index.html:
        * projects/xslt/index.html:
        * quality/bugpriorities.html:
        * quality/bugwriting.html:
        * quality/lifecycle.html:
        * quality/reduction.html:
        * quality/reporting.html:
        * quality/testing.html:
        * quality/testwriting.html:
        * webkitdev.css:

2006-02-09  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Darin. Landed by ap.
        
        - fixes from http://bugzilla.opendarwin.org/show_bug.cgi?id=4871
        "Reporting Bugs" Page Should Prompt User To Test In Newest Version of WebKit
        
        * quality/reporting.html:
        * webkitdev.css: Added margin-bottom for li.

2006-02-07  Joost de Valk  <jdevalk@opendarwin.org>

        Reviewed by Darin. Landed by Maciej.
        
        - Several fixes to the site
        http://bugzilla.opendarwin.org/show_bug.cgi?id=7105

        * blog/wp-content/themes/webkit/style.css:
        * index.html:
        * quality/bugwriting.html:
        * quality/reduction.html:
        * webkitdev.css:

2006-02-05  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        General update to SVG project page, also link to status page.

        * projects/svg/index.html:

2006-02-05  Eric Seidel  <eseidel@apple.com>

        Rubber stamped by darin.

        * projects/svg/status.xml: Added.
        * projects/svg/svg-status.css: Added.
        * projects/svg/svg-status.xsl: Added.

2006-02-05  Eric Seidel  <eseidel@apple.com>

        Adding ChangeLog :)
        
        * ChangeLog: Added.
