BUILD FIX: Qt build broke after r38235.

        Added HAVE(ACCESSIBILITY) header guards to platform implementation
        source files.

        * page/gtk/AccessibilityObjectAtk.cpp: Added HAVE(ACCESSIBILITY)
        guards.
        * page/gtk/AccessibilityObjectWrapperAtk.cpp: Ditto.
        * page/qt/AccessibilityObjectQt.cpp: Ditto.
        * page/win/AccessibilityObjectWin.cpp: Ditto.
        * page/wx/AccessibilityObjectWx.cpp: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38244 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-09  Darin Adler  <darin@apple.com>

        Reviewed by John Sullivan.

        - fix https://bugs.webkit.org/show_bug.cgi?id=15063
          <rdar://problem/5452227> REGRESSION (r25151): Switching to a tab waiting
          for first data does not clear the window

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::frameLoadCompleted): Added comments, and got rid of
        a local variable to make this code match the code in the function below
        more closely.
        (WebFrameLoaderClient::provisionalLoadStarted): Added comments.

        * WebView/WebFrame.mm:
        (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]): Improved comment.

        * WebView/WebFrameView.mm:
        (-[WebFrameView _scrollView]): Tweaked formatting.
        (-[WebFrameView initWithFrame:]): Ditto.
        (-[WebFrameView setFrameSize:]): Added a comment and tweaked formatting.
        (-[WebFrameView viewDidMoveToWindow]): Added. This is the change that fixes
        the bug. Calls setDrawsBackground:YES as appropriate since moving the view
        out of the window to switch to another view disrupts the special technique
        for showing the old page during the start of loading. This is the identical
        reason for the setFrameSize: method above, and the code is almost the same.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-09  Darin Adler  <darin@apple.com>

        - try to fix Windows build

        * platform/graphics/Color.cpp: For some reason MSVC doesn't follow the rules
        about needed a separate definition for static const integer data members.
        Until I get to the bottom of this, put the definitions inside an ifdef.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38246 268f45cc-cd09-0410-ab3c-d52691b4dbfc
JavaScriptCore:

2008-11-09  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig and Maciej Stachowiak.
        Includes some work done by Chris Brichford.

        - fix https://bugs.webkit.org/show_bug.cgi?id=14886
          Stack overflow due to deeply nested parse tree doing repeated string concatentation

        Test: fast/js/large-expressions.html

        1) Code generation is recursive, so takes stack proportional to the complexity
           of the source code expression. Fixed by setting an arbitrary recursion limit
           of 10,000 nodes.

        2) Destruction of the syntax tree was recursive. Fixed by introducing a
           non-recursive mechanism for destroying the tree.

        * bytecompiler/CodeGenerator.cpp:
        (JSC::CodeGenerator::CodeGenerator): Initialize depth to 0.
        (JSC::CodeGenerator::emitThrowExpressionTooDeepException): Added. Emits the code
        to throw a "too deep" exception.
        * bytecompiler/CodeGenerator.h:
        (JSC::CodeGenerator::emitNode): Check depth and emit an exception if we exceed
        the maximum depth.

        * parser/Nodes.cpp:
        (JSC::NodeReleaser::releaseAllNodes): Added. To be called inside node destructors
        to avoid recursive calls to destructors for nodes inside this one.
        (JSC::NodeReleaser::release): Added. To be called inside releaseNodes functions.
        Also added releaseNodes functions and calls to releaseAllNodes inside destructors
        for each class derived from Node that has RefPtr to other nodes.
        (JSC::NodeReleaser::adopt): Added. Used by the release function.
        (JSC::NodeReleaser::adoptFunctionBodyNode): Added.

        * parser/Nodes.h: Added declarations of releaseNodes and destructors in all classes
        that needed it. Eliminated use of ListRefPtr and releaseNext, which are the two parts
        of an older solution to the non-recursive destruction problem that works only for
        lists, whereas the new solution works for other graphs. Changed ReverseBinaryOpNode
        to use BinaryOpNode as a base class to avoid some duplicated code.

LayoutTests:

2008-11-09  Alexey Proskuryakov  <ap@webkit.org>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22104
        Javascript URL percent encoding/decoding broken by some characters

        * fast/loader/javascript-url-encoding-2-expected.txt:
        * fast/loader/javascript-url-encoding-2.html:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-09  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Darin Adler.

        Bug 19541: Null pointer in showModalDialog()
        <https://bugs.webkit.org/show_bug.cgi?id=19541>

        Add null frame->page() checks to JSDOMWindowBase::canShowModalDialog()
        and JSDOMWindowBase::canShowModalDialogNow()C

        WebCore:

        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::canShowModalDialog):
        (WebCore::canShowModalDialogNow):

        LayoutTests:

        * fast/dom/null-page-show-modal-dialog-crash-expected.txt: Added.
        * fast/dom/null-page-show-modal-dialog-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-09  Darin Adler  <darin@apple.com>

        Reviewed by Tim Hatcher.

        - https://bugs.webkit.org/show_bug.cgi?id=22149
          remove unused code from the parser

        * AllInOneFile.cpp: Removed nodes2string.cpp.
        * GNUmakefile.am: Ditto.
        * JavaScriptCore.exp: Ditto.
        * JavaScriptCore.pri: Ditto.
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Ditto.
        * JavaScriptCore.xcodeproj/project.pbxproj: Ditto.
        * JavaScriptCoreSources.bkl: Ditto.

        * VM/CodeBlock.h: Added include.

        * VM/Machine.cpp: (JSC::Machine::execute): Use the types from
        DeclarationStacks as DeclarationStacks:: rather than Node:: since
        "Node" really has little to do with it.
        * bytecompiler/CodeGenerator.cpp:
        (JSC::CodeGenerator::CodeGenerator): Ditto.

        * jsc.cpp:
        (Options::Options): Removed prettyPrint option.
        (runWithScripts): Ditto.
        (printUsageStatement): Ditto.
        (parseArguments): Ditto.
        (jscmain): Ditto.

        * parser/Grammar.y: Removed use of obsolete ImmediateNumberNode.

        * parser/Nodes.cpp:
        (JSC::ThrowableExpressionData::emitThrowError): Use inline functions
        instead of direct member access for ThrowableExpressionData values.
        (JSC::BracketAccessorNode::emitCode): Ditto.
        (JSC::DotAccessorNode::emitCode): Ditto.
        (JSC::NewExprNode::emitCode): Ditto.
        (JSC::EvalFunctionCallNode::emitCode): Ditto.
        (JSC::FunctionCallValueNode::emitCode): Ditto.
        (JSC::FunctionCallResolveNode::emitCode): Ditto.
        (JSC::FunctionCallBracketNode::emitCode): Ditto.
        (JSC::FunctionCallDotNode::emitCode): Ditto.
        (JSC::PostfixResolveNode::emitCode): Ditto.
        (JSC::PostfixBracketNode::emitCode): Ditto.
        (JSC::PostfixDotNode::emitCode): Ditto.
        (JSC::DeleteResolveNode::emitCode): Ditto.
        (JSC::DeleteBracketNode::emitCode): Ditto.
        (JSC::DeleteDotNode::emitCode): Ditto.
        (JSC::PrefixResolveNode::emitCode): Ditto.
        (JSC::PrefixBracketNode::emitCode): Ditto.
        (JSC::PrefixDotNode::emitCode): Ditto.
        (JSC::ThrowableBinaryOpNode::emitCode): Ditto.
        (JSC::InstanceOfNode::emitCode): Ditto.
        (JSC::ReadModifyResolveNode::emitCode): Ditto.
        (JSC::AssignResolveNode::emitCode): Ditto.
        (JSC::AssignDotNode::emitCode): Ditto.
        (JSC::ReadModifyDotNode::emitCode): Ditto.
        (JSC::AssignBracketNode::emitCode): Ditto.
        (JSC::ReadModifyBracketNode::emitCode): Ditto.
        (JSC::statementListEmitCode): Take a const StatementVector instead
        of a non-const one. Also removed unused statementListPushFIFO.
        (JSC::ForInNode::emitCode): Inline functions instead of member access.
        (JSC::ThrowNode::emitCode): Ditto.
        (JSC::EvalNode::emitCode): Ditto.
        (JSC::FunctionBodyNode::emitCode): Ditto.
        (JSC::ProgramNode::emitCode): Ditto.

        * parser/Nodes.h: Removed unused includes and forward declarations.
        Removed Precedence enum. Made many more members private instead of
        protected or public. Removed unused NodeStack typedef. Moved the
        VarStack and FunctionStack typedefs from Node to ScopeNode. Made
        Node::emitCode pure virtual and changed classes that don't emit
        any code to inherit from ParserRefCounted rather than Node.
        Moved isReturnNode from Node to StatementNode. Removed the
        streamTo, precedence, and needsParensIfLeftmost functions from
        all classes. Removed the ImmediateNumberNode class and make
        NumberNode::setValue nonvirtual.

        * parser/nodes2string.cpp: Removed.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-09  Cameron Zwarich  <zwarich@apple.com>

        Not reviewed.

        Speculatively fix the non-AllInOne build.

        * runtime/NativeErrorConstructor.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38250 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Morten Sørvig  <msorvig@trolltech.com>

        Reviewed by Simon Hausmann.

        Improve mouse wheel scolling on Qt/Cocoa.
        Cocoa differs from Carbon (and other platforms I think) in that the
        mouse wheel events we get have a much higher acceleration factor.

        This submit switches over to scroll-per-pixel from scroll-per-line
        for most of our scrolling views. This matches the native views
        and works well with the increased acceleration.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38251 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Joerg Bornemann  <joerg.bornemann@nokia.com>

        Reviewed by Simon Hausmann

        Don't define _CRT_RAND_S on Windows CE in the precompiled
        header, to fix the CE build.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Kavindra Palaraja  <kdpalara@trolltech.com>

        Reviewed by Simon Hausmann.

        Clarify QWebFrame/View::setHTML docs with regards to relative URLs

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38253 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Tom Cooksey  <thomas.cooksey@trolltech.com>

        Reviewed by Tor Arne Vestbø.

        Fix QtWebkit build failure on arm.

        pen.widthF() is a qreal, which means it's a float on arm.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38254 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Tobias Koenig <tobias.koenig@trolltech.com>

        Reviewed by Simon Hausmann.

        Removed old and stale prf file that breaks the MingW build.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38255 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  David Boddie  <dboddie@trolltech.com>

        Reviewed by Simon Hausmann.

        Doc: Fixed qdoc warnings by supplying function documentation.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38256 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Morten Sørvig  <msorvig@trolltech.com>

        Reviewed by Simon Hausmann.

        Make tests/auto/qwebframe compile on Qt/Mac.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38257 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Ariya Hidayat  <ariya.hidayat@trolltech.com>

        Rubber-stamped by Simon Hausmann.

        To fit Qt API, scroll offset is a QPoint instead of a QSize.

        * Api/qwebframe.cpp:
        (QWebFrame::scrollOffset):
        (QWebFrame::setScrollOffset):
        * Api/qwebframe.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38258 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Reviewed by Adam Roben.

        A few coding style fixes for AVLTree.

        * wtf/AVLTree.h: Moved to WTF namespace, Removed "KJS_" from include guards.
        (WTF::AVLTree::Iterator::start_iter): Fixed indentation

        * runtime/JSArray.cpp: Added "using namepace WTF".



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38259 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Darin Adler  <darin@apple.com>

        * template/en/custom/request/email.txt.tmpl: Send review links instead
        of edit links when flags are set on a bug.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38260 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Darin Adler  <darin@apple.com>

        - fix more of https://bugs.webkit.org/show_bug.cgi?id=21400
          "Edit" links for patches in comments, review queue, review emails
          should be replaced by "Review Patch" links

        * globals.pl: Fix cases that are automatically generated, such as links
        in comments in bugs.

        * template/en/custom/attachment/created.html.tmpl: Fix the link on the
        "I just created an attachment" page.

        * template/en/custom/request/queue.html.tmpl: Fix the link in the queue
        page.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38261 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Tor Arne Vestbø  <tavestbo@trolltech.com>

        Rubber-stamped by Simon Hausmann.

        Distinguish between building from trunk and as part of Qt

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38262 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2008-11-10  Darin Adler  <darin@apple.com>

        Reviewed by Adam Roben.

        - speculative fix for <rdar://problem/5557243> crashes in Safari at
          WebCore::HTMLSelectElement::updateListBoxSelection + 280

        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::updateListBoxSelection):
        Check index against size of vector before indexing into the vector.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38263 268f45cc-cd09-0410-ab3c-d52691b4dbfc