WebCore:
authordarin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 7 Mar 2008 01:51:20 +0000 (01:51 +0000)
committerdarin@apple.com <darin@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 7 Mar 2008 01:51:20 +0000 (01:51 +0000)
commit3b7bc7a59e68a70a4e09a1c6b0a280581a7d6b07
tree34f709a6357cb7c40a8dbe66297ac74ed1711a5d
parent1467e8e7f7f7a74c27712e1f124176f3ac5f41f8
WebCore:

        Reviewed by Mitz.

        - fix regression test failures from the visited-link change

        * WebCore.base.exp: Export PageGroup::setShouldTrackVisitedLinks.
        * page/PageGroup.cpp:
        (WebCore::PageGroup::addVisitedLink): Do nothing and return early
        if shouldTrackVisitedLinks is false.
        (WebCore::PageGroup::removeVisitedLinks): Reset m_visitedLinksPopulated
        so the next time a link is queried this will be populated from history.
        (WebCore::PageGroup::setShouldTrackVisitedLinks): Added.
        * page/PageGroup.h: Added setShouldTrackVisitedLinks. This is global
        for now, but it would be better if it was per-page-group instead.

WebKit/mac:

        Reviewed by Mitz.

        - fix regression test failures from the visited-link change

        * History/WebHistory.mm:
        (+[WebHistory setOptionalSharedHistory:]): Call PageGroup::setShouldTrackVisitedLinks
        to turn off visited links if there is no history object. Also call
        removeAllVisitedLinks so we can start over from scratch with the new history.

WebKit/win:

        Reviewed by Mitz.

        - fix regression test failures and crashes from the visited-link change

        * WebCoreSupport/WebChromeClient.cpp:
        (WebChromeClient::populateVisitedLinks): Check for null before calling
        addVisitedLinksToPageGroup.
        * WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebFrameLoaderClient::updateGlobalHistory): Ditto.
        * WebHistory.cpp:
        (WebHistory::setOptionalSharedHistory): Call PageGroup::setShouldTrackVisitedLinks
        to turn off visited links if there is no history object. Also call
        removeAllVisitedLinks so we can start over from scratch with the new history.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@30867 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/WebCore.base.exp
WebCore/page/PageGroup.cpp
WebCore/page/PageGroup.h
WebKit/mac/ChangeLog
WebKit/mac/History/WebHistory.mm
WebKit/win/ChangeLog
WebKit/win/WebCoreSupport/WebChromeClient.cpp
WebKit/win/WebCoreSupport/WebFrameLoaderClient.cpp
WebKit/win/WebHistory.cpp