[LWJGL] Proper Way to Handle GUI Input.

I’ve been working on a basic all-in-one 2D game library using LWJGL.

The UI that I created works fine just sometimes events are lost, or something.

I am currently polling the input for the UI and if a UI object returns true it breaks the loop through in my listener.

Is polling the best way to do this?
How else can I do this?

Lets make this a discussion!