code: func Dequeue(xu *xgbutil.XUtil) (xgb.Event, xgb.Error) {
  	xu.EvqueueLck.Lock()
  	defer xu.EvqueueLck.Unlock()
  
  	everr := xu.Evqueue[0]
  	xu.Evqueue = xu.Evqueue[1:]
  	return everr.Event, everr.Err
  }
docs: // Dequeue pops an event/error from the queue and returns it.
  // The queue item is unwrapped and returned as multiple return values.
  // Only one of the return values can be nil.