`window.print()` does indeed trigger a tab-modal dialog which requires user interaction to proceed. Note that it's not an "error dialog"; it's just the regular print dialog (unless you're talking about something different?) The dialog shouldn't hang the whole browser, but I think it does pause JS execution in the current tab, until the user clicks through the dialog. (similar to `alert()` and `prompt()` I think). Are you seeing this behave differently from those APIs, regarding whether/when the fuzzer is able to proceed? (I confirmed that I can e.g. successfully close the tab with the "x" button after doing window.print(). I would imagine the fuzzer is able to to that, though I'm not sure precisely how it works / what it needs to do next after having invoked this API in order to proceed.) Whatever the core issue is here, do you know if it's a longtime issue vs. if it started recently? (In any case, emilio probably would probably be the best person to comment here, since he e.g. implemented `dom.window_print.fuzzing.block_while_printing` which I see in your prefs.js file and which might be related or in the neighborhood of whatever's needed/broken here. Ticking ni=emilio to be sure this is on his radar.)
Bug 1741698 Comment 2 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
`window.print()` does indeed trigger a tab-modal dialog which requires user interaction to proceed. Note that it's not an "error dialog"; it's just the regular print dialog (unless you're talking about something different?) The dialog shouldn't hang the whole browser, but I think it does pause JS execution in the current tab, until the user clicks through the dialog. (similar to `alert()` and `prompt()` I think). Are you seeing this behave differently from those APIs, regarding whether/when the fuzzer is able to proceed? (I confirmed that I can e.g. successfully close the tab with the "x" button after doing window.print(). I would imagine the fuzzer is able to to that, though I'm not sure precisely how it works / what it needs to do next after having invoked this API in order to proceed.) Whatever the core issue is here, do you know if it's a longtime issue vs. if it started recently? (In any case, emilio probably would probably be the best person to comment here, since he e.g. implemented `dom.window_print.fuzzing.block_while_printing` (in bug 1698175) which I see in your prefs.js file and which might be related or in the neighborhood of whatever's needed/broken here. Ticking ni=emilio to be sure this is on his radar.)