My assumption was that it occurred on layout load.
If you think of the requirements of getting a "layout" into a browser, it would require all of the UI and data components to be sent on-demand. If the content within the popover is static, then it would make sense for performance purposes to send it when the layout is loaded, as loading new data into the layout would sometimes cause a redraw to refresh the screen. The popover doesn't seem like it's loading a new screen, it seems like it's an embedded, loaded object into the layout.
When you consider dynamic content (IE user changing global field value changes related data in portal), the screen needs to update, and most likely this would require a redraw with new data sent. For this action, I don't think it would matter if the data changing was in a popover or not, so again I would assume the entire layout is redrawn.
I think modifying data in certain ways will cause (or not cause) a redraw of the screen. Things such as trigger actions will most likely cause redraws as well.
A definite answer to this would be really useful though!
Our testing on Web Direct would indicate that for Web Direct the Popover is loaded and sent to the client when the button is clicked not as part of the original layout rendering.
This allowed us to improve performance substantially on a layout.
Have not tested on FM Pro.
The big question then would be is the REST of the code outside of the popover re-sent, or is it a live update to only the popover object code block?
If you have a super complicated layout with only a small popover, then it would assumably decrease performance if the entire layout was reloaded just to load the small portion of the popover.
The pop-over appeared to be loaded (and dismissed) via AJAX without a full page refresh.
That being said there does seem to be some overhead to perform the round trip to the server.
Again this is Web Direct only - not tested in FMP.
That's a relief to hear. In all honesty I haven't really dug into the behind the scenes from webdirect, aside from what has been presented to the dev community by FM so far.