Since all ExtendScript actions happen on the main thread, everything is put on hold until your ES command is completed, including Panels, unfortunately. You can either delay your actions in ExtendScript space to allow short gaps for updates back to your panel, or you can divide up your commands in CEP space and send one after another, updating your progress bar in between. For the ExendScript approach, use app.scheduleTask(). For the CEP approach, you can use setTimeout(). Add a 1 ms or 0 ms delay if you can get away with it.
... View more