WebCore:
authorandersca <andersca@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Jul 2006 23:11:58 +0000 (23:11 +0000)
committerandersca <andersca@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Jul 2006 23:11:58 +0000 (23:11 +0000)
commit93835687bd56ca089d53e4897282bb364bf76f44
tree188d3650f5dca79f6f9a159c144dba5f75fec0f3
parentc031d5a7487f008e6c48d91f79e6711f034ac891
WebCore:

2006-07-06  Anders Carlsson  <acarlsson@apple.com>

        Reviewed by Maciej.

        <rdar://problem/4610891> Support overflow events

        * DerivedSources.make:
        Add generated sources.

        * WebCore.xcodeproj/project.pbxproj:
        Add new files.

        * bindings/js/kjs_events.cpp:
        (KJS::toJS):
        Support creating wrappers for overflow events..

        * bindings/objc/DOMEvents.h:
        * bindings/objc/DOMEvents.mm:
        (+[DOMEvent _eventWith:]):
        (-[DOMOverflowEvent _overflowEvent]):
        (-[DOMOverflowEvent orient]):
        (-[DOMOverflowEvent horizontalOverflow]):
        (-[DOMOverflowEvent verticalOverflow]):
        Add Objective-C wrapper for overflow events.

        * dom/Event.cpp:
        (WebCore::Event::isOverflowEvent):
        * dom/Event.h:
        * dom/EventNames.h:
        * dom/OverflowEvent.cpp: Added.
        (WebCore::OverflowEvent::OverflowEvent):
        (WebCore::OverflowEvent::isOverflowEvent):
        * dom/OverflowEvent.h: Added.
        (WebCore::OverflowEvent::):
        (WebCore::OverflowEvent::orient):
        (WebCore::OverflowEvent::horizontalOverflow):
        (WebCore::OverflowEvent::verticalOverflow):
        * dom/OverflowEvent.idl: Added.
        Add overflow events.

        * page/FrameView.cpp:
        (WebCore::FrameViewPrivate::FrameViewPrivate):
        (WebCore::FrameView::applyOverflowToViewport):
        (WebCore::FrameView::layout):
        Dispatch any scheduled events when layout is done.

        (WebCore::FrameView::scheduleEvent):
        New function which schedules an event.

        (WebCore::FrameView::updateOverflowStatus):
        Update overflow status for the viewport.

        (WebCore::FrameView::dispatchScheduledEvents):
        New function which dispatches all scheduled events.

        * page/FrameView.h:
        Add declarations.

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::RenderLayer):
        (WebCore::RenderLayer::updateOverflowStatus):
        (WebCore::RenderLayer::updateScrollInfoAfterLayout):
        * rendering/RenderLayer.h:
        Schedule overflow events when overflow status changes.

LayoutTests:

2006-07-06  Anders Carlsson  <acarlsson@apple.com>

        Reviewed by Maciej.

        <rdar://problem/4610891> Support overflow events

        * fast/events/overflow-events-expected.txt: Added.
        * fast/events/overflow-events.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15191 268f45cc-cd09-0410-ab3c-d52691b4dbfc
19 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/events/overflow-events-expected.txt [new file with mode: 0644]
LayoutTests/fast/events/overflow-events.html [new file with mode: 0644]
WebCore/ChangeLog
WebCore/DerivedSources.make
WebCore/WebCore.xcodeproj/project.pbxproj
WebCore/bindings/js/kjs_events.cpp
WebCore/bindings/objc/DOMEvents.h
WebCore/bindings/objc/DOMEvents.mm
WebCore/dom/Event.cpp
WebCore/dom/Event.h
WebCore/dom/EventNames.h
WebCore/dom/OverflowEvent.cpp [new file with mode: 0644]
WebCore/dom/OverflowEvent.h [new file with mode: 0644]
WebCore/dom/OverflowEvent.idl [new file with mode: 0644]
WebCore/page/FrameView.cpp
WebCore/page/FrameView.h
WebCore/rendering/RenderLayer.cpp
WebCore/rendering/RenderLayer.h