.MouseEnter/.MouseLeave not fired on UI Frames when scrolled

Description

  • If you hover your mouse over any UI Frame that supports MouseEnter/MouseLeave signals in ScrollingFrame, and then scroll using your scrolling wheel with out moving the mouse, .MouseLeave signal will not be fired on that frame. Same with .MouseEnter signal, where if you scroll in a ScrollingFrame with out moving the mouse and happen to hover over a Frame, .MouseEnter signal will not be fired.

Expected Behaviour

  • .MouseEnter/.MouseLeave signals should be fired in a ScrollingFrame on frames if you only move the scrolling wheel and not change the mouse position

Reproduction Steps

  1. Create a ScrollingFrame in ScreenGui
  2. Parent 2 Frames to ScrollingFrame with different positions
  3. Set up a script which would print “Entered” for .MouseEnter signal and “Left” for .MouseLeave for both frames
  4. Position your cursor/mouse so that it hovers over 1st frame, and when scrolling wheel used, it would hover over another frame
  5. Scroll 1 time using your scrolling wheel with out moving your mouse
  6. “Left” or “Entered” will not be printed in the output, meaning that signals did not fire.

Impact

  • Small
2 Likes

We’ve filed a ticket into our internal database for this issue and will start investigating, we will update you when we have further information.

Thanks for flagging!

1 Like

Even if this topic is old, nothing has changed since then.

This is a really annoying problem, all modern engines and even browsers trigger this event as expected. It’s such a simple thing to fix, but it reduces the user experience a lot (at least for me). The Frames get stuck in place and it’s just feels not intuitive. The Roblox Engine should update the mouse not only when moving, but also when scrolling. Please fix this, 9 months have passed and the bug still exists.