First of all, thanks a lot for all the updates! The latest version fixed a crash I got on OSX! Much appreciated!
Didn't know where to post this, so I'll just revive this thread. I have a number of mapped VBOs that for performance reasons shouldn't be mapped again until they're not in use anymore to prevent a stall. This requires me to count frames before a buffer can be reused, which is a bit inconvenient since I have to remember to call nextFrame() each frame or I'll get a horrible memory leak where new buffers are allocated but never reused or deleted. On the other hand, if I accidentally call nextFrame() multiple times per frame I may encounter performance problems since the buffer isn't left alone for long enough.
What I'm proposing is the ability to add (and remove) listeners to the Display object that'd allow me to automatically call nextFrame() when Display.update() is called. It'd probably be best if there were two different possible events (different listeners?) for pre-update events and post-update events. Although I could theoretically implement this listener system myself, my library has no control over when or how Display.update() is called, so that'd leave it to the user of the library to remember to call the listeners which is exactly what I want to avoid in the first place.