<html>
    <head>
      <base href="https://bugs.webkit.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Main frame scrollbars not updated on hovering when using overlay scrollbars"
   href="https://bugs.webkit.org/show_bug.cgi?id=153304#c3">Comment # 3</a>
              on <a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Main frame scrollbars not updated on hovering when using overlay scrollbars"
   href="https://bugs.webkit.org/show_bug.cgi?id=153304">bug 153304</a>
              from <span class="vcard"><a class="email" href="mailto:cgarcia&#64;igalia.com" title="Carlos Garcia Campos &lt;cgarcia&#64;igalia.com&gt;"> <span class="fn">Carlos Garcia Campos</span></a>
</span></b>
        <pre>(In reply to <a href="show_bug.cgi?id=153304#c2">comment #2</a>)
<span class="quote">&gt; (In reply to <a href="show_bug.cgi?id=153304#c0">comment #0</a>)
&gt; &gt; Legacy scrollbars were fixed in r194155, but overlay scrollbars are not
&gt; &gt; notified when they are hovered. This is because the layer hit test in
&gt; &gt; RenderView::hitTest always returns true when using overlay scrollbars and we
&gt; &gt; are returning early in such case ignoring the
&gt; &gt; HitTestRequest::AllowFrameScrollbars flag. So, in case of using overlay
&gt; &gt; scrollbars we still need to check the RenderView scrollbars even when the
&gt; &gt; layer hist test succeeded unless it already contains a scrollbar.
&gt; 
&gt; Can you write up a set of steps that reproduce a bug that you are fixing
&gt; here?</span >

Sure.

1. Enable overlay scrollbars
2. Open MiniBrowser and visit any page long enough to show a scrollbar
3. Hover the scrollbar

There's no change in appearance on hover. That's from the users point of view. From the WebKit point of view, the scrollbar is not invalidated and WebKit doesn't know the mouse is over a scrollbar until you press the mouse button, because in EventHandler::handleMousePressEvent() we are manually getting the scrollbar again and only using the first hit test scrollbar if we don't get a scrollbar manually, see:

FrameView* view = m_frame.view();
Scrollbar* scrollbar = view ? view-&gt;scrollbarAtPoint(platformMouseEvent.position()) : 0;
if (!scrollbar)
    scrollbar = mouseEvent.scrollbar();

updateLastScrollbarUnderMouse(scrollbar, true);

And this is why even when the appearance is not updated on hover, you can still click and drag the scrollbar and it works. EventHandler::handleMousePressEvent() needs to do this because it doesn't use the AllowFrameScrollbars flag when doing the hit test.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>