Monarch queue of popups

I’m a little confused by the meaning of ‘busy’ in Monarch, and the purpose of the queue.
We want to show a series of popups in particular situations, e.g. a popup telling the player about an item they’ve unlocked, and a separate popup with a reward.
We find that if we call monarch.show() on each in succession, the second one appears as soon as the first one has transitioned in/out.

Does the queue system not cover popups, or have I misunderstood its purpose? I’ve seen an explanation that the queue helps show a screen if Monarch is ‘busy’ but I’m not sure busy means:

  1. Waiting for the user to complete an action, such as hit ‘OK’ on a screen or
  2. Complete some internal processing or a transition.

I saw in this post: Monarch not showing screen - #6 by britzl “The purpose of the queue is to handle a sequence of screens being shown or hidden. You don’t need to create your own queue.” but I don’t see a function in the API to show the next screen in the queue.

thanks

Ah, ok, previous versions of Monarch would simply ignore a second call to monarch.show() if another one was in progress (ie a transition was playing). Now the second monarch.show() call will be queued and immediately handled when the first screen is fully shown (ie transitions have completed).

So the queue is not for “screens to be shown when a previous screen has been hidden or something like that”. It is an internal system to allow a developer to show multiple screens in rapid succession.

1 Like