<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[285357] trunk/Source</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/285357">285357</a></dd>
<dt>Author</dt> <dd>nmouchtaris@apple.com</dd>
<dt>Date</dt> <dd>2021-11-05 16:06:50 -0700 (Fri, 05 Nov 2021)</dd>
</dl>

<h3>Log Message</h3>
<pre>Make scroll bar mode an enum class
https://bugs.webkit.org/show_bug.cgi?id=232651

Reviewed by Simon Fraser.

Source/WebCore:

* html/HTMLFrameElementBase.cpp:
(WebCore::HTMLFrameElementBase::scrollingMode const):
* html/HTMLFrameOwnerElement.h:
(WebCore::HTMLFrameOwnerElement::scrollingMode const):
* page/Frame.cpp:
(WebCore::Frame::createView):
* page/Frame.h:
* page/FrameView.cpp:
(WebCore::FrameView::resetScrollbars):
(WebCore::FrameView::init):
(WebCore::FrameView::updateCanHaveScrollbars):
(WebCore::FrameView::applyOverflowToViewport):
(WebCore::FrameView::calculateScrollbarModesForLayout):
(WebCore::FrameView::adjustScrollbarsForLayout):
(WebCore::FrameView::performFixedWidthAutoSize):
(WebCore::FrameView::performSizeToContentAutoSize):
(WebCore::FrameView::isScrollable):
(WebCore::FrameView::enableAutoSizeMode):
* page/SpatialNavigation.cpp:
(WebCore::canScrollInDirection):
* page/scrolling/ScrollingCoordinatorTypes.h:
* page/scrolling/ScrollingTreeScrollingNode.h:
* platform/ScrollTypes.cpp:
(WebCore::operator<<):
* platform/ScrollTypes.h:
* platform/ScrollView.cpp:
(WebCore::ScrollView::setCanHaveScrollbars):
(WebCore::ScrollView::updateScrollbars):
(WebCore::ScrollView::platformScrollbarModes const):
* platform/ScrollView.h:
* platform/ScrollableArea.h:
(WebCore::ScrollableArea::horizontalScrollbarMode const):
(WebCore::ScrollableArea::verticalScrollbarMode const):
(WebCore::ScrollableArea::canHaveScrollbars const):
* platform/ios/wak/WAKScrollView.mm:
(-[WAKScrollView horizontalScrollingMode]):
(-[WAKScrollView verticalScrollingMode]):
* rendering/RenderFrameBase.cpp:
(WebCore::RenderFrameBase::performLayoutWithFlattening):
* rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::flattenFrame const):
* rendering/RenderLayer.cpp:
(WebCore::frameElementAndViewPermitScroll):
* rendering/RenderLayerBacking.cpp:
(WebCore::computePageTiledBackingCoverage):

Source/WebKit:

* WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::setAlwaysShowsHorizontalScroller):
(WebKit::WebPage::setAlwaysShowsVerticalScroller):

Source/WebKitLegacy/mac:

* WebCoreSupport/WebFrameLoaderClient.mm:
(WebFrameLoaderClient::transitionToCommittedForNewPage):
* WebView/WebDynamicScrollBarsView.mm:
(-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
(-[WebDynamicScrollBarsView updateScrollers]):
(-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
(-[WebDynamicScrollBarsView allowsVerticalScrolling]):
* WebView/WebView.mm:
(-[WebView setAlwaysShowVerticalScroller:]):
(-[WebView alwaysShowVerticalScroller]):
(-[WebView setAlwaysShowHorizontalScroller:]):
(-[WebView alwaysShowHorizontalScroller]):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLFrameElementBasecpp">trunk/Source/WebCore/html/HTMLFrameElementBase.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLFrameOwnerElementh">trunk/Source/WebCore/html/HTMLFrameOwnerElement.h</a></li>
<li><a href="#trunkSourceWebCorepageFramecpp">trunk/Source/WebCore/page/Frame.cpp</a></li>
<li><a href="#trunkSourceWebCorepageFrameh">trunk/Source/WebCore/page/Frame.h</a></li>
<li><a href="#trunkSourceWebCorepageFrameViewcpp">trunk/Source/WebCore/page/FrameView.cpp</a></li>
<li><a href="#trunkSourceWebCorepageSpatialNavigationcpp">trunk/Source/WebCore/page/SpatialNavigation.cpp</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingCoordinatorTypesh">trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h</a></li>
<li><a href="#trunkSourceWebCorepagescrollingScrollingTreeScrollingNodeh">trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollTypescpp">trunk/Source/WebCore/platform/ScrollTypes.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollTypesh">trunk/Source/WebCore/platform/ScrollTypes.h</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollViewcpp">trunk/Source/WebCore/platform/ScrollView.cpp</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollViewh">trunk/Source/WebCore/platform/ScrollView.h</a></li>
<li><a href="#trunkSourceWebCoreplatformScrollableAreah">trunk/Source/WebCore/platform/ScrollableArea.h</a></li>
<li><a href="#trunkSourceWebCoreplatformioswakWAKScrollViewmm">trunk/Source/WebCore/platform/ios/wak/WAKScrollView.mm</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderFrameBasecpp">trunk/Source/WebCore/rendering/RenderFrameBase.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderIFramecpp">trunk/Source/WebCore/rendering/RenderIFrame.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayercpp">trunk/Source/WebCore/rendering/RenderLayer.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerBackingcpp">trunk/Source/WebCore/rendering/RenderLayerBacking.cpp</a></li>
<li><a href="#trunkSourceWebKitChangeLog">trunk/Source/WebKit/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitWebProcessWebCoreSupportWebFrameLoaderClientcpp">trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp</a></li>
<li><a href="#trunkSourceWebKitWebProcessWebPageWebPagecpp">trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp</a></li>
<li><a href="#trunkSourceWebKitLegacymacChangeLog">trunk/Source/WebKitLegacy/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitLegacymacWebCoreSupportWebFrameLoaderClientmm">trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm</a></li>
<li><a href="#trunkSourceWebKitLegacymacWebViewWebDynamicScrollBarsViewmm">trunk/Source/WebKitLegacy/mac/WebView/WebDynamicScrollBarsView.mm</a></li>
<li><a href="#trunkSourceWebKitLegacymacWebViewWebViewmm">trunk/Source/WebKitLegacy/mac/WebView/WebView.mm</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog   2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/ChangeLog      2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -1,3 +1,56 @@
</span><ins>+2021-11-05  Nikolaos Mouchtaris  <nmouchtaris@apple.com>
+
+        Make scroll bar mode an enum class
+        https://bugs.webkit.org/show_bug.cgi?id=232651
+
+        Reviewed by Simon Fraser.
+
+        * html/HTMLFrameElementBase.cpp:
+        (WebCore::HTMLFrameElementBase::scrollingMode const):
+        * html/HTMLFrameOwnerElement.h:
+        (WebCore::HTMLFrameOwnerElement::scrollingMode const):
+        * page/Frame.cpp:
+        (WebCore::Frame::createView):
+        * page/Frame.h:
+        * page/FrameView.cpp:
+        (WebCore::FrameView::resetScrollbars):
+        (WebCore::FrameView::init):
+        (WebCore::FrameView::updateCanHaveScrollbars):
+        (WebCore::FrameView::applyOverflowToViewport):
+        (WebCore::FrameView::calculateScrollbarModesForLayout):
+        (WebCore::FrameView::adjustScrollbarsForLayout):
+        (WebCore::FrameView::performFixedWidthAutoSize):
+        (WebCore::FrameView::performSizeToContentAutoSize):
+        (WebCore::FrameView::isScrollable):
+        (WebCore::FrameView::enableAutoSizeMode):
+        * page/SpatialNavigation.cpp:
+        (WebCore::canScrollInDirection):
+        * page/scrolling/ScrollingCoordinatorTypes.h:
+        * page/scrolling/ScrollingTreeScrollingNode.h:
+        * platform/ScrollTypes.cpp:
+        (WebCore::operator<<):
+        * platform/ScrollTypes.h:
+        * platform/ScrollView.cpp:
+        (WebCore::ScrollView::setCanHaveScrollbars):
+        (WebCore::ScrollView::updateScrollbars):
+        (WebCore::ScrollView::platformScrollbarModes const):
+        * platform/ScrollView.h:
+        * platform/ScrollableArea.h:
+        (WebCore::ScrollableArea::horizontalScrollbarMode const):
+        (WebCore::ScrollableArea::verticalScrollbarMode const):
+        (WebCore::ScrollableArea::canHaveScrollbars const):
+        * platform/ios/wak/WAKScrollView.mm:
+        (-[WAKScrollView horizontalScrollingMode]):
+        (-[WAKScrollView verticalScrollingMode]):
+        * rendering/RenderFrameBase.cpp:
+        (WebCore::RenderFrameBase::performLayoutWithFlattening):
+        * rendering/RenderIFrame.cpp:
+        (WebCore::RenderIFrame::flattenFrame const):
+        * rendering/RenderLayer.cpp:
+        (WebCore::frameElementAndViewPermitScroll):
+        * rendering/RenderLayerBacking.cpp:
+        (WebCore::computePageTiledBackingCoverage):
+
</ins><span class="cx"> 2021-11-05  Alex Christensen  <achristensen@webkit.org>
</span><span class="cx"> 
</span><span class="cx">         Restructure WKContentRuleList Action storage during compilation and interpretation
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLFrameElementBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLFrameElementBase.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLFrameElementBase.cpp       2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/html/HTMLFrameElementBase.cpp  2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -231,7 +231,7 @@
</span><span class="cx">     return equalLettersIgnoringASCIICase(scrollingAttribute, "no")
</span><span class="cx">         || equalLettersIgnoringASCIICase(scrollingAttribute, "noscroll")
</span><span class="cx">         || equalLettersIgnoringASCIICase(scrollingAttribute, "off")
</span><del>-        ? ScrollbarAlwaysOff : ScrollbarAuto;
</del><ins>+        ? ScrollbarMode::AlwaysOff : ScrollbarMode::Auto;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLFrameOwnerElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLFrameOwnerElement.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLFrameOwnerElement.h        2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/html/HTMLFrameOwnerElement.h   2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -51,7 +51,7 @@
</span><span class="cx"> 
</span><span class="cx">     ExceptionOr<Document&> getSVGDocument() const;
</span><span class="cx"> 
</span><del>-    virtual ScrollbarMode scrollingMode() const { return ScrollbarAuto; }
</del><ins>+    virtual ScrollbarMode scrollingMode() const { return ScrollbarMode::Auto; }
</ins><span class="cx"> 
</span><span class="cx">     SandboxFlags sandboxFlags() const { return m_sandboxFlags; }
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorepageFramecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/Frame.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/Frame.cpp      2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/page/Frame.cpp 2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -918,7 +918,7 @@
</span><span class="cx">         ownerRenderer()->setWidget(frameView);
</span><span class="cx"> 
</span><span class="cx">     if (HTMLFrameOwnerElement* owner = ownerElement())
</span><del>-        view()->setCanHaveScrollbars(owner->scrollingMode() != ScrollbarAlwaysOff);
</del><ins>+        view()->setCanHaveScrollbars(owner->scrollingMode() != ScrollbarMode::AlwaysOff);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> DOMWindow* Frame::window() const
</span></span></pre></div>
<a id="trunkSourceWebCorepageFrameh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/Frame.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/Frame.h        2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/page/Frame.h   2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -128,8 +128,8 @@
</span><span class="cx">     WEBCORE_EXPORT void setView(RefPtr<FrameView>&&);
</span><span class="cx">     WEBCORE_EXPORT void createView(const IntSize&, const std::optional<Color>& backgroundColor,
</span><span class="cx">         const IntSize& fixedLayoutSize, const IntRect& fixedVisibleContentRect,
</span><del>-        bool useFixedLayout = false, ScrollbarMode = ScrollbarAuto, bool horizontalLock = false,
-        ScrollbarMode = ScrollbarAuto, bool verticalLock = false);
</del><ins>+        bool useFixedLayout = false, ScrollbarMode = ScrollbarMode::Auto, bool horizontalLock = false,
+        ScrollbarMode = ScrollbarMode::Auto, bool verticalLock = false);
</ins><span class="cx"> 
</span><span class="cx">     WEBCORE_EXPORT ~Frame();
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorepageFrameViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/FrameView.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/FrameView.cpp  2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/page/FrameView.cpp     2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -297,9 +297,9 @@
</span><span class="cx">     // Reset the document's scrollbars back to our defaults before we yield the floor.
</span><span class="cx">     setScrollbarsSuppressed(true);
</span><span class="cx">     if (m_canHaveScrollbars)
</span><del>-        setScrollbarModes(ScrollbarAuto, ScrollbarAuto);
</del><ins>+        setScrollbarModes(ScrollbarMode::Auto, ScrollbarMode::Auto);
</ins><span class="cx">     else
</span><del>-        setScrollbarModes(ScrollbarAlwaysOff, ScrollbarAlwaysOff);
</del><ins>+        setScrollbarModes(ScrollbarMode::AlwaysOff, ScrollbarMode::AlwaysOff);
</ins><span class="cx">     setScrollbarsSuppressed(false);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -322,7 +322,7 @@
</span><span class="cx"> 
</span><span class="cx">     // Propagate the scrolling mode to the view.
</span><span class="cx">     auto* ownerElement = frame().ownerElement();
</span><del>-    if (is<HTMLFrameElementBase>(ownerElement) && downcast<HTMLFrameElementBase>(*ownerElement).scrollingMode() == ScrollbarAlwaysOff)
</del><ins>+    if (is<HTMLFrameElementBase>(ownerElement) && downcast<HTMLFrameElementBase>(*ownerElement).scrollingMode() == ScrollbarMode::AlwaysOff)
</ins><span class="cx">         setCanHaveScrollbars(false);
</span><span class="cx"> 
</span><span class="cx">     Page* page = frame().page();
</span><span class="lines">@@ -521,7 +521,7 @@
</span><span class="cx">     ScrollbarMode hMode;
</span><span class="cx">     ScrollbarMode vMode;
</span><span class="cx">     scrollbarModes(hMode, vMode);
</span><del>-    if (hMode == ScrollbarAlwaysOff && vMode == ScrollbarAlwaysOff)
</del><ins>+    if (hMode == ScrollbarMode::AlwaysOff && vMode == ScrollbarMode::AlwaysOff)
</ins><span class="cx">         setCanHaveScrollbars(false);
</span><span class="cx">     else
</span><span class="cx">         setCanHaveScrollbars(true);
</span><span class="lines">@@ -659,15 +659,15 @@
</span><span class="cx">     case Overflow::Hidden:
</span><span class="cx">     case Overflow::Clip:
</span><span class="cx">         if (overrideHidden)
</span><del>-            hMode = ScrollbarAuto;
</del><ins>+            hMode = ScrollbarMode::Auto;
</ins><span class="cx">         else
</span><del>-            hMode = ScrollbarAlwaysOff;
</del><ins>+            hMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">         break;
</span><span class="cx">     case Overflow::Scroll:
</span><del>-        hMode = ScrollbarAlwaysOn;
</del><ins>+        hMode = ScrollbarMode::AlwaysOn;
</ins><span class="cx">         break;
</span><span class="cx">     case Overflow::Auto:
</span><del>-        hMode = ScrollbarAuto;
</del><ins>+        hMode = ScrollbarMode::Auto;
</ins><span class="cx">         break;
</span><span class="cx">     default:
</span><span class="cx">         // Don't set it at all.
</span><span class="lines">@@ -678,15 +678,15 @@
</span><span class="cx">     case Overflow::Hidden:
</span><span class="cx">     case Overflow::Clip:
</span><span class="cx">         if (overrideHidden)
</span><del>-            vMode = ScrollbarAuto;
</del><ins>+            vMode = ScrollbarMode::Auto;
</ins><span class="cx">         else
</span><del>-            vMode = ScrollbarAlwaysOff;
</del><ins>+            vMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">         break;
</span><span class="cx">     case Overflow::Scroll:
</span><del>-        vMode = ScrollbarAlwaysOn;
</del><ins>+        vMode = ScrollbarMode::AlwaysOn;
</ins><span class="cx">         break;
</span><span class="cx">     case Overflow::Auto:
</span><del>-        vMode = ScrollbarAuto;
</del><ins>+        vMode = ScrollbarMode::Auto;
</ins><span class="cx">         break;
</span><span class="cx">     default:
</span><span class="cx">         // Don't set it at all. Values of Overflow::PagedX and Overflow::PagedY are handled by applyPaginationToViewPort().
</span><span class="lines">@@ -731,18 +731,18 @@
</span><span class="cx">     m_viewportRendererType = ViewportRendererType::None;
</span><span class="cx"> 
</span><span class="cx">     const HTMLFrameOwnerElement* owner = frame().ownerElement();
</span><del>-    if (owner && (owner->scrollingMode() == ScrollbarAlwaysOff)) {
-        hMode = ScrollbarAlwaysOff;
-        vMode = ScrollbarAlwaysOff;
</del><ins>+    if (owner && (owner->scrollingMode() == ScrollbarMode::AlwaysOff)) {
+        hMode = ScrollbarMode::AlwaysOff;
+        vMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">         return;
</span><span class="cx">     }  
</span><span class="cx">     
</span><span class="cx">     if (m_canHaveScrollbars || strategy == RulesFromWebContentOnly) {
</span><del>-        hMode = ScrollbarAuto;
-        vMode = ScrollbarAuto;
</del><ins>+        hMode = ScrollbarMode::Auto;
+        vMode = ScrollbarMode::Auto;
</ins><span class="cx">     } else {
</span><del>-        hMode = ScrollbarAlwaysOff;
-        vMode = ScrollbarAlwaysOff;
</del><ins>+        hMode = ScrollbarMode::AlwaysOff;
+        vMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     if (layoutContext().subtreeLayoutRoot())
</span><span class="lines">@@ -767,8 +767,8 @@
</span><span class="cx">     }
</span><span class="cx">     
</span><span class="cx">     if (is<HTMLFrameSetElement>(*bodyOrFrameset) && !frameFlatteningEnabled()) {
</span><del>-        vMode = ScrollbarAlwaysOff;
-        hMode = ScrollbarAlwaysOff;
</del><ins>+        vMode = ScrollbarMode::AlwaysOff;
+        hMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="lines">@@ -1254,11 +1254,11 @@
</span><span class="cx">     if (isFirstLayout && !layoutContext().isLayoutNested()) {
</span><span class="cx">         setScrollbarsSuppressed(true);
</span><span class="cx">         // Set the initial vMode to AlwaysOn if we're auto.
</span><del>-        if (vMode == ScrollbarAuto)
-            setVerticalScrollbarMode(ScrollbarAlwaysOn); // This causes a vertical scrollbar to appear.
</del><ins>+        if (vMode == ScrollbarMode::Auto)
+            setVerticalScrollbarMode(ScrollbarMode::AlwaysOn); // This causes a vertical scrollbar to appear.
</ins><span class="cx">         // Set the initial hMode to AlwaysOff if we're auto.
</span><del>-        if (hMode == ScrollbarAuto)
-            setHorizontalScrollbarMode(ScrollbarAlwaysOff); // This causes a horizontal scrollbar to disappear.
</del><ins>+        if (hMode == ScrollbarMode::Auto)
+            setHorizontalScrollbarMode(ScrollbarMode::AlwaysOff); // This causes a horizontal scrollbar to disappear.
</ins><span class="cx">         ASSERT(frame().page());
</span><span class="cx">         if (frame().page()->isMonitoringWheelEvents())
</span><span class="cx">             scrollAnimator().setWheelEventTestMonitor(frame().page()->wheelEventTestMonitor());
</span><span class="lines">@@ -3521,8 +3521,8 @@
</span><span class="cx">     auto* renderView = document->renderView();
</span><span class="cx">     auto* firstChild = renderView->firstChild();
</span><span class="cx"> 
</span><del>-    ScrollbarMode horizonalScrollbarMode = ScrollbarAlwaysOff;
-    ScrollbarMode verticalScrollbarMode = ScrollbarAlwaysOff;
</del><ins>+    auto horizonalScrollbarMode = ScrollbarMode::AlwaysOff;
+    auto verticalScrollbarMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">     setVerticalScrollbarLock(false);
</span><span class="cx">     setHorizontalScrollbarLock(false);
</span><span class="cx">     setScrollbarModes(horizonalScrollbarMode, verticalScrollbarMode, true, true);
</span><span class="lines">@@ -3605,15 +3605,15 @@
</span><span class="cx">         newSize = newSize.expandedTo(minAutoSize);
</span><span class="cx"> 
</span><span class="cx">         // Bound the dimensions by the max bounds and determine what scrollbars to show.
</span><del>-        ScrollbarMode horizonalScrollbarMode = ScrollbarAlwaysOff;
</del><ins>+        ScrollbarMode horizonalScrollbarMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">         if (newSize.width() > m_autoSizeConstraint.width()) {
</span><span class="cx">             newSize.setWidth(m_autoSizeConstraint.width());
</span><del>-            horizonalScrollbarMode = ScrollbarAlwaysOn;
</del><ins>+            horizonalScrollbarMode = ScrollbarMode::AlwaysOn;
</ins><span class="cx">         }
</span><del>-        ScrollbarMode verticalScrollbarMode = ScrollbarAlwaysOff;
</del><ins>+        ScrollbarMode verticalScrollbarMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">         if (newSize.height() > m_autoSizeConstraint.height()) {
</span><span class="cx">             newSize.setHeight(m_autoSizeConstraint.height());
</span><del>-            verticalScrollbarMode = ScrollbarAlwaysOn;
</del><ins>+            verticalScrollbarMode = ScrollbarMode::AlwaysOn;
</ins><span class="cx">         }
</span><span class="cx"> 
</span><span class="cx">         if (newSize == size)
</span><span class="lines">@@ -3950,7 +3950,7 @@
</span><span class="cx">     ScrollbarMode horizontalMode;
</span><span class="cx">     ScrollbarMode verticalMode;
</span><span class="cx">     calculateScrollbarModesForLayout(horizontalMode, verticalMode, RulesFromWebContentOnly);
</span><del>-    if (horizontalMode == ScrollbarAlwaysOff && verticalMode == ScrollbarAlwaysOff)
</del><ins>+    if (horizontalMode == ScrollbarMode::AlwaysOff && verticalMode == ScrollbarMode::AlwaysOff)
</ins><span class="cx">         return false;
</span><span class="cx"> 
</span><span class="cx">     return true;
</span><span class="lines">@@ -4722,7 +4722,7 @@
</span><span class="cx">     // Since autosize mode forces the scrollbar mode, change them to being auto.
</span><span class="cx">     setVerticalScrollbarLock(false);
</span><span class="cx">     setHorizontalScrollbarLock(false);
</span><del>-    setScrollbarModes(ScrollbarAuto, ScrollbarAuto);
</del><ins>+    setScrollbarModes(ScrollbarMode::Auto, ScrollbarMode::Auto);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void FrameView::forceLayout(bool allowSubtreeLayout)
</span></span></pre></div>
<a id="trunkSourceWebCorepageSpatialNavigationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/SpatialNavigation.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/SpatialNavigation.cpp  2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/page/SpatialNavigation.cpp     2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -476,9 +476,9 @@
</span><span class="cx">     ScrollbarMode verticalMode;
</span><span class="cx">     ScrollbarMode horizontalMode;
</span><span class="cx">     frame->view()->calculateScrollbarModesForLayout(horizontalMode, verticalMode);
</span><del>-    if ((direction == FocusDirection::Left || direction == FocusDirection::Right) && ScrollbarAlwaysOff == horizontalMode)
</del><ins>+    if ((direction == FocusDirection::Left || direction == FocusDirection::Right) && ScrollbarMode::AlwaysOff == horizontalMode)
</ins><span class="cx">         return false;
</span><del>-    if ((direction == FocusDirection::Up || direction == FocusDirection::Down) &&  ScrollbarAlwaysOff == verticalMode)
</del><ins>+    if ((direction == FocusDirection::Up || direction == FocusDirection::Down) &&  ScrollbarMode::AlwaysOff == verticalMode)
</ins><span class="cx">         return false;
</span><span class="cx">     LayoutSize size = frame->view()->totalContentsSize();
</span><span class="cx">     LayoutPoint scrollPosition = frame->view()->scrollPosition();
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingCoordinatorTypesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h  2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/page/scrolling/ScrollingCoordinatorTypes.h     2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -74,8 +74,8 @@
</span><span class="cx">     ScrollElasticity horizontalScrollElasticity { ScrollElasticity::None };
</span><span class="cx">     ScrollElasticity verticalScrollElasticity { ScrollElasticity::None };
</span><span class="cx"> 
</span><del>-    ScrollbarMode horizontalScrollbarMode { ScrollbarAuto };
-    ScrollbarMode verticalScrollbarMode { ScrollbarAuto };
</del><ins>+    ScrollbarMode horizontalScrollbarMode { ScrollbarMode::Auto };
+    ScrollbarMode verticalScrollbarMode { ScrollbarMode::Auto };
</ins><span class="cx"> 
</span><span class="cx">     bool allowsHorizontalScrolling { false };
</span><span class="cx">     bool allowsVerticalScrolling { false };
</span></span></pre></div>
<a id="trunkSourceWebCorepagescrollingScrollingTreeScrollingNodeh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h 2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/page/scrolling/ScrollingTreeScrollingNode.h    2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -96,9 +96,9 @@
</span><span class="cx"> 
</span><span class="cx">     bool horizontalScrollbarHiddenByStyle() const { return m_scrollableAreaParameters.horizontalScrollbarHiddenByStyle; }
</span><span class="cx">     bool verticalScrollbarHiddenByStyle() const { return m_scrollableAreaParameters.verticalScrollbarHiddenByStyle; }
</span><del>-    bool canHaveHorizontalScrollbar() const { return m_scrollableAreaParameters.horizontalScrollbarMode != ScrollbarAlwaysOff; }
-    bool canHaveVerticalScrollbar() const { return m_scrollableAreaParameters.verticalScrollbarMode != ScrollbarAlwaysOff; }
-    bool canHaveScrollbars() const { return m_scrollableAreaParameters.horizontalScrollbarMode != ScrollbarAlwaysOff || m_scrollableAreaParameters.verticalScrollbarMode != ScrollbarAlwaysOff; }
</del><ins>+    bool canHaveHorizontalScrollbar() const { return m_scrollableAreaParameters.horizontalScrollbarMode != ScrollbarMode::AlwaysOff; }
+    bool canHaveVerticalScrollbar() const { return m_scrollableAreaParameters.verticalScrollbarMode != ScrollbarMode::AlwaysOff; }
+    bool canHaveScrollbars() const { return m_scrollableAreaParameters.horizontalScrollbarMode != ScrollbarMode::AlwaysOff || m_scrollableAreaParameters.verticalScrollbarMode != ScrollbarMode::AlwaysOff; }
</ins><span class="cx"> 
</span><span class="cx">     const FloatScrollSnapOffsetsInfo& snapOffsetsInfo() const;
</span><span class="cx">     std::optional<unsigned> currentHorizontalSnapPointIndex() const;
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollTypescpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollTypes.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollTypes.cpp    2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/platform/ScrollTypes.cpp       2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -78,4 +78,20 @@
</span><span class="cx">     return ts;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+TextStream& operator<<(TextStream& ts, ScrollbarMode behavior)
+{
+    switch (behavior) {
+    case ScrollbarMode::Auto:
+        ts << 0;
+        break;
+    case ScrollbarMode::AlwaysOff:
+        ts << 1;
+        break;
+    case ScrollbarMode::AlwaysOn:
+        ts << 2;
+        break;
+    }
+    return ts;
+}
+
</ins><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollTypesh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollTypes.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollTypes.h      2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/platform/ScrollTypes.h 2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -148,10 +148,10 @@
</span><span class="cx">     Vertical
</span><span class="cx"> };
</span><span class="cx"> 
</span><del>-enum ScrollbarMode : uint8_t {
-    ScrollbarAuto,
-    ScrollbarAlwaysOff,
-    ScrollbarAlwaysOn
</del><ins>+enum class ScrollbarMode : uint8_t {
+    Auto,
+    AlwaysOff,
+    AlwaysOn
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> enum class ScrollbarControlSize : uint8_t {
</span><span class="lines">@@ -261,6 +261,7 @@
</span><span class="cx"> WEBCORE_EXPORT WTF::TextStream& operator<<(WTF::TextStream&, ScrollClamping);
</span><span class="cx"> WEBCORE_EXPORT WTF::TextStream& operator<<(WTF::TextStream&, ScrollBehaviorForFixedElements);
</span><span class="cx"> WEBCORE_EXPORT WTF::TextStream& operator<<(WTF::TextStream&, ScrollElasticity);
</span><ins>+WEBCORE_EXPORT WTF::TextStream& operator<<(WTF::TextStream&, ScrollbarMode);
</ins><span class="cx"> 
</span><span class="cx"> struct ScrollPositionChangeOptions {
</span><span class="cx">     ScrollType type;
</span><span class="lines">@@ -304,9 +305,9 @@
</span><span class="cx"> template<> struct EnumTraits<WebCore::ScrollbarMode> {
</span><span class="cx">     using values = EnumValues<
</span><span class="cx">         WebCore::ScrollbarMode,
</span><del>-        WebCore::ScrollbarMode::ScrollbarAuto,
-        WebCore::ScrollbarMode::ScrollbarAlwaysOff,
-        WebCore::ScrollbarMode::ScrollbarAlwaysOn
</del><ins>+        WebCore::ScrollbarMode::Auto,
+        WebCore::ScrollbarMode::AlwaysOff,
+        WebCore::ScrollbarMode::AlwaysOn
</ins><span class="cx">     >;
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollView.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollView.cpp     2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/platform/ScrollView.cpp        2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -154,15 +154,15 @@
</span><span class="cx">     
</span><span class="cx">     scrollbarModes(newHorizontalMode, newVerticalMode);
</span><span class="cx">     
</span><del>-    if (canScroll && newVerticalMode == ScrollbarAlwaysOff)
-        newVerticalMode = ScrollbarAuto;
</del><ins>+    if (canScroll && newVerticalMode == ScrollbarMode::AlwaysOff)
+        newVerticalMode = ScrollbarMode::Auto;
</ins><span class="cx">     else if (!canScroll)
</span><del>-        newVerticalMode = ScrollbarAlwaysOff;
</del><ins>+        newVerticalMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">     
</span><del>-    if (canScroll && newHorizontalMode == ScrollbarAlwaysOff)
-        newHorizontalMode = ScrollbarAuto;
</del><ins>+    if (canScroll && newHorizontalMode == ScrollbarMode::AlwaysOff)
+        newHorizontalMode = ScrollbarMode::Auto;
</ins><span class="cx">     else if (!canScroll)
</span><del>-        newHorizontalMode = ScrollbarAlwaysOff;
</del><ins>+        newHorizontalMode = ScrollbarMode::AlwaysOff;
</ins><span class="cx">     
</span><span class="cx">     setScrollbarModes(newHorizontalMode, newVerticalMode);
</span><span class="cx"> }
</span><span class="lines">@@ -634,14 +634,14 @@
</span><span class="cx">     ScrollbarMode hScroll = m_horizontalScrollbarMode;
</span><span class="cx">     ScrollbarMode vScroll = m_verticalScrollbarMode;
</span><span class="cx"> 
</span><del>-    if (hScroll != ScrollbarAuto)
-        newHasHorizontalScrollbar = (hScroll == ScrollbarAlwaysOn);
-    if (vScroll != ScrollbarAuto)
-        newHasVerticalScrollbar = (vScroll == ScrollbarAlwaysOn);
</del><ins>+    if (hScroll != ScrollbarMode::Auto)
+        newHasHorizontalScrollbar = (hScroll == ScrollbarMode::AlwaysOn);
+    if (vScroll != ScrollbarMode::Auto)
+        newHasVerticalScrollbar = (vScroll == ScrollbarMode::AlwaysOn);
</ins><span class="cx"> 
</span><span class="cx">     bool scrollbarAddedOrRemoved = false;
</span><span class="cx"> 
</span><del>-    if (m_scrollbarsSuppressed || (hScroll != ScrollbarAuto && vScroll != ScrollbarAuto)) {
</del><ins>+    if (m_scrollbarsSuppressed || (hScroll != ScrollbarMode::Auto && vScroll != ScrollbarMode::Auto)) {
</ins><span class="cx">         if (hasHorizontalScrollbar != newHasHorizontalScrollbar && (hasHorizontalScrollbar || !avoidScrollbarCreation())) {
</span><span class="cx">             if (setHasHorizontalScrollbar(newHasHorizontalScrollbar))
</span><span class="cx">                 scrollbarAddedOrRemoved = true;
</span><span class="lines">@@ -657,9 +657,9 @@
</span><span class="cx">         IntSize docSize = totalContentsSize();
</span><span class="cx">         IntSize fullVisibleSize = unobscuredContentRectIncludingScrollbars().size();
</span><span class="cx"> 
</span><del>-        if (hScroll == ScrollbarAuto)
</del><ins>+        if (hScroll == ScrollbarMode::Auto)
</ins><span class="cx">             newHasHorizontalScrollbar = docSize.width() > visibleWidth();
</span><del>-        if (vScroll == ScrollbarAuto)
</del><ins>+        if (vScroll == ScrollbarMode::Auto)
</ins><span class="cx">             newHasVerticalScrollbar = docSize.height() > visibleHeight();
</span><span class="cx"> 
</span><span class="cx">         bool needAnotherPass = false;
</span><span class="lines">@@ -667,16 +667,16 @@
</span><span class="cx">             // If we ever turn one scrollbar off, do not turn the other one on. Never ever
</span><span class="cx">             // try to both gain/lose a scrollbar in the same pass.
</span><span class="cx">             if (!m_updateScrollbarsPass && docSize.width() <= fullVisibleSize.width() && docSize.height() <= fullVisibleSize.height()) {
</span><del>-                if (hScroll == ScrollbarAuto)
</del><ins>+                if (hScroll == ScrollbarMode::Auto)
</ins><span class="cx">                     newHasHorizontalScrollbar = false;
</span><del>-                if (vScroll == ScrollbarAuto)
</del><ins>+                if (vScroll == ScrollbarMode::Auto)
</ins><span class="cx">                     newHasVerticalScrollbar = false;
</span><span class="cx">             }
</span><del>-            if (!newHasHorizontalScrollbar && hasHorizontalScrollbar && vScroll != ScrollbarAlwaysOn && !hasVerticalScrollbar) {
</del><ins>+            if (!newHasHorizontalScrollbar && hasHorizontalScrollbar && vScroll != ScrollbarMode::AlwaysOn && !hasVerticalScrollbar) {
</ins><span class="cx">                 newHasVerticalScrollbar = false;
</span><span class="cx">                 needAnotherPass = true;
</span><span class="cx">             }
</span><del>-            if (!newHasVerticalScrollbar && hasVerticalScrollbar && hScroll != ScrollbarAlwaysOn && !hasHorizontalScrollbar) {
</del><ins>+            if (!newHasVerticalScrollbar && hasVerticalScrollbar && hScroll != ScrollbarMode::AlwaysOn && !hasHorizontalScrollbar) {
</ins><span class="cx">                 newHasHorizontalScrollbar = false;
</span><span class="cx">                 needAnotherPass = true;
</span><span class="cx">             }
</span><span class="lines">@@ -1619,8 +1619,8 @@
</span><span class="cx"> 
</span><span class="cx"> void ScrollView::platformScrollbarModes(ScrollbarMode& horizontal, ScrollbarMode& vertical) const
</span><span class="cx"> {
</span><del>-    horizontal = ScrollbarAuto;
-    vertical = ScrollbarAuto;
</del><ins>+    horizontal = ScrollbarMode::Auto;
+    vertical = ScrollbarMode::Auto;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void ScrollView::platformSetCanBlitOnScroll(bool)
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollView.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollView.h       2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/platform/ScrollView.h  2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -534,8 +534,8 @@
</span><span class="cx"> 
</span><span class="cx">     RefPtr<Scrollbar> m_horizontalScrollbar;
</span><span class="cx">     RefPtr<Scrollbar> m_verticalScrollbar;
</span><del>-    ScrollbarMode m_horizontalScrollbarMode { ScrollbarAuto };
-    ScrollbarMode m_verticalScrollbarMode { ScrollbarAuto };
</del><ins>+    ScrollbarMode m_horizontalScrollbarMode { ScrollbarMode::Auto };
+    ScrollbarMode m_verticalScrollbarMode { ScrollbarMode::Auto };
</ins><span class="cx"> 
</span><span class="cx"> 
</span><span class="cx">     // FIXME: More things will move into here.
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformScrollableAreah"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ScrollableArea.h (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ScrollableArea.h   2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/platform/ScrollableArea.h      2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -121,9 +121,9 @@
</span><span class="cx">     void setHorizontalScrollElasticity(ScrollElasticity scrollElasticity) { m_horizontalScrollElasticity = scrollElasticity; }
</span><span class="cx">     ScrollElasticity horizontalScrollElasticity() const { return m_horizontalScrollElasticity; }
</span><span class="cx"> 
</span><del>-    virtual ScrollbarMode horizontalScrollbarMode() const { return ScrollbarAuto; }
-    virtual ScrollbarMode verticalScrollbarMode() const { return ScrollbarAuto; }
-    bool canHaveScrollbars() const { return horizontalScrollbarMode() != ScrollbarAlwaysOff || verticalScrollbarMode() != ScrollbarAlwaysOff; }
</del><ins>+    virtual ScrollbarMode horizontalScrollbarMode() const { return ScrollbarMode::Auto; }
+    virtual ScrollbarMode verticalScrollbarMode() const { return ScrollbarMode::Auto; }
+    bool canHaveScrollbars() const { return horizontalScrollbarMode() != ScrollbarMode::AlwaysOff || verticalScrollbarMode() != ScrollbarMode::AlwaysOff; }
</ins><span class="cx"> 
</span><span class="cx">     virtual bool horizontalScrollbarHiddenByStyle() const { return false; }
</span><span class="cx">     virtual bool verticalScrollbarHiddenByStyle() const { return false; }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformioswakWAKScrollViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/wak/WAKScrollView.mm (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/wak/WAKScrollView.mm   2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/platform/ios/wak/WAKScrollView.mm      2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -194,12 +194,12 @@
</span><span class="cx"> 
</span><span class="cx"> - (WebCore::ScrollbarMode)horizontalScrollingMode
</span><span class="cx"> {
</span><del>-    return WebCore::ScrollbarAuto;
</del><ins>+    return WebCore::ScrollbarMode::Auto;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (WebCore::ScrollbarMode)verticalScrollingMode
</span><span class="cx"> {
</span><del>-    return WebCore::ScrollbarAuto;
</del><ins>+    return WebCore::ScrollbarMode::Auto;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #pragma mark -
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderFrameBasecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderFrameBase.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderFrameBase.cpp       2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/rendering/RenderFrameBase.cpp  2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -93,7 +93,7 @@
</span><span class="cx">     // if scrollbars are off, and the width or height are fixed
</span><span class="cx">     // we obey them and do not expand. With frame flattening
</span><span class="cx">     // no subframe much ever become scrollable.
</span><del>-    bool isScrollable = frameOwnerElement().scrollingMode() != ScrollbarAlwaysOff;
</del><ins>+    bool isScrollable = frameOwnerElement().scrollingMode() != ScrollbarMode::AlwaysOff;
</ins><span class="cx"> 
</span><span class="cx">     // consider iframe inset border
</span><span class="cx">     int hBorder = borderLeft() + borderRight();
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderIFramecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderIFrame.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderIFrame.cpp  2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/rendering/RenderIFrame.cpp     2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -86,7 +86,7 @@
</span><span class="cx"> 
</span><span class="cx">     if (style().width().isFixed() && style().height().isFixed()) {
</span><span class="cx">         // Do not flatten iframes with scrolling="no".
</span><del>-        if (iframeElement().scrollingMode() == ScrollbarAlwaysOff)
</del><ins>+        if (iframeElement().scrollingMode() == ScrollbarMode::AlwaysOff)
</ins><span class="cx">             return false;
</span><span class="cx">         // Do not flatten iframes that have zero size, as flattening might make them visible.
</span><span class="cx">         if (style().width().value() <= 0 || style().height().value() <= 0)
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayer.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayer.cpp   2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/rendering/RenderLayer.cpp      2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -2401,7 +2401,7 @@
</span><span class="cx"> static inline bool frameElementAndViewPermitScroll(HTMLFrameElementBase* frameElementBase, FrameView& frameView)
</span><span class="cx"> {
</span><span class="cx">     // If scrollbars aren't explicitly forbidden, permit scrolling.
</span><del>-    if (frameElementBase && frameElementBase->scrollingMode() != ScrollbarAlwaysOff)
</del><ins>+    if (frameElementBase && frameElementBase->scrollingMode() != ScrollbarMode::AlwaysOff)
</ins><span class="cx">         return true;
</span><span class="cx"> 
</span><span class="cx">     // If scrollbars are forbidden, user initiated scrolls should obviously be ignored.
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerBackingcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp    2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp       2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -403,10 +403,10 @@
</span><span class="cx">     bool useMinimalTilesDuringLiveResize = frameView.inLiveResize();
</span><span class="cx">     if (frameView.speculativeTilingEnabled() && !useMinimalTilesDuringLiveResize) {
</span><span class="cx">         bool clipsToExposedRect = static_cast<bool>(frameView.viewExposedRect());
</span><del>-        if (frameView.horizontalScrollbarMode() != ScrollbarAlwaysOff || clipsToExposedRect)
</del><ins>+        if (frameView.horizontalScrollbarMode() != ScrollbarMode::AlwaysOff || clipsToExposedRect)
</ins><span class="cx">             tileCoverage |= TiledBacking::CoverageForHorizontalScrolling;
</span><span class="cx"> 
</span><del>-        if (frameView.verticalScrollbarMode() != ScrollbarAlwaysOff || clipsToExposedRect)
</del><ins>+        if (frameView.verticalScrollbarMode() != ScrollbarMode::AlwaysOff || clipsToExposedRect)
</ins><span class="cx">             tileCoverage |= TiledBacking::CoverageForVerticalScrolling;
</span><span class="cx">     }
</span><span class="cx">     return tileCoverage;
</span></span></pre></div>
<a id="trunkSourceWebKitChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/ChangeLog (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/ChangeLog    2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKit/ChangeLog       2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -1,5 +1,18 @@
</span><span class="cx"> 2021-11-05  Nikolaos Mouchtaris  <nmouchtaris@apple.com>
</span><span class="cx"> 
</span><ins>+        Make scroll bar mode an enum class
+        https://bugs.webkit.org/show_bug.cgi?id=232651
+
+        Reviewed by Simon Fraser.
+
+        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
+        (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
+        * WebProcess/WebPage/WebPage.cpp:
+        (WebKit::WebPage::setAlwaysShowsHorizontalScroller):
+        (WebKit::WebPage::setAlwaysShowsVerticalScroller):
+
+2021-11-05  Nikolaos Mouchtaris  <nmouchtaris@apple.com>
+
</ins><span class="cx">         Make scroll elasticity an enum class
</span><span class="cx">         https://bugs.webkit.org/show_bug.cgi?id=232646
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKitWebProcessWebCoreSupportWebFrameLoaderClientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp   2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp      2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -1528,10 +1528,10 @@
</span><span class="cx">         && webPage->shouldUseCustomContentProviderForResponse(m_frame->coreFrame()->loader().documentLoader()->response());
</span><span class="cx">     m_frameCameFromBackForwardCache = false;
</span><span class="cx"> 
</span><del>-    ScrollbarMode defaultScrollbarMode = shouldHideScrollbars ? ScrollbarAlwaysOff : ScrollbarAuto;
</del><ins>+    ScrollbarMode defaultScrollbarMode = shouldHideScrollbars ? ScrollbarMode::AlwaysOff : ScrollbarMode::Auto;
</ins><span class="cx"> 
</span><del>-    ScrollbarMode horizontalScrollbarMode = webPage->alwaysShowsHorizontalScroller() ? ScrollbarAlwaysOn : defaultScrollbarMode;
-    ScrollbarMode verticalScrollbarMode = webPage->alwaysShowsVerticalScroller() ? ScrollbarAlwaysOn : defaultScrollbarMode;
</del><ins>+    ScrollbarMode horizontalScrollbarMode = webPage->alwaysShowsHorizontalScroller() ? ScrollbarMode::AlwaysOn : defaultScrollbarMode;
+    ScrollbarMode verticalScrollbarMode = webPage->alwaysShowsVerticalScroller() ? ScrollbarMode::AlwaysOn : defaultScrollbarMode;
</ins><span class="cx"> 
</span><span class="cx">     bool horizontalLock = shouldHideScrollbars || webPage->alwaysShowsHorizontalScroller();
</span><span class="cx">     bool verticalLock = shouldHideScrollbars || webPage->alwaysShowsVerticalScroller();
</span></span></pre></div>
<a id="trunkSourceWebKitWebProcessWebPageWebPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp       2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKit/WebProcess/WebPage/WebPage.cpp  2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -6154,7 +6154,7 @@
</span><span class="cx">     auto view = corePage()->mainFrame().view();
</span><span class="cx">     if (!alwaysShowsHorizontalScroller)
</span><span class="cx">         view->setHorizontalScrollbarLock(false);
</span><del>-    view->setHorizontalScrollbarMode(alwaysShowsHorizontalScroller ? ScrollbarAlwaysOn : m_mainFrameIsScrollable ? ScrollbarAuto : ScrollbarAlwaysOff, alwaysShowsHorizontalScroller || !m_mainFrameIsScrollable);
</del><ins>+    view->setHorizontalScrollbarMode(alwaysShowsHorizontalScroller ? ScrollbarMode::AlwaysOn : m_mainFrameIsScrollable ? ScrollbarMode::Auto : ScrollbarMode::AlwaysOff, alwaysShowsHorizontalScroller || !m_mainFrameIsScrollable);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebPage::setAlwaysShowsVerticalScroller(bool alwaysShowsVerticalScroller)
</span><span class="lines">@@ -6166,7 +6166,7 @@
</span><span class="cx">     auto view = corePage()->mainFrame().view();
</span><span class="cx">     if (!alwaysShowsVerticalScroller)
</span><span class="cx">         view->setVerticalScrollbarLock(false);
</span><del>-    view->setVerticalScrollbarMode(alwaysShowsVerticalScroller ? ScrollbarAlwaysOn : m_mainFrameIsScrollable ? ScrollbarAuto : ScrollbarAlwaysOff, alwaysShowsVerticalScroller || !m_mainFrameIsScrollable);
</del><ins>+    view->setVerticalScrollbarMode(alwaysShowsVerticalScroller ? ScrollbarMode::AlwaysOn : m_mainFrameIsScrollable ? ScrollbarMode::Auto : ScrollbarMode::AlwaysOff, alwaysShowsVerticalScroller || !m_mainFrameIsScrollable);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WebPage::setMinimumSizeForAutoLayout(const IntSize& size)
</span></span></pre></div>
<a id="trunkSourceWebKitLegacymacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKitLegacy/mac/ChangeLog  2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog     2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -1,3 +1,23 @@
</span><ins>+2021-11-05  Nikolaos Mouchtaris  <nmouchtaris@apple.com>
+
+        Make scroll bar mode an enum class
+        https://bugs.webkit.org/show_bug.cgi?id=232651
+
+        Reviewed by Simon Fraser.
+
+        * WebCoreSupport/WebFrameLoaderClient.mm:
+        (WebFrameLoaderClient::transitionToCommittedForNewPage):
+        * WebView/WebDynamicScrollBarsView.mm:
+        (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
+        (-[WebDynamicScrollBarsView updateScrollers]):
+        (-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
+        (-[WebDynamicScrollBarsView allowsVerticalScrolling]):
+        * WebView/WebView.mm:
+        (-[WebView setAlwaysShowVerticalScroller:]):
+        (-[WebView alwaysShowVerticalScroller]):
+        (-[WebView setAlwaysShowHorizontalScroller:]):
+        (-[WebView alwaysShowHorizontalScroller]):
+
</ins><span class="cx"> 2021-11-03  Chris Dumez  <cdumez@apple.com>
</span><span class="cx"> 
</span><span class="cx">         Unreviewed iOS build fix.
</span></span></pre></div>
<a id="trunkSourceWebKitLegacymacWebCoreSupportWebFrameLoaderClientmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm     2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.mm        2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -1468,7 +1468,7 @@
</span><span class="cx">         documentLoader->setTitle({ [dataSource pageTitle], WebCore::TextDirection::LTR });
</span><span class="cx"> 
</span><span class="cx">     if (auto* ownerElement = coreFrame->ownerElement())
</span><del>-        coreFrame->view()->setCanHaveScrollbars(ownerElement->scrollingMode() != WebCore::ScrollbarAlwaysOff);
</del><ins>+        coreFrame->view()->setCanHaveScrollbars(ownerElement->scrollingMode() != WebCore::ScrollbarMode::AlwaysOff);
</ins><span class="cx"> 
</span><span class="cx">     // If the document view implicitly became first responder, make sure to set the focused frame properly.
</span><span class="cx">     if ([[documentView window] firstResponder] == documentView) {
</span></span></pre></div>
<a id="trunkSourceWebKitLegacymacWebViewWebDynamicScrollBarsViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKitLegacy/mac/WebView/WebDynamicScrollBarsView.mm (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKitLegacy/mac/WebView/WebDynamicScrollBarsView.mm        2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKitLegacy/mac/WebView/WebDynamicScrollBarsView.mm   2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -133,10 +133,10 @@
</span><span class="cx"> {
</span><span class="cx">     if (_private->hScrollModeLocked)
</span><span class="cx">         return;
</span><del>-    if (flag && _private->hScroll == ScrollbarAlwaysOff)
-        _private->hScroll = ScrollbarAuto;
-    else if (!flag && _private->hScroll != ScrollbarAlwaysOff)
-        _private->hScroll = ScrollbarAlwaysOff;
</del><ins>+    if (flag && _private->hScroll == ScrollbarMode::AlwaysOff)
+        _private->hScroll = ScrollbarMode::Auto;
+    else if (!flag && _private->hScroll != ScrollbarMode::AlwaysOff)
+        _private->hScroll = ScrollbarMode::AlwaysOff;
</ins><span class="cx">     [self updateScrollers];
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -300,12 +300,12 @@
</span><span class="cx">         newHasVerticalScroller = NO;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if (_private->hScroll != ScrollbarAuto)
-        newHasHorizontalScroller = (_private->hScroll == ScrollbarAlwaysOn);
-    if (_private->vScroll != ScrollbarAuto)
-        newHasVerticalScroller = (_private->vScroll == ScrollbarAlwaysOn);
</del><ins>+    if (_private->hScroll != ScrollbarMode::Auto)
+        newHasHorizontalScroller = (_private->hScroll == ScrollbarMode::AlwaysOn);
+    if (_private->vScroll != ScrollbarMode::Auto)
+        newHasVerticalScroller = (_private->vScroll == ScrollbarMode::AlwaysOn);
</ins><span class="cx"> 
</span><del>-    if (!documentView || _private->suppressLayout || _private->suppressScrollers || (_private->hScroll != ScrollbarAuto && _private->vScroll != ScrollbarAuto)) {
</del><ins>+    if (!documentView || _private->suppressLayout || _private->suppressScrollers || (_private->hScroll != ScrollbarMode::Auto && _private->vScroll != ScrollbarMode::Auto)) {
</ins><span class="cx">         _private->horizontalScrollingAllowedButScrollerHidden = newHasHorizontalScroller && _private->alwaysHideHorizontalScroller;
</span><span class="cx">         if (_private->horizontalScrollingAllowedButScrollerHidden)
</span><span class="cx">             newHasHorizontalScroller = NO;
</span><span class="lines">@@ -342,13 +342,13 @@
</span><span class="cx">     frameSize.width = ceilf(frameSize.width);
</span><span class="cx">     frameSize.height = ceilf(frameSize.height);
</span><span class="cx"> 
</span><del>-    if (_private->hScroll == ScrollbarAuto) {
</del><ins>+    if (_private->hScroll == ScrollbarMode::Auto) {
</ins><span class="cx">         newHasHorizontalScroller = documentSize.width > visibleSize.width;
</span><span class="cx">         if (newHasHorizontalScroller && !_private->inUpdateScrollersLayoutPass && documentSize.height <= frameSize.height && documentSize.width <= frameSize.width)
</span><span class="cx">             newHasHorizontalScroller = NO;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    if (_private->vScroll == ScrollbarAuto) {
</del><ins>+    if (_private->vScroll == ScrollbarMode::Auto) {
</ins><span class="cx">         newHasVerticalScroller = documentSize.height > visibleSize.height;
</span><span class="cx">         if (newHasVerticalScroller && !_private->inUpdateScrollersLayoutPass && documentSize.height <= frameSize.height && documentSize.width <= frameSize.width)
</span><span class="cx">             newHasVerticalScroller = NO;
</span><span class="lines">@@ -356,9 +356,9 @@
</span><span class="cx"> 
</span><span class="cx">     // Unless in ScrollbarsAlwaysOn mode, if we ever turn one scrollbar off, always turn the other one off too.
</span><span class="cx">     // Never ever try to both gain/lose a scrollbar in the same pass.
</span><del>-    if (!newHasHorizontalScroller && hasHorizontalScroller && _private->vScroll != ScrollbarAlwaysOn)
</del><ins>+    if (!newHasHorizontalScroller && hasHorizontalScroller && _private->vScroll != ScrollbarMode::AlwaysOn)
</ins><span class="cx">         newHasVerticalScroller = NO;
</span><del>-    if (!newHasVerticalScroller && hasVerticalScroller && _private->hScroll != ScrollbarAlwaysOn)
</del><ins>+    if (!newHasVerticalScroller && hasVerticalScroller && _private->hScroll != ScrollbarMode::AlwaysOn)
</ins><span class="cx">         newHasHorizontalScroller = NO;
</span><span class="cx"> 
</span><span class="cx">     _private->horizontalScrollingAllowedButScrollerHidden = newHasHorizontalScroller && _private->alwaysHideHorizontalScroller;
</span><span class="lines">@@ -438,12 +438,12 @@
</span><span class="cx"> 
</span><span class="cx"> - (BOOL)allowsHorizontalScrolling
</span><span class="cx"> {
</span><del>-    return _private->hScroll != ScrollbarAlwaysOff;
</del><ins>+    return _private->hScroll != ScrollbarMode::AlwaysOff;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (BOOL)allowsVerticalScrolling
</span><span class="cx"> {
</span><del>-    return _private->vScroll != ScrollbarAlwaysOff;
</del><ins>+    return _private->vScroll != ScrollbarMode::AlwaysOff;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (void)scrollingModes:(WebCore::ScrollbarMode*)hMode vertical:(WebCore::ScrollbarMode*)vMode
</span></span></pre></div>
<a id="trunkSourceWebKitLegacymacWebViewWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKitLegacy/mac/WebView/WebView.mm (285356 => 285357)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKitLegacy/mac/WebView/WebView.mm 2021-11-05 22:42:12 UTC (rev 285356)
+++ trunk/Source/WebKitLegacy/mac/WebView/WebView.mm    2021-11-05 23:06:50 UTC (rev 285357)
</span><span class="lines">@@ -3658,10 +3658,10 @@
</span><span class="cx"> {
</span><span class="cx">     WebDynamicScrollBarsView *scrollview = [[[self mainFrame] frameView] _scrollView];
</span><span class="cx">     if (flag) {
</span><del>-        [scrollview setVerticalScrollingMode:WebCore::ScrollbarAlwaysOn andLock:YES];
</del><ins>+        [scrollview setVerticalScrollingMode:WebCore::ScrollbarMode::AlwaysOn andLock:YES];
</ins><span class="cx">     } else {
</span><span class="cx">         [scrollview setVerticalScrollingModeLocked:NO];
</span><del>-        [scrollview setVerticalScrollingMode:WebCore::ScrollbarAuto andLock:NO];
</del><ins>+        [scrollview setVerticalScrollingMode:WebCore::ScrollbarMode::Auto andLock:NO];
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -3668,7 +3668,7 @@
</span><span class="cx"> - (BOOL)alwaysShowVerticalScroller
</span><span class="cx"> {
</span><span class="cx">     WebDynamicScrollBarsView *scrollview = [[[self mainFrame] frameView] _scrollView];
</span><del>-    return [scrollview verticalScrollingModeLocked] && [scrollview verticalScrollingMode] == WebCore::ScrollbarAlwaysOn;
</del><ins>+    return [scrollview verticalScrollingModeLocked] && [scrollview verticalScrollingMode] == WebCore::ScrollbarMode::AlwaysOn;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> - (void)setAlwaysShowHorizontalScroller:(BOOL)flag
</span><span class="lines">@@ -3675,10 +3675,10 @@
</span><span class="cx"> {
</span><span class="cx">     WebDynamicScrollBarsView *scrollview = [[[self mainFrame] frameView] _scrollView];
</span><span class="cx">     if (flag) {
</span><del>-        [scrollview setHorizontalScrollingMode:WebCore::ScrollbarAlwaysOn andLock:YES];
</del><ins>+        [scrollview setHorizontalScrollingMode:WebCore::ScrollbarMode::AlwaysOn andLock:YES];
</ins><span class="cx">     } else {
</span><span class="cx">         [scrollview setHorizontalScrollingModeLocked:NO];
</span><del>-        [scrollview setHorizontalScrollingMode:WebCore::ScrollbarAuto andLock:NO];
</del><ins>+        [scrollview setHorizontalScrollingMode:WebCore::ScrollbarMode::Auto andLock:NO];
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -3691,7 +3691,7 @@
</span><span class="cx"> - (BOOL)alwaysShowHorizontalScroller
</span><span class="cx"> {
</span><span class="cx">     WebDynamicScrollBarsView *scrollview = [[[self mainFrame] frameView] _scrollView];
</span><del>-    return [scrollview horizontalScrollingModeLocked] && [scrollview horizontalScrollingMode] == WebCore::ScrollbarAlwaysOn;
</del><ins>+    return [scrollview horizontalScrollingModeLocked] && [scrollview horizontalScrollingMode] == WebCore::ScrollbarMode::AlwaysOn;
</ins><span class="cx"> }
</span><span class="cx"> #endif // !PLATFORM(IOS_FAMILY)
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>