Correct ChangeLogs.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69889 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Clean up RenderFlexibleBox::applyLineClamp()
https://bugs.webkit.org/show_bug.cgi?id=47743

Reviewed by Adele Peterson.

* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::applyLineClamp):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69890 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein.

        Add 'didDraw' callback for framerate tracking
        https://bugs.webkit.org/show_bug.cgi?id=47478

        Hook up the 'didDraw' callback for WebKit2 on Mac.

        * UIProcess/API/C/WKPage.h:
        * UIProcess/API/mac/WKView.mm:
        (-[WKView drawRect:]):
        * UIProcess/API/qt/qwkpage.cpp:
        (QWKPage::QWKPage):
        * UIProcess/WebPageProxy.cpp:
        (WebKit::WebPageProxy::didDraw):
        * UIProcess/WebPageProxy.h:
        * UIProcess/WebUIClient.cpp:
        (WebKit::WebUIClient::didDraw):
        * UIProcess/WebUIClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69892 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Simon Fraser  <simon.fraser@apple.com>

        Add Matt Delaney to committers.py.

        * Scripts/webkitpy/common/config/committers.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69893 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Simon Fraser  <simon.fraser@apple.com>

        Fix the build; need to add new slot to PageUIClient callbacks.

        * MiniBrowser/mac/BrowserWindowController.m:
        (-[BrowserWindowController awakeFromNib]):
        * WebKitTestRunner/TestController.cpp:
        (WTR::createOtherPage):
        (WTR::TestController::initialize):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69894 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make the find indicator window fade out when requested
https://bugs.webkit.org/show_bug.cgi?id=47747

Reviewed by Sam Weinig.

* UIProcess/API/mac/FindIndicatorWindow.h:
* UIProcess/API/mac/FindIndicatorWindow.mm:
Add WebFindIndicatorWindowAnimation - an NSAnimation subclass that takes two
C++ member function pointers and invokes them the animation progress changes and
when the animation stops.

(-[WebFindIndicatorWindowAnimation setCurrentProgress:]):
Call the _animationProgressCallback.

(-[WebFindIndicatorWindowAnimation animationDidEnd:]):
Call the _animationDidEndCallback.

(WebKit::FindIndicatorWindow::FindIndicatorWindow):
Initialize the fade out start timer.

(WebKit::FindIndicatorWindow::setFindIndicator):
When asked to fade out, we start the fade out timer.

(WebKit::FindIndicatorWindow::closeWindow):
Stop the fade out timer and the fade out animation.

(WebKit::FindIndicatorWindow::startFadeOutTimerFired):
Create a fade out animation.

(WebKit::FindIndicatorWindow::fadeOutAnimationCallback):
Update the window alpha.

(WebKit::FindIndicatorWindow::fadeOutAnimationDidEnd):
Close the window.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69895 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by James Robinson.

        iframes keep getting scrollbars with scrolling="no"
        https://bugs.webkit.org/show_bug.cgi?id=29240

        Prevent scrollbars from appearing in iframes with scrolling=no
        when the embedded content has overflow:scroll set on the html
        or body tags.

        * fast/frames/iframe-scrolling-attribute-overflowscroll-expected.txt: Added.
        * fast/frames/iframe-scrolling-attribute-overflowscroll.html: Added.
2010-10-15  Mike Lawther  <mikelawther@chromium.org>

        Reviewed by James Robinson.

        Prevent scrollbars from appearing in iframes with scrolling=no
        when the embedded content has overflow:scroll set on the html
        or body tags.

        iframes keep getting scrollbars with scrolling="no"
        https://bugs.webkit.org/show_bug.cgi?id=29240

        Test: fast/frames/iframe-scrolling-attribute-overflowscroll.html

        * page/FrameView.cpp:
        (WebCore::FrameView::calculateScrollbarModesForLayout)
        (WebCore::FrameView::updateCanHaveScrollbars):
        (WebCore::FrameView::layout):
        * page/FrameView.h:
        (WebCore::FrameView::calculateScrollbarModesForLayout)

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

* UIProcess/API/mac/FindIndicatorWindow.mm:
(-[WebFindIndicatorWindowAnimation setCurrentProgress:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69897 268f45cc-cd09-0410-ab3c-d52691b4dbfc
        Trying to fix crashes on Leopard buildbot.

        * loader/loader.cpp:
        (WebCore::Loader::Host::didFinishLoading):
        (WebCore::Loader::Host::didFail):
        Moved logging higher in the function - it seems that CachedResource can be already destroyed.

        * platform/Logging.cpp: (WebCore::getChannelFromName):
        * platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
        Initialize the new channel (oops).



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69898 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Popup widget support (<select>)
<rdar://problem/8147746>
https://bugs.webkit.org/show_bug.cgi?id=47740

Reviewed by Anders Carlsson.

Add initial support for popup menus. Only works on the mac at this time.

* Shared/WebPopupItem.cpp: Added.
(WebKit::WebPopupItem::WebPopupItem):
(WebKit::WebPopupItem::encode):
(WebKit::WebPopupItem::decode):
* Shared/WebPopupItem.h: Added.
Serializable representation of a menu item.

* UIProcess/API/mac/PageClientImpl.h:
* UIProcess/API/mac/PageClientImpl.mm:
(WebKit::PageClientImpl::createPopupMenuProxy):
Create a WebPopupMenuProxyMac.

* UIProcess/API/qt/qwkpage.cpp:
(WebView::createPopupMenuProxy):
* UIProcess/API/qt/qwkpage_p.h:
Create a WebPopupMenuProxyQt (which is just a stub right now).

(WebKit::WebPopupMenuProxyWin::create):
* UIProcess/win/WebView.cpp:
(WebKit::WebView::createPopupMenuProxy):
* UIProcess/win/WebView.h:
Create a WebPopupMenuProxyWin (which is just a stub right now).

* UIProcess/PageClient.h:
Add new client function to get a platform specific WebPopupMenuProxy.

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::close):
(WebKit::WebPageProxy::showPopupMenu):
(WebKit::WebPageProxy::hidePopupMenu):
(WebKit::WebPageProxy::processDidExit):
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
Pipe through calls to set up the menu.

* UIProcess/mac/WebPopupMenuProxyMac.h: Added.
(WebKit::WebPopupMenuProxyMac::create):
* UIProcess/mac/WebPopupMenuProxyMac.mm: Added.
(WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
(WebKit::WebPopupMenuProxyMac::~WebPopupMenuProxyMac):
(WebKit::WebPopupMenuProxyMac::populate):
(WebKit::WebPopupMenuProxyMac::showPopupMenu):
(WebKit::WebPopupMenuProxyMac::hidePopupMenu):
Add UI process side implementation. Currently this does not support
custom fonts as the old implementation did.

* UIProcess/qt/WebPopupMenuProxyQt.cpp: Added.
(WebKit::WebPopupMenuProxyQt::WebPopupMenuProxyQt):
(WebKit::WebPopupMenuProxyQt::~WebPopupMenuProxyQt):
(WebKit::WebPopupMenuProxyQt::showPopupMenu):
(WebKit::WebPopupMenuProxyQt::hidePopupMenu):
* UIProcess/qt/WebPopupMenuProxyQt.h: Added.
(WebKit::WebPopupMenuProxyQt::create):
* UIProcess/win/WebPopupMenuProxyWin.cpp: Added.
(WebKit::WebPopupMenuProxyWin::WebPopupMenuProxyWin):
(WebKit::WebPopupMenuProxyWin::~WebPopupMenuProxyWin):
(WebKit::WebPopupMenuProxyWin::showPopupMenu):
(WebKit::WebPopupMenuProxyWin::hidePopupMenu):
* UIProcess/win/WebPopupMenuProxyWin.h: Added.
Add stubbed out implementations for Qt and windows.

* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::createPopupMenu):
(WebKit::WebChromeClient::createSearchPopupMenu):
Pass the page in the create function.

* WebProcess/WebCoreSupport/WebPopupMenu.cpp:
(WebKit::WebPopupMenu::create):
(WebKit::WebPopupMenu::WebPopupMenu):
(WebKit::WebPopupMenu::didChangeSelectedIndex):
(WebKit::WebPopupMenu::populateItems):
(WebKit::WebPopupMenu::show):
(WebKit::WebPopupMenu::hide):
* WebProcess/WebCoreSupport/WebPopupMenu.h:
(WebKit::WebPopupMenu::disconnectFromPage):
* WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:
(WebKit::WebSearchPopupMenu::create):
(WebKit::WebSearchPopupMenu::WebSearchPopupMenu):
(WebKit::WebSearchPopupMenu::popupMenu):
* WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::close):
(WebKit::WebPage::setActivePopupMenu):
(WebKit::WebPage::didChangeSelectedIndexForActivePopupMenu):
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
Pipe through calls to set up the menu.

* WebKit2.pro:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:
Add new files.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69899 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION(r69850) Loading apple.com/startpage in WebKit on Windows gets a bad request.
https://bugs.webkit.org/show_bug.cgi?id=47753
<rdar://problem/8558242>
        
Reviewed by Sam Weinig.

WebCore: 

r69850 switched over to a different way of concatenating WebCore strings, but ran into an issue
where some Windows calls were returning null terminated strings, and this breaks the new
method of concatenation.
        
GetLocaleInfo returns a null-terminated string, but WebCore strings are non-null terminated,
so once we create our WebCore string, we want to trim off the null terminating character before
we return the localeInfo.

Test: fast/dom/navigator-userAgent.html

* platform/win/Language.cpp:
(WebCore::localeInfo):

WebKit/win: 

VerQueryValue returns a null terminated string, but we need to strip off the null terminating character
when we turn it into a WebCore string, or else concatenation using this string will break.

* WebView.cpp:

LayoutTests: 

Add a test to make sure that the user agent has some important parts, and is fully formed.
This test tests that the user agent has Mozilla, AppleWebKit, and KHML, like Gecko. If the
user agent has all of these components, the string concatenation worked correctly, and this
bug is fixed.

* fast/dom/navigator-userAgent-expected.txt: Added.
* fast/dom/navigator-userAgent.html: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69900 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Nico Weber  <thakis@chromium.org>

        Reviewed by Eric Carlson.

        Make sure to update the current graphics context when calling out to AppKit.
        https://bugs.webkit.org/show_bug.cgi?id=47757

        Like r57741, but for the spellchecking highlight

        * platform/graphics/mac/GraphicsContextMac.mm:
        (WebCore::GraphicsContext::drawLineForTextChecking):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69901 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix Qt build.

* UIProcess/API/qt/qwkpage.cpp:
(QWKPagePrivate::createPopupMenuProxy):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69902 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by James Robinson.

        css2.1/ layout tests need new Mac baselines for Snow Leopard
        https://bugs.webkit.org/show_bug.cgi?id=47760

        Rebaseline 10 css2.1/ test for Snow Leopard using the experimental
        local rebaselining tool.

        * platform/mac-leopard/css2.1/t010403-shand-border-00-c-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-border-00-c-expected.checksum.
        * platform/mac-leopard/css2.1/t010403-shand-border-00-c-expected.png: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-border-00-c-expected.png.
        * platform/mac-leopard/css2.1/t010403-shand-font-00-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-00-b-expected.checksum.
        * platform/mac-leopard/css2.1/t010403-shand-font-00-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-00-b-expected.png.
        * platform/mac-leopard/css2.1/t010403-shand-font-01-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-01-b-expected.checksum.
        * platform/mac-leopard/css2.1/t010403-shand-font-01-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-01-b-expected.png.
        * platform/mac-leopard/css2.1/t010403-shand-font-02-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-02-b-expected.checksum.
        * platform/mac-leopard/css2.1/t010403-shand-font-02-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-02-b-expected.png.
        * platform/mac-leopard/css2.1/t010403-shand-font-03-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-03-b-expected.checksum.
        * platform/mac-leopard/css2.1/t010403-shand-font-03-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t010403-shand-font-03-b-expected.png.
        * platform/mac-leopard/css2.1/t040102-keywords-00-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t040102-keywords-00-b-expected.checksum.
        * platform/mac-leopard/css2.1/t040102-keywords-00-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t040102-keywords-00-b-expected.png.
        * platform/mac-leopard/css2.1/t040102-keywords-01-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t040102-keywords-01-b-expected.checksum.
        * platform/mac-leopard/css2.1/t040102-keywords-01-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t040102-keywords-01-b-expected.png.
        * platform/mac-leopard/css2.1/t040103-case-00-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t040103-case-00-b-expected.checksum.
        * platform/mac-leopard/css2.1/t040103-case-00-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t040103-case-00-b-expected.png.
        * platform/mac-leopard/css2.1/t040103-case-01-c-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t040103-case-01-c-expected.checksum.
        * platform/mac-leopard/css2.1/t040103-case-01-c-expected.png: Copied from LayoutTests/platform/mac/css2.1/t040103-case-01-c-expected.png.
        * platform/mac-leopard/css2.1/t040103-escapes-00-b-expected.checksum: Copied from LayoutTests/platform/mac/css2.1/t040103-escapes-00-b-expected.checksum.
        * platform/mac-leopard/css2.1/t040103-escapes-00-b-expected.png: Copied from LayoutTests/platform/mac/css2.1/t040103-escapes-00-b-expected.png.
        * platform/mac/css2.1/t010403-shand-border-00-c-expected.checksum:
        * platform/mac/css2.1/t010403-shand-border-00-c-expected.png:
        * platform/mac/css2.1/t010403-shand-font-00-b-expected.checksum:
        * platform/mac/css2.1/t010403-shand-font-00-b-expected.png:
        * platform/mac/css2.1/t010403-shand-font-01-b-expected.checksum:
        * platform/mac/css2.1/t010403-shand-font-01-b-expected.png:
        * platform/mac/css2.1/t010403-shand-font-02-b-expected.checksum:
        * platform/mac/css2.1/t010403-shand-font-02-b-expected.png:
        * platform/mac/css2.1/t010403-shand-font-03-b-expected.checksum:
        * platform/mac/css2.1/t010403-shand-font-03-b-expected.png:
        * platform/mac/css2.1/t040102-keywords-00-b-expected.checksum:
        * platform/mac/css2.1/t040102-keywords-00-b-expected.png:
        * platform/mac/css2.1/t040102-keywords-01-b-expected.checksum:
        * platform/mac/css2.1/t040102-keywords-01-b-expected.png:
        * platform/mac/css2.1/t040103-case-00-b-expected.checksum:
        * platform/mac/css2.1/t040103-case-00-b-expected.png:
        * platform/mac/css2.1/t040103-case-01-c-expected.checksum:
        * platform/mac/css2.1/t040103-case-01-c-expected.png:
        * platform/mac/css2.1/t040103-escapes-00-b-expected.checksum:
        * platform/mac/css2.1/t040103-escapes-00-b-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69903 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Dirk Pranke  <dpranke@chromium.org>

        Reviewed by Eric Siedel.

        mocktool.MockOptions is inheriting from Mock, which has the side
        effect of defaulting any attribute to another MockObject. So,
        MockOptions().foo would always evaluate to true. This was
        covering over bugs in the unit tests, and is probably the wrong
        default behavior for anything attempting to mock out the options
        argument returned from optparse.parse_args().

        This patch changes the default behavior. The new MockOptions()
        class takes an optional list of keyword parameters to set; this
        patch doesn't use that feature but the fix for bug 47510 will.

        Also, this patch just fills in the default values necessary to
        get all of the tests to pass; I didn't stare at each test by
        hand to determine the "right" values. We can either fix that in
        subsequent patches or let me know if we want to do that now (and
        give me some guidance on what those values might want to be).

        https://bugs.webkit.org/show_bug.cgi?id=47709

        * Scripts/webkitpy/tool/commands/commandtest.py:
        * Scripts/webkitpy/tool/commands/download_unittest.py:
        * Scripts/webkitpy/tool/commands/upload_unittest.py:
        * Scripts/webkitpy/tool/mocktool.py:
        * Scripts/webkitpy/tool/steps/steps_unittest.py:
        * Scripts/webkitpy/tool/steps/updatechangelogswithreview_unittest.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69905 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Oliver Hunt  <oliver@apple.com>

        Reviewed by Sam Weinig.

        Automatic Semicolon Insertion incorrectly inserts semicolon after break, continue, and return followed by a newline
        https://bugs.webkit.org/show_bug.cgi?id=47762

        The old YACC parser depended on the lexer for some classes of semicolon insertion.
        The new parser handles ASI entirely on its own so when the lexer inserts a semicolon
        on its own the net result is a spurious semicolon in the input stream.  This can result
        in incorrect parsing in some cases:

        if (0)
            break
        ;else {}

        Would result in a parse failure as the output from the lexer is essentially

        if (0)
             break
        ;;else

        So the second semicolon is interpreted as a empty statement, which terminates the if,
        making the else an error.

        * parser/JSParser.cpp:
        (JSC::JSParser::parseThrowStatement):
          Parsing of throw statement was wrong, and only worked due to the weird behaviour
          in the lexer
        * parser/Lexer.cpp:
        (JSC::Lexer::lex):
          Remove bogus semicolon insertion from the newline handling
2010-10-15  Oliver Hunt  <oliver@apple.com>

        Reviewed by Sam Weinig.

        ASI incorrectly inserts semicolon after break, continue, and return followed by a newline
        https://bugs.webkit.org/show_bug.cgi?id=47762

        tests for correct ASI following break, continue, and return

        * fast/js/break-ASI-expected.txt: Added.
        * fast/js/break-ASI.html: Added.
        * fast/js/script-tests/break-ASI.js: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69906 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Kinuko Yasuda  <kinuko@google.com>

        Reviewed by Jian Li.

        Implement FileEntrySync.file() in FileSystem API
        https://bugs.webkit.org/show_bug.cgi?id=47310

        Tests: fast/filesystem/workers/file-from-file-entry-sync.html
               fast/filesystem/workers/file-from-file-entry.html

        * fileapi/DOMFileSystem.cpp:
        (WebCore::DOMFileSystem::createFile): Added.
        * fileapi/DOMFileSystem.h:
        * fileapi/DOMFileSystemSync.cpp:
        (WebCore::DOMFileSystemSync::createFile): Added.
        * fileapi/DOMFileSystemSync.h:
        * fileapi/DirectoryReaderBase.h: Added 'virtual path' comment.
        * fileapi/EntryBase.h: Added 'virtual path' comment.
        * fileapi/FileEntry.cpp:
        (WebCore::FileEntry::file): Changed to use DOMFileSystem::createFile.
        * fileapi/FileEntrySync.cpp:
        (WebCore::FileEntrySync::file): Implemented.
        * fileapi/FileEntrySync.h:
        * fileapi/FileEntrySync.idl: Added file().
2010-10-15  Kinuko Yasuda  <kinuko@chromium.org>

        Reviewed by Jian Li.

        Implement FileEntrySync.file() in FileSystem API
        https://bugs.webkit.org/show_bug.cgi?id=47310

        * fast/filesystem/file-from-file-entry-expected.txt:
        * fast/filesystem/file-from-file-entry.html:
        * fast/filesystem/resources/file-from-file-entry-sync.js: Added.
        * fast/filesystem/resources/file-from-file-entry.js: Added.
        * fast/filesystem/script-tests/file-from-file-entry.js: Moved to
        resources to make it available for workers tests too.
        * fast/filesystem/workers/file-from-file-entry-expected.txt: Added.
        * fast/filesystem/workers/file-from-file-entry-sync-expected.txt: Added.
        * fast/filesystem/workers/file-from-file-entry-sync.html: Added.
        * fast/filesystem/workers/file-from-file-entry.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69907 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Tony Chang.

        serializeNodesWithNamespaces should be in MarkupAccumulator
        https://bugs.webkit.org/show_bug.cgi?id=47749

        Moved serializeNodesWithNamespaces to MarkupAccumulator, and renamed it to serializeNodes.
        MarkupAccumulator::serializeNode now returns the resultant string instead of having a separate takeResults().
        Added several helper functions to MarkupAccumulator.

        No new tests are added since this is a cleanup.

        * editing/MarkupAccumulator.cpp:
        (WebCore::MarkupAccumulator::serializeNodes): Wrapper for serializeNodes and concatenateMarkup.
        (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): Moved from markup.cpp
        (WebCore::MarkupAccumulator::appendStartTag): Calls appendString instead of appending into m_succeedingMarkup directly.
        (WebCore::MarkupAccumulator::appendEndTag): Ditto.
        (WebCore::MarkupAccumulator::totalLength): Added; extracted from takeResults.
        (WebCore::MarkupAccumulator::concatenateMarkup): Ditto.
        * editing/MarkupAccumulator.h:
        (WebCore::MarkupAccumulator::length): Added; calls totalLength.
        * editing/markup.cpp:
        (WebCore::StyledMarkupAccumulator::appendString): Added; calls MarkupAccumulator's appendString.
        (WebCore::StyledMarkupAccumulator::wrapWithStyleNode): Calls appendString.
        (WebCore::StyledMarkupAccumulator::takeResults): Calls length, totalLength, and concatenateMarkup.
        (WebCore::StyledMarkupAccumulator::serializeNodes): Became a member function.
        (WebCore::createMarkup): Uses MarkupAccumulator.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69909 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-15  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        unlink removes inline style of anchor elements
        https://bugs.webkit.org/show_bug.cgi?id=47424

        The bug was caused by our not extracting styles when the anchor element is removed by removeInlineStyle.
        Because we removed the element without pushing its inline style down, we lost style information.

        Fixed the bug by pushing down styles in removeInlineStyle as done in pushDownInlineStyleAroundNode.
        Also fixed a bug in addInlineStyleIfNeeded where StyleChange incorrectly removed styles of the container
        node as supposed to that of startNode from the style to apply when startNode is not an element.

        Test: editing/execCommand/toggle-unlink.html

        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): To prevent a similar bug in the future,
        added an assert that extractedStyle is specified whenever we're removing a styled element.
        (WebCore::ApplyStyleCommand::removeInlineStyle):
        (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
2010-10-15  Ryosuke Niwa  <rniwa@webkit.org>

        Reviewed by Darin Adler.

        unlink removes inline style of anchor elements
        https://bugs.webkit.org/show_bug.cgi?id=47424

        Added a test to ensure execCommand('unlink', false, null) preserves the inline style declaration.

        * editing/execCommand/script-tests/toggle-unlink.js: Added.
        (testSingleToggle):
        (selectAll):
        (selectFirstTwoWords):
        (selectLastTwoWords):
        (selectLastWord):
        * editing/execCommand/toggle-unlink-expected.txt: Added.
        * editing/execCommand/toggle-unlink.html: Added.
        * editing/style/script-tests/make-text-writing-direction-inline.js: Specifies both direction
        and unicode-bidi properties instead of just direction property.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69910 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2010-10-16  Patrick Gansterer  <paroga@webkit.org>

        Reviewed by Adam Barth.

        Rename StringHasherFunctions.h to StringHasher.h
        https://bugs.webkit.org/show_bug.cgi?id=47200

        Now StringHasherFunctions.h only contains the StringHasher class, so rename it to the correct name.

        * GNUmakefile.am:
        * JavaScriptCore.gypi:
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * wtf/StringHashFunctions.h: Removed.
        * wtf/StringHasher.h: Copied from JavaScriptCore/wtf/StringHashFunctions.h.
        * wtf/text/StringHash.h:
        * wtf/text/StringImpl.h:
2010-10-16  Patrick Gansterer  <paroga@webkit.org>

        Reviewed by Adam Barth.

        Rename StringHasherFunctions.h to StringHasher.h
        https://bugs.webkit.org/show_bug.cgi?id=47200

        * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
        * ForwardingHeaders/wtf/StringHasher.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/StringHashFunctions.h.
2010-10-16  Patrick Gansterer  <paroga@webkit.org>

        Reviewed by Adam Barth.

        Rename StringHasherFunctions.h to StringHasher.h
        https://bugs.webkit.org/show_bug.cgi?id=47200

        * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
        * ForwardingHeaders/wtf/StringHasher.h: Copied from WebCore/ForwardingHeaders/wtf/StringHashFunctions.h.

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