From 747074ef61c841221bcbe75e0063acb31c00417e Mon Sep 17 00:00:00 2001 From: Takuya Suemura Date: Tue, 19 Feb 2019 21:04:44 +0900 Subject: [PATCH 1/2] Restore original window size when taking full size screenshot --- lib/helper/WebDriver.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/helper/WebDriver.js b/lib/helper/WebDriver.js index 573bad4a3..52b14a7f6 100644 --- a/lib/helper/WebDriver.js +++ b/lib/helper/WebDriver.js @@ -1287,6 +1287,8 @@ class WebDriver extends Helper { } /* eslint-disable prefer-arrow-callback, comma-dangle, prefer-const */ + const originalWindowSize = await this.browser.getWindowSize(); + let { width, height } = await this.browser.execute(function () { return { height: document.body.scrollHeight, @@ -1299,7 +1301,8 @@ class WebDriver extends Helper { await this.browser.setWindowSize(width, height); this.debug(`Screenshot has been saved to ${outputFile}, size: ${width}x${height}`); - return this.browser.saveScreenshot(outputFile); + await this.browser.saveScreenshot(outputFile); + await this.browser.setWindowSize(originalWindowSize.width, originalWindowSize.height); } From 9f95ed2e82f9587aeacea75c771c0293a798d80f Mon Sep 17 00:00:00 2001 From: Takuya Suemura Date: Wed, 20 Feb 2019 09:07:13 +0900 Subject: [PATCH 2/2] Return screenshot buffer --- lib/helper/WebDriver.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/helper/WebDriver.js b/lib/helper/WebDriver.js index 52b14a7f6..92f31cbeb 100644 --- a/lib/helper/WebDriver.js +++ b/lib/helper/WebDriver.js @@ -1301,8 +1301,9 @@ class WebDriver extends Helper { await this.browser.setWindowSize(width, height); this.debug(`Screenshot has been saved to ${outputFile}, size: ${width}x${height}`); - await this.browser.saveScreenshot(outputFile); + const buffer = await this.browser.saveScreenshot(outputFile); await this.browser.setWindowSize(originalWindowSize.width, originalWindowSize.height); + return buffer; }