1. A computer-implemented method comprising the following operations performed by one or more processors: initializing, based on a captured event at a user interface, an event object including an event type that describes a user interface action; providing the initialized event object to an object model, the object model comprising user interface gadgets organized in a hierarchy, the user interface gadgets including a first user interface gadget including a first event listener that listens for a first trigger event condition to perform a first action on the first user interface gadget; recursively propagating the event object through the user interface gadgets based on the hierarchy of the user interface gadgets; and initiating, by the first event listener and responsive to determining that the propagated event fulfills the first trigger event condition, the first action on the first user interface gadget for display to a user.