gui.webm
[Hide] (337.7KB, 1280x720, 00:12) I made an immediate mode GUI library for my own use in the past, but as of now I haven't used it for anything at all.
It has fractional scaling (the fraction I pass to all widgets is just the display's DPI multiplied by the scaling factor), supports IMEs, and has basic text & image clipboard support. While it does work well and the architecture is quite simple, I have only implemented text, buttons and text edit fields so far, nothing else.
Bloat-wise, it currently hard-depends on Skia, ICU and X11, but all three can be refactored away with zero effort because I kept the code reasonably organised. Not like I really want to actually refactor away Skia, since while it is responsible for 95% of the binary size, it is extremely fast, saves me from having to bother with any OpenGL headache, I get to render vector graphics for basically free, and I can easily port this to a platform with no GPU.