There is a ticket open for building an abstraction layer @ https://github.com/aseprite/aseprite/issues/139
In terms of Aseprite:
> > But what made it the choice over Allegro 5, SFML, and SDL2?
> through all these years I reached to the conclusion that you need full control of mouse and keyboard messages (and all window messages in particular, e.g. to give proper support to pen/stylus). [1]
[1] https://github.com/aseprite/aseprite/issues/139#issuecomment...