ScrollingCoordinatorTypes.h [plain text]
#pragma once
#include "ScrollTypes.h"
namespace WebCore {
typedef unsigned SynchronousScrollingReasons;
enum class ScrollingNodeType : uint8_t {
MainFrame,
Subframe,
FrameHosting,
Overflow,
OverflowProxy,
Fixed,
Sticky,
Positioned
};
enum ScrollingStateTreeAsTextBehaviorFlags {
ScrollingStateTreeAsTextBehaviorNormal = 0,
ScrollingStateTreeAsTextBehaviorIncludeLayerIDs = 1 << 0,
ScrollingStateTreeAsTextBehaviorIncludeNodeIDs = 1 << 1,
ScrollingStateTreeAsTextBehaviorIncludeLayerPositions = 1 << 2,
ScrollingStateTreeAsTextBehaviorDebug = ScrollingStateTreeAsTextBehaviorIncludeLayerIDs | ScrollingStateTreeAsTextBehaviorIncludeNodeIDs | ScrollingStateTreeAsTextBehaviorIncludeLayerPositions
};
typedef unsigned ScrollingStateTreeAsTextBehavior;
enum class ScrollingLayerPositionAction {
Set,
SetApproximate,
Sync
};
struct ScrollableAreaParameters {
ScrollElasticity horizontalScrollElasticity { ScrollElasticityNone };
ScrollElasticity verticalScrollElasticity { ScrollElasticityNone };
ScrollbarMode horizontalScrollbarMode { ScrollbarAuto };
ScrollbarMode verticalScrollbarMode { ScrollbarAuto };
bool hasEnabledHorizontalScrollbar { false };
bool hasEnabledVerticalScrollbar { false };
bool horizontalScrollbarHiddenByStyle { false };
bool verticalScrollbarHiddenByStyle { false };
bool useDarkAppearanceForScrollbars { false };
bool operator==(const ScrollableAreaParameters& other) const
{
return horizontalScrollElasticity == other.horizontalScrollElasticity
&& verticalScrollElasticity == other.verticalScrollElasticity
&& horizontalScrollbarMode == other.horizontalScrollbarMode
&& verticalScrollbarMode == other.verticalScrollbarMode
&& hasEnabledHorizontalScrollbar == other.hasEnabledHorizontalScrollbar
&& horizontalScrollbarHiddenByStyle == other.horizontalScrollbarHiddenByStyle
&& verticalScrollbarHiddenByStyle == other.verticalScrollbarHiddenByStyle
&& hasEnabledVerticalScrollbar == other.hasEnabledVerticalScrollbar
&& useDarkAppearanceForScrollbars == other.useDarkAppearanceForScrollbars;
}
};
enum class ScrollingEventResult {
DidNotHandleEvent,
DidHandleEvent,
SendToMainThread
};
enum class ViewportRectStability {
Stable,
Unstable,
ChangingObscuredInsetsInteractively };
}