Drag docked window header to undock.
Clip widget hover calculation to the widget's parent window rect.
Don't render widgets if they're outside their parent window.
Generalize event callbacks. Use the same function pointer for all of them. Use a union for event data (like SDL_Event).
Fixed clipping widget hover to parent window breaking combo widget dropdown list.
Added an optional callback function for centralized event handling.