You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by pu...@apache.org on 2012/11/06 01:38:28 UTC
[11/25] js commit: merge platform + deviceproxy
merge platform + deviceproxy
Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/commit/425ad0b0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/tree/425ad0b0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/diff/425ad0b0
Branch: refs/heads/master
Commit: 425ad0b015b8373565ca859a5a1f820f4416a757
Parents: 8a58735 a45667e
Author: Jesse MacFadyen <pu...@gmail.com>
Authored: Mon Oct 29 16:03:43 2012 -0700
Committer: Jesse MacFadyen <pu...@gmail.com>
Committed: Mon Oct 29 16:03:43 2012 -0700
----------------------------------------------------------------------
lib/windows8/platform.js | 6 +
lib/windows8/plugin/windows8/CaptureProxy.js | 2 +-
lib/windows8/plugin/windows8/ContactsProxy.js | 49 +
lib/windows8/plugin/windows8/DeviceProxy.js | 72 +-
lib/windows8/plugin/windows8/FileProxy.js | 4 +-
lib/windows8/plugin/windows8/MediaProxy.js | 4 +-
test/window8/README.txt | 14 +
test/window8/accelerometer.tests.js | 192 ++
test/window8/camera.tests.js | 192 ++
test/window8/capture.tests.js | 262 ++
test/window8/compass.tests.js | 76 +
test/window8/contacts.tests.js | 451 +++
test/window8/device.tests.js | 34 +
test/window8/file.tests.js | 3481 ++++++++++++++++++++
test/window8/filetransfer.tests.js | 72 +
test/window8/geolocation.tests.js | 106 +
test/window8/media.tests.js | 137 +
test/window8/network.tests.js | 25 +
test/window8/notification.tests.js | 20 +
test/window8/storage.tests.js | 405 +++
20 files changed, 5581 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/blob/425ad0b0/lib/windows8/platform.js
----------------------------------------------------------------------
diff --cc lib/windows8/platform.js
index cc107b9,eedd89f..5742dc4
mode 100755,100644..100755
--- a/lib/windows8/platform.js
+++ b/lib/windows8/platform.js
@@@ -33,8 -33,8 +33,9 @@@ require('cordova/plugin/windows8/Accele
require('cordova/plugin/windows8/CameraProxy');
require('cordova/plugin/windows8/CaptureProxy');
require('cordova/plugin/windows8/CompassProxy');
+ require('cordova/plugin/windows8/ContactsProxy');
require('cordova/plugin/windows8/FileProxy');
+
require('cordova/plugin/windows8/FileTransferProxy');
require('cordova/plugin/windows8/MediaProxy');
require('cordova/plugin/windows8/NotificationProxy');
@@@ -43,34 -44,19 +45,35 @@@
module.exports = {
id: "windows8",
initialize:function() {
- var app = WinJS.Application;
- app.addEventListener("checkpoint", checkpointHandler);
- function checkpointHandler(eventArgs) {
- cordova.fireDocumentEvent('pause');
+ var onWinJSReady = function () {
+ var app = WinJS.Application;
+ var checkpointHandler = function checkpointHandler() {
+ cordova.fireDocumentEvent('pause');
+ };
+
+ var resumingHandler = function resumingHandler() {
+ cordova.fireDocumentEvent('resume');
+ };
+
+ app.addEventListener("checkpoint", checkpointHandler);
+ Windows.UI.WebUI.WebUIApplication.addEventListener("resuming", resumingHandler, false);
+ app.start();
++
};
- Windows.UI.WebUI.WebUIApplication.addEventListener("resuming", resumingHandler, false);
- function resumingHandler() {
- cordova.fireDocumentEvent('resume');
- }
+ if (!window.WinJS) {
+ // <script src="//Microsoft.WinJS.1.0/js/base.js"></script>
+ var scriptElem = document.createElement("script");
+ scriptElem.src = "//Microsoft.WinJS.1.0/js/base.js";
+ scriptElem.addEventListener("load", onWinJSReady);
+ document.head.appendChild(scriptElem);
- app.start();
+ console.log("added WinJS ... ");
+ }
+ else {
+ onWinJSReady();
+ }
},
objects: {
cordova: {
http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/blob/425ad0b0/lib/windows8/plugin/windows8/CaptureProxy.js
----------------------------------------------------------------------
diff --cc lib/windows8/plugin/windows8/CaptureProxy.js
index 6e5f3f0,f367e68..1e76ddb
--- a/lib/windows8/plugin/windows8/CaptureProxy.js
+++ b/lib/windows8/plugin/windows8/CaptureProxy.js
@@@ -128,29 -128,34 +128,29 @@@ module.exports =
getFormatData: function (successCallback, errorCallback, args) {
Windows.Storage.StorageFile.getFileFromPathAsync(args[0]).then(
function (storageFile) {
- var mediaTypeFlag = String(args[1]).split("/")[0].toLowerCase();
+ var mediaTypeFlag = String(storageFile.contentType).split("/")[0].toLowerCase();
if (mediaTypeFlag === "audio") {
- storageFile.properties.getMusicPropertiesAsync().then(
- function (audioProperties) {
- successCallback(new MediaFileData(null, audioProperties.bitrate, 0, 0, audioProperties.duration / 1000));
- }, function () {
- errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
- }
- );
- } else if (mediaTypeFlag === "video") {
- storageFile.properties.getVideoPropertiesAsync().then(
- function (videoProperties) {
- successCallback(new MediaFileData(null, videoProperties.bitrate, videoProperties.height, videoProperties.width, videoProperties.duration / 1000));
- }, function () {
- errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
- }
- );
- } else if (mediaTypeFlag === "image") {
- storageFile.properties.getImagePropertiesAsync().then(
- function (imageProperties) {
- successCallback(new MediaFileData(null, 0, imageProperties.height, imageProperties.width, 0));
- }, function () {
- errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
- }
- );
- } else {
- errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
+ storageFile.properties.getMusicPropertiesAsync().then(function (audioProperties) {
+ successCallback(new MediaFileData(null, audioProperties.bitrate, 0, 0, audioProperties.duration / 1000));
+ }, function () {
+ errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
+ });
+ }
+ else if (mediaTypeFlag === "video") {
+ storageFile.properties.getVideoPropertiesAsync().then(function (videoProperties) {
+ successCallback(new MediaFileData(null, videoProperties.bitrate, videoProperties.height, videoProperties.width, videoProperties.duration / 1000));
+ }, function () {
+ errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
+ });
+ }
+ else if (mediaTypeFlag === "image") {
+ storageFile.properties.getImagePropertiesAsync().then(function (imageProperties) {
+ successCallback(new MediaFileData(null, 0, imageProperties.height, imageProperties.width, 0));
+ }, function () {
+ errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
+ });
}
+ else { errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT)); }
}, function () {
errorCallback(new CaptureError(CaptureError.CAPTURE_INVALID_ARGUMENT));
}
http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/blob/425ad0b0/lib/windows8/plugin/windows8/DeviceProxy.js
----------------------------------------------------------------------
diff --cc lib/windows8/plugin/windows8/DeviceProxy.js
index 8d5f0b2,9f7bf1b..f6aa79e
--- a/lib/windows8/plugin/windows8/DeviceProxy.js
+++ b/lib/windows8/plugin/windows8/DeviceProxy.js
@@@ -22,34 -22,60 +22,68 @@@
var cordova = require('cordova');
var utils = require('cordova/utils');
+
module.exports = {
- getDeviceInfo:function(win,fail,args){
- console.log("NativeProxy::getDeviceInfo");
-
- // get the name ( hostName of the machine )
- var hostNames = Windows.Networking.Connectivity.NetworkInformation.getHostNames();
- var name = "unknown";
- hostNames.some(function (nm) {
- if (nm.displayName.indexOf(".local") > -1) {
- name = nm.displayName.split(".local")[0];
- return true;
- }
- });
-
- // deviceId aka uuid
- var deviceId = localStorage.deviceId;
- if(!deviceId) {
- deviceId = utils.createUUID();
- console.log(deviceId);
- localStorage.deviceId = deviceId;
+ getDeviceInfo:function(win,fail,args){
+ console.log("NativeProxy::getDeviceInfo");
+
+ var hostNames = Windows.Networking.Connectivity.NetworkInformation.getHostNames();
+
+ var name = "unknown";
+ hostNames.some(function (nm) {
+ if (nm.displayName.indexOf(".local") > -1) {
+ name = nm.displayName.split(".local")[0];
+ return true;
+ }
+ });
+
+ // deviceId aka uuid
+
+ var deviceId = "";
+ Windows.System.UserProfile.UserInformation.getFirstNameAsync().then(function (fileName) {
+ var path = "C:\\Users\\" + fileName + "\\Documents";
+ Windows.Storage.StorageFolder.getFolderFromPathAsync(path).then(function (storageFolder) {
+ return storageFolder.createFileAsync("appDeviceIdentifier.txt", Windows.Storage.CreationCollisionOption.openIfExists);
+ }).then(function (storageFile) {
+ var value = Windows.Storage.Streams.UnicodeEncoding.utf8;
+ Windows.Storage.FileIO.readTextAsync(storageFile, value).then(function (fileContent) {
+ if (fileContent) {
+ deviceId = fileContent;
+ setTimeout(function () {
+ win({ platform: "windows8", version: "8", name: name, uuid: "TODO", cordova: "2.2.0" });
+ }, 0)
+ } else {
+ deviceId = utils.createUUID();
+ Windows.Storage.FileIO.writeTextAsync(storageFile, deviceId, Windows.Storage.Streams.UnicodeEncoding.utf8).done(
+ function () {
+ setTimeout(function () {
+ win({ platform: "windows8", version: "8", name: name, uuid: "TODO", cordova: "2.2.0" });
+ }, 0)
+ }, function () {
+ fail(FileError.INVALID_MODIFICATION_ERR);
+ }
+
+ );
+ }
+ },
+ function () {
+ fail(FileError.ENCODING_ERR);
+ });
+ }, function () {
+ fail(FileError.NOT_FOUND_ERR);
+ });
+
- }, fail && fail());
++ },
++ fail && fail());
++
}
+
+ setTimeout(function(){
+ win({platform:"windows8", version:"8", name:name, uuid:deviceId, cordova:"2.2.0"});
+ },0);
+ }
+
};
-require("cordova/commandProxy").add("Device",module.exports);
+require("cordova/commandProxy").add("Device",module.exports);
http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/blob/425ad0b0/lib/windows8/plugin/windows8/FileProxy.js
----------------------------------------------------------------------
diff --cc lib/windows8/plugin/windows8/FileProxy.js
index 2e6f50c,99c6c95..fba3b83
--- a/lib/windows8/plugin/windows8/FileProxy.js
+++ b/lib/windows8/plugin/windows8/FileProxy.js
@@@ -283,10 -285,10 +283,10 @@@ module.exports =
});
} else {
- fail(FileError.INVALID_MODIFICATION_ERR);
+ fail && fail(FileError.INVALID_MODIFICATION_ERR);
}
}
-
+
});
};
removeEntry();
http://git-wip-us.apache.org/repos/asf/incubator-cordova-js/blob/425ad0b0/lib/windows8/plugin/windows8/MediaProxy.js
----------------------------------------------------------------------