Update scroll bars/form controls when FocusController::isActive changes
authoraroben@apple.com <aroben@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 17 Jan 2008 17:45:31 +0000 (17:45 +0000)
committeraroben@apple.com <aroben@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 17 Jan 2008 17:45:31 +0000 (17:45 +0000)
commit1aa4558490645c0e0e8a38f7aa8aec9386602717
tree6357fd434f2a04315f5379d8708056a416776c7b
parent8997b10dd09cea6c99d5fe2ecd9f9eaaff7cd66c
Update scroll bars/form controls when FocusController::isActive changes

WebCore:

        Update scroll bars/form controls when FocusController::isActive changes

        Part of <rdar://5006915> Inactive look for Aqua controls

        Reviewed by Darin.

        All tests pass.

        * page/FocusController.cpp:
        (WebCore::FocusController::setActive): Update control tints when the
        active state changes.
        * page/FrameView.cpp:
        (WebCore::FrameView::updateControlTints): On Windows, we have to ask
        ScrollView to paint so that the outermost scroll bars will paint. On
        Mac, the outermost scroll bars are taken care of by NSScroller.
        * platform/PopupMenu.h: Updated for ScrollBarClient changes.
        * platform/ScrollBar.h: Added a new ScrollBarClient method.
        * platform/win/PlatformScrollBarSafari.cpp:
        (WebCore::PlatformScrollbar::paint): Invalidate when updating control
        tints so that we can paint with the new tint later.
        (WebCore::PlatformScrollbar::paintButton): Pass the active state down
        to SafariTheme.
        (WebCore::PlatformScrollbar::paintTrack): Ditto.
        (WebCore::PlatformScrollbar::paintThumb): Ditto.
        * platform/win/ScrollViewWin.cpp:
        (WebCore::ScrollView::ScrollViewPrivate::isActive): Added.
        (WebCore::ScrollView::paint): Pass paint calls on down if we're
        updating control tints so the scroll bars can invalidate.
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::isActive): Added.
        * rendering/RenderLayer.h:
        * rendering/RenderListBox.cpp:
        (WebCore::RenderListBox::isActive): Added.
        * rendering/RenderListBox.h:
        * rendering/RenderTheme.cpp:
        (WebCore::RenderTheme::isActive): Added.
        * rendering/RenderTheme.h:
        * rendering/RenderThemeSafari.cpp:
        (WebCore::RenderThemeSafari::determineState): Pass the active state
        down to SafariTheme.

WebKit/win:

        Updated for ScrollBarClient changes

        Reviewed by Darin.

        * WebScrollBar.h:
        (WebScrollBar::isActive): Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@29582 268f45cc-cd09-0410-ab3c-d52691b4dbfc
16 files changed:
WebCore/ChangeLog
WebCore/page/FocusController.cpp
WebCore/page/FrameView.cpp
WebCore/platform/PopupMenu.h
WebCore/platform/ScrollBar.h
WebCore/platform/win/PlatformScrollBarSafari.cpp
WebCore/platform/win/ScrollViewWin.cpp
WebCore/rendering/RenderLayer.cpp
WebCore/rendering/RenderLayer.h
WebCore/rendering/RenderListBox.cpp
WebCore/rendering/RenderListBox.h
WebCore/rendering/RenderTheme.cpp
WebCore/rendering/RenderTheme.h
WebCore/rendering/RenderThemeSafari.cpp
WebKit/win/ChangeLog
WebKit/win/WebScrollBar.h