From 3424ddb39c25d28ccb976a817b7af9d371381447 Mon Sep 17 00:00:00 2001 From: James Long Date: Tue, 29 Oct 2013 15:40:18 -0400 Subject: [PATCH] fix camera for firefox os --- src/firefoxos/CameraProxy.js | 49 ++++++++++++++++++------------------ 1 file changed, 24 insertions(+), 25 deletions(-) diff --git a/src/firefoxos/CameraProxy.js b/src/firefoxos/CameraProxy.js index bbed304..9afb343 100644 --- a/src/firefoxos/CameraProxy.js +++ b/src/firefoxos/CameraProxy.js @@ -17,36 +17,35 @@ * specific language governing permissions and limitations * under the License. * -*/ + */ +function takePicture(success, error, opts) { + var pick = new MozActivity({ + name: "pick", + data: { + type: ["image/*"] + } + }); + pick.onerror = error || function() {}; -function getPicture(cameraSuccess, cameraError, cameraOptions) { - cameraError = cameraError || function(){}; - var pick = new MozActivity({ - name: "pick", - data: { - type: ["image/png", "image/jpg", "image/jpeg"] - } - }); - pick.onerror = cameraError; - pick.onsuccess = function() { - // image is returned as Blob in this.result.blob - // we need to call cameraSuccess with url or base64 encoded image - if (cameraOptions && cameraOptions.destinationType == 0) { - // TODO: base64 - return; - } - if (!cameraOptions || !cameraOptions.destinationType || cameraOptions.destinationType > 0) { - // url - return cameraSuccess(window.URL.createObjectURL(this.result.blob)); - } - }; + pick.onsuccess = function() { + // image is returned as Blob in this.result.blob + // we need to call success with url or base64 encoded image + if (opts && opts.destinationType == 0) { + // TODO: base64 + return; + } + if (!opts || !opts.destinationType || opts.destinationType > 0) { + // url + return success(window.URL.createObjectURL(this.result.blob)); + } + }; } module.exports = { - getPicture: getPicture, - cleanup: function(){} + takePicture: takePicture, + cleanup: function(){} }; -require("cordova/firefoxos/commandProxy").add("Camera", module.exports); \ No newline at end of file +require("cordova/firefoxos/commandProxy").add("Camera", module.exports);