KeyboardSwitch icon indicating copy to clipboard operation
KeyboardSwitch copied to clipboard

Make the app cross-platform

Open TolikPylypchuk opened this issue 4 years ago • 4 comments

.NET Core is cross-platform, so the service app can work on Linux. The settings UI should be implemented in Avalonia, and the ReactiveUI view models should be extracted into a separate project.

TolikPylypchuk avatar Mar 21 '20 18:03 TolikPylypchuk

Supporting Linux seems more difficult than initially assumed. Closing this for now - will reopen if I ever decide to give it another try.

TolikPylypchuk avatar Mar 26 '20 21:03 TolikPylypchuk

libuiohook can be used for hooking keyboard events instead of the Windows API. Alternatives for working with layouts should be researched (probably X11 can be used on Linux).

TolikPylypchuk avatar Jun 01 '20 17:06 TolikPylypchuk

For version 4.0, macOS support won't be implemented. Maybe, it will be added in 4.1 or later. For now, only Windows and Linux will be available. I need to refine the Linux version before releasing it.

TolikPylypchuk avatar Sep 15 '21 19:09 TolikPylypchuk

The app cross-platform now, with support for Windows, macOS, and Linux. I was thinking whether to support other OSes, like FreeBSD, but .NET doesn't support them, so I won't as well. But Wayland support on Linux is absent, so this issue cannot be closed yet.

TolikPylypchuk avatar Feb 10 '22 19:02 TolikPylypchuk