Mouse warp on OSX

Has anyone managed to get mouse warping to work “properly” on a multi-display OSX setup?
By “properly”, what I mean is that mouse warp only works within the domain of the display the mouse currently occupies. To get the mouse into the next display, I basically need to manually move it over to the next display (e.g. use mouse warp to get it as close as I can to the edge of the current display, then bump it over using the regular mouse movement keys) - then I can warp the mouse within that next display.
I’d love if there was another hotkey or bit of code we could use to, say, warp the mouse from one display to another, and then warp it within the current display using the usual grid model.
Has anyone successfully done something like this?
Thanks!

The way the mouse grid works is by emulating a drawing tablet, and I guess OSX is helpfully trying to confine it to the active screen, which kind of makes sense (X11 doesn’t do this by default and it’s so annoying when I want to use an actual tablet!)

Reading the code for the MouseKeys plugin, it shouldn’t be too difficult to write functions for MagicCombo that nudge the pointer one screen in any direction. Something like this?

static void sendPointerRight() {
  // move pointer all the way to the right, nudge 1 pixel over, then re-center on new screen
  kaleidoscope::hid::moveAbsoluteMouseTo(MAX_WARP_WIDTH, MAX_WARP_HEIGHT/2, 0);
  kaleidoscope::hid::moveMouse(1, 0, 0);
  kaleidoscope::hid::moveAbsoluteMouseTo(MAX_WARP_WIDTH/2, MAX_WARP_HEIGHT/2, 0);
  end_warping();
}

Hopefully it doesn’t need any artificial pauses in there…

Also, isn’t it possible to setup each screen as its own “space” in MacOS? If so, you could just use (or modify) the existing keyboard shortcut to switch between displays. That plus mousekeys might be a useful combination. I think the warping as it exists is working as intended by helping direct the pointer to a quadrant of the active display.

Took a little while but I finally got some time to try this out - thanks, it worked!
The APIs look like they’ve been rearranged a bit, so here’s where I eventually landed:

static void mouseScreenRight(uint8_t combo_index) {
    Kaleidoscope.hid().absoluteMouse().moveTo(MAX_WARP_WIDTH, MAX_WARP_HEIGHT/2, 0);
    Kaleidoscope.hid().mouse().move(1, 0, 0);
    Kaleidoscope.hid().absoluteMouse().moveTo(MAX_WARP_WIDTH/2, MAX_WARP_HEIGHT/2, 0);
    kaleidoscope::plugin::MouseWrapper_::end_warping();
}

@JDH, yes, OSX does have a way to set up each screen as its own “space”. However this is more for desktop switching – like switching workspaces in gnome, if you are familiar with that. It doesn’t move the mouse (at least, I wasn’t able to get it to do that).