diff --git a/chrome/browser/resources/feedback/js/feedback.js b/chrome/browser/resources/feedback/js/feedback.js index f79e0946feac0..9e39158dd40ef 100644 --- a/chrome/browser/resources/feedback/js/feedback.js +++ b/chrome/browser/resources/feedback/js/feedback.js @@ -235,13 +235,18 @@ function initialize() { if (feedbackInfo.pageUrl) $('page-url-text').value = feedbackInfo.pageUrl; - takeScreenshot(function(screenshotDataUrl) { - $('screenshot-image').src = screenshotDataUrl; - feedbackInfo.screenshot = dataUrlToBlob(screenshotDataUrl); + takeScreenshot(function(screenshotCanvas) { // TODO(rkc): Remove logging once crbug.com/284662 is closed. console.log('FEEDBACK_DEBUG: Taken screenshot. Showing window.'); + + // We've taken our screenshot, show the feedback page without any + // further delay. resizeAppWindow(); chrome.app.window.current().show(); + + var screenshotDataUrl = screenshotCanvas.toDataURL('image/png'); + $('screenshot-image').src = screenshotDataUrl; + feedbackInfo.screenshot = dataUrlToBlob(screenshotDataUrl); }); chrome.feedbackPrivate.getUserEmail(function(email) { diff --git a/chrome/browser/resources/feedback/js/take_screenshot.js b/chrome/browser/resources/feedback/js/take_screenshot.js index ae9543c8751d1..2985e64fd43a6 100644 --- a/chrome/browser/resources/feedback/js/take_screenshot.js +++ b/chrome/browser/resources/feedback/js/take_screenshot.js @@ -4,8 +4,8 @@ /** * Function to take the screenshot of the current screen. - * @param {function(string)} callback Callback for returning the data URL to the - * screenshot. + * @param {function(HTMLCanvasElement)} callback Callback for returning the + * canvas with the screenshot on it. */ function takeScreenshot(callback) { var screenshotStream = null; @@ -25,7 +25,7 @@ function takeScreenshot(callback) { screenshotStream.stop(); screenshotStream = null; - callback(canvas.toDataURL('image/png')); + callback(canvas); } }, false);