| // Copyright 2015 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| var requestButton = document.getElementById("requestButton"); |
| var scanButton = document.getElementById('scanButton'); |
| var scannedImages = document.getElementById('scannedImages'); |
| var waitAnimation = document.getElementById('waitAnimation'); |
| var imageMimeType; |
| |
| function setOnlyChild(parent, child) { |
| while (parent.firstChild) { |
| parent.removeChild(parent.firstChild); |
| } |
| parent.appendChild(child); |
| } |
| |
| var gotPermission = function(result) { |
| waitAnimation.style.display = 'block'; |
| requestButton.style.display = 'none'; |
| scanButton.style.display = 'block'; |
| console.log('App was granted the "documentScan" permission.'); |
| waitAnimation.style.display = 'none'; |
| }; |
| |
| var permissionObj = {permissions: ['documentScan']}; |
| |
| requestButton.addEventListener('click', function() { |
| waitAnimation.style.display = 'block'; |
| chrome.permissions.request( permissionObj, function(result) { |
| if (result) { |
| gotPermission(); |
| } else { |
| console.log('App was not granted the "documentScan" permission.'); |
| console.log(chrome.runtime.lastError); |
| } |
| }); |
| }); |
| |
| var onScanCompleted = function(scan_results) { |
| waitAnimation.style.display = 'none'; |
| if (chrome.runtime.lastError) { |
| console.log('Scan failed: ' + chrome.runtime.lastError.message); |
| return; |
| } |
| numImages = scan_results.dataUrls.length; |
| console.log('Scan completed with ' + numImages + ' images.'); |
| for (var i = 0; i < numImages; i++) { |
| urlData = scan_results.dataUrls[i] |
| console.log('Scan ' + i + ' data length ' + |
| urlData.length + '.'); |
| console.log('URL is ' + urlData); |
| var scannedImage = document.createElement('img'); |
| scannedImage.src = urlData; |
| scannedImages.insertBefore(scannedImage, scannedImages.firstChild); |
| } |
| }; |
| |
| scanButton.addEventListener('click', function() { |
| var scanProperties = {}; |
| waitAnimation.style.display = 'block'; |
| chrome.documentScan.scan(scanProperties, onScanCompleted); |
| }); |
| |
| chrome.permissions.contains(permissionObj, function(result) { |
| if (result) { |
| gotPermission(); |
| } |
| }); |