The documentation of OnlineUnlockForm is o so true:
You should create one of these components and add it to your parent window, or use a DialogWindow to display it as a pop-up. But if you're writing a plugin, then DO NOT USE A DIALOG WINDOW! Add it as a child component of your plugin's editor component instead. Plugins that pop up external registration windows are incredibly annoying, and cause all sorts of headaches for hosts. Don't be the person who writes that plugin that irritates everyone with a dialog box every time they try to scan for new plugins!
But... what's this? In the very same OnlineUnlockForm alert windows get created.
void timerCallback() override { spinner.setVisible (false); stopTimer(); if (result.errorMessage.isNotEmpty()) { AlertWindow::showMessageBoxAsync (AlertWindow::WarningIcon, TRANS("Registration Failed"), result.errorMessage); } else if (result.informativeMessage.isNotEmpty()) { AlertWindow::showMessageBoxAsync (AlertWindow::InfoIcon, TRANS("Registration Complete!"), result.informativeMessage); } ...
Aren't these windows even modal? This should not be done in a plugin.
Can you add an option to display these alert windows as child components onto the OnlineUnlockForm?