2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Remove expectation of failure after clobber.
        https://bugs.webkit.org/show_bug.cgi?id=62364

        * platform/chromium/test_expectations.txt: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88603 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=62503
Remove JIT_OPTIMIZE_* switches

Rubber stamped by Geoff Garen.

The alternative code paths are untested, and not well maintained.
These were useful when there was more churn in the JIT, but now
are a maintenance overhead. Time to move on, removing.

* bytecode/CodeBlock.cpp:
(JSC::CodeBlock::visitAggregate):
* jit/JIT.cpp:
(JSC::JIT::privateCompileSlowCases):
(JSC::JIT::privateCompile):
(JSC::JIT::linkConstruct):
* jit/JIT.h:
* jit/JITCall.cpp:
* jit/JITCall32_64.cpp:
* jit/JITOpcodes.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):
* jit/JITOpcodes32_64.cpp:
(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):
(JSC::JIT::softModulo):
* jit/JITPropertyAccess.cpp:
* jit/JITPropertyAccess32_64.cpp:
* jit/JITStubs.cpp:
(JSC::DEFINE_STUB_FUNCTION):
* runtime/Lookup.cpp:
(JSC::setUpStaticFunctionSlot):
* runtime/Lookup.h:
* wtf/Platform.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88604 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=16777

Reviewed by Darin Adler.

Remove #define NaN per Darin's comments.

* runtime/JSGlobalObjectFunctions.cpp:
(JSC::parseIntOverflow):
(JSC::parseInt):
(JSC::jsStrDecimalLiteral):
(JSC::jsToNumber):
(JSC::parseFloat):
* wtf/DateMath.cpp:
(WTF::equivalentYearForDST):
(WTF::parseES5DateFromNullTerminatedCharacters):
(WTF::parseDateFromNullTerminatedCharacters):
(WTF::timeClip):
(JSC::parseDateFromNullTerminatedCharacters):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88605 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r88569.
        http://trac.webkit.org/changeset/88569
        https://bugs.webkit.org/show_bug.cgi?id=62398

        Broke Chromium browser test:
        IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest

        * storage/indexeddb/database-name-undefined-expected.txt: Removed.
        * storage/indexeddb/database-name-undefined.html: Removed.
2011-06-11  Dimitri Glazkov  <dglazkov@chromium.org>

        Unreviewed, rolling out r88569.
        http://trac.webkit.org/changeset/88569
        https://bugs.webkit.org/show_bug.cgi?id=62398

        Broke Chromium browser test:
        IndexedDBBrowserTestWithGCExposed.DatabaseCallbacksTest

        * storage/IDBFactory.idl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88606 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=62480
part of <rdar://problem/8675177>
Add API to launch the WebProcess.  Launching it earlier can save time 
when loading the first page.

Reviewed by Sam Weinig.

* UIProcess/API/C/WKContext.cpp:
(WKContextWarmInitialProcess):
* UIProcess/API/C/WKContextPrivate.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::warmInitialProcess):
* UIProcess/WebContext.h:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88607 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-11  Ryosuke Niwa  <rniwa@webkit.org>

        Chromium rebaseline after r85560.

        Also update test expectation for svg/W3C-SVG-1.1/text-intro-05-t.svg
        because it has been passing on Mac.

        * platform/chromium-linux/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/chromium-win/fast/forms/input-placeholder-text-indent-expected.png: Added.
        * platform/chromium-win/fast/forms/input-placeholder-text-indent-expected.txt: Added.
        * platform/chromium/test_expectations.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88608 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-11  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        DocumentParser::appendBytes shouldn't have a "flush" boolean parameter
        https://bugs.webkit.org/show_bug.cgi?id=62499

        This patch removes the "flush" Boolean parameter from
        DocumentParser::appendBytes in favor of a new flush method.  This makes
        some code in DocumentWriter look less ridiculous.

        There's still lots of on contorting to do here, but it's a start.

        * dom/DecodedDataDocumentParser.cpp:
        (WebCore::DecodedDataDocumentParser::appendBytes):
        (WebCore::DecodedDataDocumentParser::flush):
        * dom/DecodedDataDocumentParser.h:
        * dom/DocumentParser.h:
        * dom/RawDataDocumentParser.h:
        (WebCore::RawDataDocumentParser::flush):
        * html/ImageDocument.cpp:
        (WebCore::ImageDocumentParser::appendBytes):
        * html/MediaDocument.cpp:
        (WebCore::MediaDocumentParser::appendBytes):
        * html/PluginDocument.cpp:
        (WebCore::PluginDocumentParser::appendBytes):
        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::reportDataReceived):
        (WebCore::DocumentWriter::addData):
        (WebCore::DocumentWriter::endIfNotLoadingMainResource):
        * loader/DocumentWriter.h:
        * loader/SinkDocument.cpp:
        (WebCore::SinkDocumentParser::appendBytes):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88609 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-11  Adam Barth  <abarth@webkit.org>

        Reviewed by Darin Adler.

        Remove unnecessary strlen from DocumentWriter
        https://bugs.webkit.org/show_bug.cgi?id=62505

        This ugly piece of code appears not to be needed.  Rejoice.

        * WebCore.exp.in:
        * loader/DocumentLoader.cpp:
        (WebCore::DocumentLoader::commitData):
        * loader/DocumentLoader.h:
        * loader/DocumentWriter.cpp:
        (WebCore::DocumentWriter::addData):
        * loader/DocumentWriter.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88610 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-11  Michael Saboff  <msaboff@apple.com>

        Reviewed by James Robinson.

        REGRESSION(88260): 10-50% performance regression across many page cyclers
        https://bugs.webkit.org/show_bug.cgi?id=62349

        Made CHROMIUM platform specific values for cMaxInactiveFontData and
        cTargetInactiveFontData to mitigate the current performance issue on Chromium
        page cycler tests.  Made the chromium value for cMaxInactiveFontData 250 based
        on recommendation from James Robinson.  Changed cTargetInactiveFontData to 200
        so that 50 inactive fonts will be cleaned up at a time.

        Change made to address existing Chromium performance test regression.

        * platform/graphics/FontCache.cpp:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88611 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Fix methods.html and methods-lower-case.html
        https://bugs.webkit.org/show_bug.cgi?id=62221

        Our expectations for the unskipped tests have the following differences from the mac
        platform:
          - POST requests with no data get a default Content-Type of 'application/octet-stream' in
            Qt 4.8 and 'application/x-www-form-urlencoded' in Qt 4.7.3.
            This is Qt-defined behaviour in QNetworkAccessManager (see QHttpNetworkRequestPrivate::header
            in qhttpnetworkrequest.cpp)
          - DELETE and HEAD requests get their ContentType and ContentLength headers (if present) removed
            by QNetworkReplyHandler. QtWebKit does not send data for either of these request types.

        * platform/qt-4.8/http/tests/xmlhttprequest/methods-expected.txt: Added.
        * platform/qt-4.8/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Added.
        * platform/qt-4.8/http/tests/xmlhttprequest/workers/methods-expected.txt: Added.
        * platform/qt-4.8/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Added.
        * platform/qt/Skipped: Unskip: http/tests/xmlhttprequest/methods.html
                                       http/tests/xmlhttprequest/methods-lower-case.html
                                       http/tests/xmlhttprequest/workers/methods-async.html
                                       http/tests/xmlhttprequest/workers/methods.html
                                       http/tests/xmlhttprequest/workers/shared-worker-methods-async.html
        * platform/qt/http/tests/xmlhttprequest/methods-expected.txt: Added.
        * platform/qt/http/tests/xmlhttprequest/workers/methods-async-expected.txt: Added.
        * platform/qt/http/tests/xmlhttprequest/workers/methods-expected.txt: Added.
        * platform/qt/http/tests/xmlhttprequest/workers/shared-worker-methods-async-expected.txt: Added.
2011-06-12  Robert Hogan  <robert@webkit.org>

        Reviewed by Andreas Kling.

        [Qt] Fix methods.html and methods-lower-case.html
        https://bugs.webkit.org/show_bug.cgi?id=62221

        * platform/network/qt/QNetworkReplyHandler.cpp:
        (WebCore::QNetworkReplyHandler::clearContentsHeaders): Refactor code from sendNetworkRequest
        (WebCore::QNetworkReplyHandler::getIODevice): ditto
        (WebCore::QNetworkReplyHandler::sendNetworkRequest):
            - Remove ContentType and ContentLength headers from GET, DELETE and HEAD requests since
              we do not send data with any of these requests.
            - If a custom HTTP operation contains data, send it.
        * platform/network/qt/QNetworkReplyHandler.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88612 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-11  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Dirk Schulze.

        Add TextRun charactersLength member
        https://bugs.webkit.org/show_bug.cgi?id=62501

        Preparation patch 2: Propagate the maximum length of the characters buffer the TextRun operates on, even when we're only measuring a substring.
        For example: In RenderText when we're measuring 'len' characters starting from "text()->characters() + start", there's a portion
        of "textLength() - start" characters that we're not processing. In order to support ligatures when integrating SVG Fonts
        within the GlyphPage concept, we need this extra information, to lookup ligatures even when single chars are measured.
        If a font defines an eg "ffl" ligature, and we're measuring the "f" of "ffl", it shall looukp the "ffl" glyph from the font,
        and skip the next two characters (this will be done in WidthIterator).

        This doesn't yet affect any test, the new SVG Fonts code is not merged yet, this is the preparaion patch 2.

        * platform/graphics/Font.h: Add yet-unused "const TextRun&" parameter to drawGlyphBuffer/drawEmphasisMarks.
        * platform/graphics/FontFastPath.cpp: Ditto. This parameter will be used to looukp the TextRunRenderingContext in a follow-up patch.
        (WebCore::Font::drawSimpleText):
        (WebCore::Font::drawEmphasisMarksForSimpleText):
        (WebCore::Font::drawGlyphBuffer):
        (WebCore::Font::drawEmphasisMarks):
        * platform/graphics/TextRun.h: Add "int m_charactersLength", similar to "int m_len". It denotes the maximum length of the characters buffer
                                       that we're holding. It defaults to the passed "len" value, but is overriden by explicit setCharactersLength calls.
        (WebCore::TextRun::TextRun):
        (WebCore::TextRun::charactersLength):
        (WebCore::TextRun::setCharactersLength):
        * platform/graphics/mac/FontComplexTextMac.cpp: Pass TextRun do drawGlyphBuffer/drawEmphasisMarks.
        (WebCore::Font::drawComplexText):
        (WebCore::Font::drawEmphasisMarksForComplexText):
        * platform/graphics/win/FontWin.cpp: Ditto.
        (WebCore::Font::drawComplexText):
        (WebCore::Font::drawEmphasisMarksForComplexText):
        * platform/graphics/wx/FontWx.cpp: Ditto.
        (WebCore::Font::drawComplexText):
        (WebCore::Font::drawEmphasisMarksForComplexText):
        * rendering/InlineTextBox.cpp: Call setCharactersLength on the processed TextRun.
        (WebCore::InlineTextBox::constructTextRun):
        * rendering/RenderBlockLineLayout.cpp: Ditto.
        (WebCore::textWidth):
        (WebCore::tryHyphenating):
        * rendering/RenderText.cpp: Ditto.
        (WebCore::RenderText::widthFromCache):
        (WebCore::RenderText::computePreferredLogicalWidths):
        (WebCore::RenderText::width):
        * rendering/svg/SVGInlineTextBox.cpp: Ditto.
        (WebCore::SVGInlineTextBox::constructTextRun):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88613 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Patrick Gansterer  <paroga@webkit.org>

        Unreviewed. Build fix for !ENABLE(JIT) after r88604.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::visitAggregate):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88614 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Andreas Kling.

        Minor user-gesture related cleanup
        https://bugs.webkit.org/show_bug.cgi?id=62511

        In reading the user gesture code, I noticed that these lines of code
        should be deleted because they don't do anything.

        * bindings/v8/NPV8Object.cpp:
        * html/HTMLAnchorElement.cpp:
        * html/HTMLVideoElement.idl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88615 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[Qt] LayoutTestController needs setTextDirection implementation
https://bugs.webkit.org/show_bug.cgi?id=62442

Reviewed by Antonio Gomes.

Tools: 

Implements LayoutController.setTextDirection.

* DumpRenderTree/qt/LayoutTestControllerQt.cpp:
(LayoutTestController::setTextDirection):
* DumpRenderTree/qt/LayoutTestControllerQt.h:

LayoutTests: 

Unskipping fast/html/set-text-direction.html. 

* platform/qt/Skipped:



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88616 268f45cc-cd09-0410-ab3c-d52691b4dbfc
<rdar://problem/9513180> REGRESSION (r84166): recalcStyle for display:inline to display:none transition has complexity N^2 where N is the number of child Text nodes
https://bugs.webkit.org/show_bug.cgi?id=61557

Reviewed by Darin Adler.

Replaced the fix for bug 58500 with a refined version.

* rendering/RenderText.cpp:
(WebCore::RenderText::clippedOverflowRectForRepaint): Use the containing block unless it is
across a layer boundary.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88617 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Remove trival "forward-to-client" member functions from FrameLoader
        https://bugs.webkit.org/show_bug.cgi?id=62510

        Update to call the FrameLoaderClient directly.  Also, remove cargo-cult
        code that checks whether FrameLoader is null.

        * webkit/webkitwebview.cpp:
        (webkit_web_view_stop_loading):
        (webkit_web_view_can_show_mime_type):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Remove trival "forward-to-client" member functions from FrameLoader
        https://bugs.webkit.org/show_bug.cgi?id=62510

        * WebCoreSupport/WebFrameNetworkingContext.cpp:
        (WebFrameNetworkingContext::blockedError):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Remove trival "forward-to-client" member functions from FrameLoader
        https://bugs.webkit.org/show_bug.cgi?id=62510

        * WebCoreSupport/WebFrameNetworkingContext.mm:
        (WebFrameNetworkingContext::blockedError):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Remove trival "forward-to-client" member functions from FrameLoader
        https://bugs.webkit.org/show_bug.cgi?id=62510

        Originally, FrameLoader was supposed to abstract FrameLoaderClient, but
        we lost that battle log ago.  Nowadays, it's easier if folks just call
        into FrameLoaderClient directly.  Many of these functions have direct
        callers already anyway.

        * WebCore.exp.in:
        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::createRenderer):
        (WebCore::HTMLMediaElement::attach):
        * loader/DocumentLoader.cpp:
        (WebCore::DocumentLoader::setRequest):
        (WebCore::DocumentLoader::setMainDocumentError):
        (WebCore::DocumentLoader::setupForReplaceByMIMEType):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::didFirstLayout):
        * loader/FrameLoader.h:
            - cancelledError is slightly more delicate, so I'm going to move it in
              a separate patch.
        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::interruptForPolicyChangeError):
        (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
        (WebCore::MainResourceLoader::continueAfterContentPolicy):
        (WebCore::MainResourceLoader::handleEmptyLoad):
        (WebCore::MainResourceLoader::loadNow):
        * loader/MainResourceLoader.h:
        * loader/NetscapePlugInStreamLoader.cpp:
        (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
        * loader/PingLoader.cpp:
        (WebCore::PingLoader::PingLoader):
        * loader/PolicyChecker.cpp:
        (WebCore::PolicyChecker::continueAfterNavigationPolicy):
        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::blockedError):
        (WebCore::ResourceLoader::cannotShowURLError):
        (WebCore::ResourceLoader::shouldUseCredentialStorage):
        (WebCore::ResourceLoader::canAuthenticateAgainstProtectionSpace):
        * page/ContextMenuController.cpp:
        (WebCore::ContextMenuController::populate):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Alexey Proskuryakov.

        Remove trival "forward-to-client" member functions from FrameLoader
        https://bugs.webkit.org/show_bug.cgi?id=62510

        * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
        (WebKit::WebFrameNetworkingContext::blockedError):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88618 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Adam Barth  <abarth@webkit.org>

        Fix fullscreen/full-screen-iframe-legacy.html.

        * html/HTMLVideoElement.idl:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88619 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88616.
        http://trac.webkit.org/changeset/88616
        https://bugs.webkit.org/show_bug.cgi?id=62517

        It broke editing/text-iterator/findString.html (Requested by
        tonikitoo on #webkit).

        * platform/qt/Skipped:
2011-06-12  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r88616.
        http://trac.webkit.org/changeset/88616
        https://bugs.webkit.org/show_bug.cgi?id=62517

        It broke editing/text-iterator/findString.html (Requested by
        tonikitoo on #webkit).

        * DumpRenderTree/qt/LayoutTestControllerQt.cpp:
        * DumpRenderTree/qt/LayoutTestControllerQt.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88620 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Xan Lopez  <xlopez@igalia.com>

        Reviewed by Martin Robinson.

        [GTK] Remove webkit_web_view_get_selected_text
        https://bugs.webkit.org/show_bug.cgi?id=62512

        It's no longer used and it's a private method, so it can be
        removed.

        * webkit/webkitwebview.cpp: kill it.
        * webkit/webkitwebviewprivate.h: ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@88621 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove FrameLoader::isProcessingUserGesture
        https://bugs.webkit.org/show_bug.cgi?id=62519

        This function is a remnant of the old user gesture design, which
        involved per-frame state stored on FrameLoader.  Now that we're using
        static state, we don't need this function anymore.

        This function used to check whether JavaScript was enabled for the
        top-level frame, but that check doesn't make any sense (like much of
        the old user gesture code).

        * WebCore.exp.in:
        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::processingUserGesture):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::submitForm):
        * loader/FrameLoader.h:
        * rendering/RenderFileUploadControl.cpp:
        (WebCore::RenderFileUploadControl::click):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove FrameLoader::isProcessingUserGesture
        https://bugs.webkit.org/show_bug.cgi?id=62519

        * src/WebFrameImpl.cpp:
        (WebKit::WebFrameImpl::isProcessingUserGesture):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove FrameLoader::isProcessingUserGesture
        https://bugs.webkit.org/show_bug.cgi?id=62519

        * WebView/WebView.mm:
        (-[WebView _isProcessingUserGesture]):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove FrameLoader::isProcessingUserGesture
        https://bugs.webkit.org/show_bug.cgi?id=62519

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (drtPrintFrameUserGestureStatus):
2011-06-12  Adam Barth  <abarth@webkit.org>

        Reviewed by Eric Seidel.

        Remove FrameLoader::isProcessingUserGesture
        https://bugs.webkit.org/show_bug.cgi?id=62519

        Instead of asking the gesture indicator directly, ask the
        ScriptController, like everyone else.  The gesture indicator is just
        one of the piece of information we use to determine whether we're
        processing a user gesture.

        * WebProcess/InjectedBundle/InjectedBundle.cpp:
        (WebKit::InjectedBundle::isProcessingUserGesture):

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