Index: Source/core/html/HTMLBodyElement.cpp |
diff --git a/Source/core/html/HTMLBodyElement.cpp b/Source/core/html/HTMLBodyElement.cpp |
index 28554423bed4212612bbfbd4b60c7d6bff88fe56..6b93effb203fb92b7454e698dc3ae0f43ef7d689 100644 |
--- a/Source/core/html/HTMLBodyElement.cpp |
+++ b/Source/core/html/HTMLBodyElement.cpp |
@@ -228,7 +228,7 @@ int HTMLBodyElement::scrollLeft() |
return view ? adjustForZoom(view->scrollX(), &document) : 0; |
} |
-void HTMLBodyElement::setScrollLeft(int scrollLeft) |
+void HTMLBodyElement::setScrollLeftInternal(int scrollLeft, ScrollBehavior scrollBehavior) |
{ |
Document& document = this->document(); |
document.updateLayoutIgnorePendingStylesheets(); |
@@ -239,7 +239,7 @@ void HTMLBodyElement::setScrollLeft(int scrollLeft) |
return; |
if (render->hasOverflowClip()) { |
// FIXME: Investigate how are other browsers casting to int (rounding, ceiling, ...). |
- render->setScrollLeft(static_cast<int>(scrollLeft * render->style()->effectiveZoom())); |
+ render->setScrollLeft(static_cast<int>(scrollLeft * render->style()->effectiveZoom()), scrollBehavior); |
return; |
} |
if (!document.inQuirksMode()) |
@@ -252,7 +252,7 @@ void HTMLBodyElement::setScrollLeft(int scrollLeft) |
FrameView* view = frame->view(); |
if (!view) |
return; |
- view->setScrollPosition(IntPoint(static_cast<int>(scrollLeft * frame->pageZoomFactor()), view->scrollY())); |
+ view->setScrollPosition(IntPoint(static_cast<int>(scrollLeft * frame->pageZoomFactor()), view->scrollY()), scrollBehavior); |
} |
int HTMLBodyElement::scrollTop() |
@@ -274,7 +274,7 @@ int HTMLBodyElement::scrollTop() |
return view ? adjustForZoom(view->scrollY(), &document) : 0; |
} |
-void HTMLBodyElement::setScrollTop(int scrollTop) |
+void HTMLBodyElement::setScrollTopInternal(int scrollTop, ScrollBehavior scrollBehavior) |
{ |
Document& document = this->document(); |
document.updateLayoutIgnorePendingStylesheets(); |
@@ -285,7 +285,7 @@ void HTMLBodyElement::setScrollTop(int scrollTop) |
return; |
if (render->hasOverflowClip()) { |
// FIXME: Investigate how are other browsers casting to int (rounding, ceiling, ...). |
- render->setScrollTop(static_cast<int>(scrollTop * render->style()->effectiveZoom())); |
+ render->setScrollTop(static_cast<int>(scrollTop * render->style()->effectiveZoom()), scrollBehavior); |
return; |
} |
if (!document.inQuirksMode()) |
@@ -298,7 +298,7 @@ void HTMLBodyElement::setScrollTop(int scrollTop) |
FrameView* view = frame->view(); |
if (!view) |
return; |
- view->setScrollPosition(IntPoint(view->scrollX(), static_cast<int>(scrollTop * frame->pageZoomFactor()))); |
+ view->setScrollPosition(IntPoint(view->scrollX(), static_cast<int>(scrollTop * frame->pageZoomFactor())), scrollBehavior); |
} |
int HTMLBodyElement::scrollHeight() |