GLFW
A multi-platform library for OpenGL, OpenGL ES, Vulkan, etc.
...Support for multiple windows, multiple monitors, high-DPI and gamma ramps. Support for keyboard, mouse, gamepad, time and window event input, via polling or callbacks. Comes with a tutorial, guides and reference documentation, examples and test programs. Open Source with an OSI-certified license allowing commercial use. Access to native objects and compile-time options for platform specific features. Community-maintained bindings for many different languages.