Index: Source/core/dom/Element.h |
diff --git a/Source/core/dom/Element.h b/Source/core/dom/Element.h |
index fce9b0f4517892dc8e03737d1bf5166fc5d1e390..a097fdebd3287180b02970ed5fe9fa93e3938c52 100644 |
--- a/Source/core/dom/Element.h |
+++ b/Source/core/dom/Element.h |
@@ -62,6 +62,7 @@ class MutableStylePropertySet; |
class PropertySetCSSStyleDeclaration; |
class PseudoElement; |
class ScrollState; |
+class ScrollStateCallback; |
class ScrollToOptions; |
class ShadowRoot; |
class ShadowRootInit; |
@@ -84,6 +85,12 @@ enum ElementFlags { |
NumberOfElementFlags = 6, // Required size of bitfield used to store the flags. |
}; |
+enum NativeScrollBehavior { |
+ DisableNativeScroll, |
+ PerformBeforeNativeScroll, |
+ PerformAfterNativeScroll, |
+}; |
+ |
typedef WillBeHeapVector<RefPtrWillBeMember<Attr>> AttrNodeList; |
class CORE_EXPORT Element : public ContainerNode { |
@@ -170,9 +177,6 @@ public: |
void scrollIntoView(bool alignToTop = true); |
void scrollIntoViewIfNeeded(bool centerIfNeeded = true); |
- void distributeScroll(ScrollState&); |
- void applyScroll(ScrollState&); |
- |
int offsetLeft(); |
int offsetTop(); |
int offsetWidth(); |
@@ -370,6 +374,15 @@ public: |
virtual void focus(bool restorePreviousSelection = true, WebFocusType = WebFocusTypeNone); |
virtual void updateFocusAppearance(bool restorePreviousSelection); |
virtual void blur(); |
+ |
+ void setDistributeScroll(ScrollStateCallback*, String nativeScrollBehavior); |
+ void nativeDistributeScroll(ScrollState&); |
+ void setApplyScroll(ScrollStateCallback*, String nativeScrollBehavior); |
+ void nativeApplyScroll(ScrollState&); |
+ |
+ void callDistributeScroll(ScrollState&); |
+ void callApplyScroll(ScrollState&); |
+ |
// Whether this element can receive focus at all. Most elements are not |
// focusable but some elements, such as form controls and links, are. Unlike |
// layoutObjectIsFocusable(), this method may be called when layout is not up to |