When aria-modal=”true” the static content in the modal popup / dialog
is not read by the VoiceOver at all.
This causes the following issues:
1. If there is any static text running more than a line user cannot
read and understand. We can make it announce with aria-describedby but
users cannot check the spelling, punctuation, etc.
2. Error messages displayed next to the form control are no longer
read by the VO while correcting the mistakes.
If the aria-modal property is removed from the popup, the static text and the error messages displayed next to the form controls are properly read by VoiceOver. However removing the aria-modal makes the VoiceOver read the content out of the popup which is a frustrating user experience.
So that we're all on the same page, are you able to attach a reduced test case? I could create one, but I'd be making some assumptions about what you intend. For example, some people use "popup" to mean fly out menus similar to html:select. Others use "popup" to mean contextual dialogs similar to what is called a "popover" on iOS.