Skip to content

Cross platform scaffolding#64

Open
LikeTheSalad wants to merge 4 commits into
petoncle:mainfrom
LikeTheSalad:cross-platform-scaffolding
Open

Cross platform scaffolding#64
LikeTheSalad wants to merge 4 commits into
petoncle:mainfrom
LikeTheSalad:cross-platform-scaffolding

Conversation

@LikeTheSalad
Copy link
Copy Markdown

@LikeTheSalad LikeTheSalad commented May 19, 2026

These changes attempt to abstract Windows-specific functionality into interfaces and create implementations for Windows. The functionality should remain the same, however, it sets up a scaffolding for adding new platform support in the future.

Since I'm not using Windows, the validations I ran are the existing unit tests, so it's probably wise to try these changes out in a Windows machine to make sure nothing's broken (in case some use cases aren't covered by tests).

@petoncle
Copy link
Copy Markdown
Owner

Thanks @LikeTheSalad! I'll look into it. There are little unit tests unfortunately, the hard parts are difficult to test (keyboard/mouse OS interaction and overlay UI).
Are you interested in a Linux version or macOS? Did you ever use mousemaster on Windows?

@LikeTheSalad
Copy link
Copy Markdown
Author

Thanks @LikeTheSalad! I'll look into it. There are little unit tests unfortunately, the hard parts are difficult to test (keyboard/mouse OS interaction and overlay UI). Are you interested in a Linux version or macOS? Did you ever use mousemaster on Windows?

Thanks 🙏 I'm interested in a macOS version. I still haven't tried to make it work locally, so I'm frankly not sure if all the Windows apis have a 1-1 alternative here, but still, fully isolating the existing platform should make it easier to test it later. I still haven't tried mousemaster before, but from the docs, it seems the most feature-rich tool available out there, which is why it'd be nice to use it on other platforms.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants