Hello
I just saw that
GLFW 3 was released a few weeks ago, it is quite different from earlier versions. Have you ever considered using it or parts of it for SFML? It provides a lot of features you currently use or you might add in the future:
- OpenGL and OpenGL ES context creation
- Very sophisticated window management
- Input handling: Keyboard, mouse, joystick (might solve the keyboard issue)
- Support for multiple monitors
- Clipboard text support
- High-resolution timer
It would mean another dependency, but you could drastically reduce your code and wouldn't need to reinvent the wheel. Also, GLFW is a pretty lightweight C library.
On the other hand, I might imagine that over the years, you have found specific workarounds and code to handle functionality uniformly across operating systems. There might also be crucial features it does not provide. Anyway, just wanted to bring this into discussion, no need to decide soon