Ctrl + scroll for zoom not working from keyboard but working from mouse

OK next problem. As I mentioned here, it is found to be preferable to use keyIsPressed for the horizontal scroll at least and maybe some may prefer it for zooming too. But even if keyIsPressed is used, the macro fires only once and repeated horizontal scrolling is not seen and still requires the use of handleKeyswitchEvent only:

#define PRESS(X) handleKeyswitchEvent(X, Macros.row, Macros.col, keyState)

    case M_WHEEL_LEFT:
        if (keyIsPressed(keyState))
//             return MACRODOWN(D(LeftShift), T(mouseScrollUp), U(LeftShift));
        {
            PRESS(Key_LeftShift); PRESS(Key_mouseScrollUp);
        }
        break;

    case M_WHEEL_RIGHT:
        if (keyIsPressed(keyState))
//             return MACRODOWN(D(LeftShift), T(mouseScrollDn), U(LeftShift));
        {
            PRESS(Key_LeftShift); PRESS(Key_mouseScrollDn);
        }
        break;

I’m starting to wonder if it was worth trying to enable the use of mouse keys in macros (since there exists a non-problematic alternate solution)…