+static void timer_tick(void *data, XtIntervalId *id)
+{
+ struct app_state *state = data;
+ XtAppContext app;
+
+ if (state->board.x > 4) {
+ /* Game is over */
+ state->timer_tick = 0;
+ return;
+ }
+
+ app = XtWidgetToApplicationContext(state->timer);
+ ui_timer_update(state, game_elapsed(&state->board));
+ state->timer_tick = XtAppAddTimeOut(app, TIMER_UPDATE_MS,
+ timer_tick, state);
+}
+