-
https://bugs.webkit.org/show_bug.cgi?id=48545hyatt@apple.com authored
WebCore: https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PageUp/PageDwn should respect writing-mode. Reviewed by Sam Weinig. Add logical scrolling to WebCore. It basically mirrors physical scrolling but works in abstract logical directions and only converts to physical when it's time to attempt the scroll. Also fixed bugs in scrollRecursively and logicalScrollRecursively where overflow sections in containing frames got skipped over. Made the resetting of the inline axis scroll position on Home/End Mac-specific for overflow sections. * WebCore.exp.in: * page/EventHandler.cpp: (WebCore::EventHandler::logicalScrollOverflow): (WebCore::EventHandler::scrollRecursively): (WebCore::EventHandler::logicalScrollRecursively): * page/EventHandler.h: * page/FrameView.cpp: (WebCore::FrameView::isVerticalDocument): (WebCore::FrameView::isFlippedDocument): * page/FrameView.h: * platform/ScrollTypes.h: (WebCore::logicalToPhysical): * platform/ScrollView.cpp: (WebCore::ScrollView::scroll): (WebCore::ScrollView::logicalScroll): * platform/ScrollView.h: (WebCore::ScrollView::isVerticalDocument): (WebCore::ScrollView::isFlippedDocument): * rendering/RenderBox.cpp: (WebCore::RenderBox::logicalScroll): * rendering/RenderBox.h: * rendering/RenderLayer.cpp: (WebCore::RenderLayer::scroll): * rendering/RenderListBox.cpp: (WebCore::RenderListBox::logicalScroll): * rendering/RenderListBox.h: * rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::logicalScroll): * rendering/RenderTextControlSingleLine.h: WebKit2: https://bugs.webkit.org/show_bug.cgi?id=48545, Home/End, PageUp/PageDwn should respect writing-mode. Use logical scrolling instead of physical scrolling for those keys in WebKit2. Reviewed by Sam Weinig. * WebProcess/WebPage/mac/WebPageMac.mm: (WebKit::logicalScroll): (WebKit::WebPage::performDefaultBehaviorForKeyEvent): * WebProcess/WebPage/qt/WebPageQt.cpp: (WebKit::logicalScroll): (WebKit::WebPage::performDefaultBehaviorForKeyEvent): * WebProcess/WebPage/win/WebPageWin.cpp: (WebKit::logicalScroll): (WebKit::WebPage::performDefaultBehaviorForKeyEvent): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@73941 268f45cc-cd09-0410-ab3c-d52691b4dbfc
a60d0cea