Bug? Mouse wheel returns 0 for deltaY when Shift is down?

It looks like mouse wheel returns 0 for deltaY when Shift is down?
How to fix this issue?

void MyClass::mouseWheelMove(const MouseEvent& event, const MouseWheelDetails& wheel)
{
    if (ModifierKeys::getCurrentModifiers().isShiftDown())
    {
        const float speed = wheel.deltaY; // Returns wrong value: 0!
    } else {
        const float speed = wheel.deltaY; // Returns correct value
    }
}

Are you on macOS? If so, pressing shift turns the vertical scroll wheel into horizontal. Which is what you want if your view has two scrollbars, but sometimes it’s not what you want. You need to be careful because it only applies to mice and not trackpads. In those cases I work around like this:

#if JUCE_MAC
    // On mice with no horizontal wheel, OSX helpfully turns a shift-vertical-wheel into a horizontal one,
    // but that's not what we want to happen here..
    if (e.mods.isShiftDown() && dy == 0 && dx != 0)
        std::swap (dx, dy);
#endif