diff --git a/src/browser/main.js b/src/browser/main.js index 075a6a6c..e1e4b046 100644 --- a/src/browser/main.js +++ b/src/browser/main.js @@ -1932,7 +1932,12 @@ $("take_screenshot").onclick = function() { - emulator.screen_make_screenshot(); + const image = emulator.screen_make_screenshot(); + try { + const w = window.open(""); + w.document.write(image.outerHTML); + } + catch(e) {} $("take_screenshot").blur(); }; diff --git a/src/browser/screen.js b/src/browser/screen.js index a6c8c149..e073bf66 100644 --- a/src/browser/screen.js +++ b/src/browser/screen.js @@ -220,12 +220,7 @@ function ScreenAdapter(screen_container, bus) image.src = canvas.toDataURL("image/png"); } - - try { - const w = window.open(""); - w.document.write(image.outerHTML); - } - catch(e) {} + return image; }; this.put_char = function(row, col, chr, bg_color, fg_color) diff --git a/src/browser/starter.js b/src/browser/starter.js index 70d9496a..063f2512 100644 --- a/src/browser/starter.js +++ b/src/browser/starter.js @@ -963,8 +963,9 @@ V86Starter.prototype.screen_make_screenshot = function() { if(this.screen_adapter) { - this.screen_adapter.make_screenshot(); + return this.screen_adapter.make_screenshot(); } + return null; }; /**