[Webkit-unassigned] [Bug 257039] [GTK] Overlay scrollbar does not properly hide itself when drag released outside window
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri May 19 14:45:39 PDT 2023
https://bugs.webkit.org/show_bug.cgi?id=257039
--- Comment #2 from Michael Catanzaro <mcatanzaro at redhat.com> ---
I'm having trouble investigating this one. Here's what I've done so far:
* In EventHandler::handleMouseReleaseEvent, I changed all the FireMouseOverOut::No to FireMouseOverOut::Yes. Not sure what the consequences of that is, but it's required so that EventHandler::updateMouseEventTargetNode will call EventHandler::notifyScrollableAreasOfMouseEvents.
* In EventHandler::notifyScrollableAreasOfMouseEvents, I applied some sabotage that I don't understand (below) in order to ensure that ScrollableArea::mouseExitedContentArea gets called
diff --git a/Source/WebCore/page/EventHandler.cpp b/Source/WebCore/page/EventHandler.cpp
index 44afaa401827..fe617acc2e91 100644
--- a/Source/WebCore/page/EventHandler.cpp
+++ b/Source/WebCore/page/EventHandler.cpp
@@ -2769,9 +2769,9 @@ void EventHandler::notifyScrollableAreasOfMouseEvents(const AtomString& eventTyp
}
if (!movedBetweenScrollableaAreas)
- return;
+// return;
- if (scrollableAreaForLastNode && scrollableAreaForLastNode != frameView)
+ if (scrollableAreaForLastNode /*&& scrollableAreaForLastNode != frameView*/)
scrollableAreaForLastNode->mouseExitedContentArea();
if (scrollableAreaForNodeUnderMouse && scrollableAreaForNodeUnderMouse != frameView)
Now ScrollbarsControllerGeneric::hideOverlayScrollbars gets called like I want it to, but it doesn't actually work. The function bails immediately because m_overlayScrollbarAnimationTimer.isActive() and m_overlayScrollbarAnimationTarget == 0, meaning it's _already_ trying to hide the scrollbars for some unknown reason, but fails. (This is only true after my changes above, not normally.) I need to investigate more to see what's going wrong. If I sabotage this further to immediately hide the scrollbars, then the scrollbars stay hidden permanently, so something's up here.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230519/601f0e5e/attachment.htm>
More information about the webkit-unassigned
mailing list