Skip to content
This repository was archived by the owner on Sep 15, 2021. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ $ bower install ngCordova
- [Push Notifications](https://github.com/phonegap-build/PushPlugin) (**deprecated** - Will be removed in future release)
- [Push Notifications - V5] (https://github.com/phonegap/phonegap-plugin-push)
- [Screenshots](https://github.com/gitawego/cordova-screenshot)
- [Serial](https://github.com/xseignard/cordovarduino)
- [SMS](https://github.com/aharris88/phonegap-sms-plugin)
- [Social Sharing](https://github.com/EddyVerbruggen/SocialSharing-PhoneGap-Plugin)
- [Spinner Dialog](https://github.com/Paldom/SpinnerDialog)
Expand Down
2 changes: 1 addition & 1 deletion demo/www/app/localNotification/localNotification.ctrl.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ angular.module('demo.localNotification.ctrl', [])
.controller('LocalNotificationCtrl', function ($scope, $rootScope, $cordovaLocalNotification) {

$scope.addNotification = function () {
var now = new Date();
var now = new Date().getTime();
var _60_seconds_from_now = new Date(now + 60 * 1000);
var event = {
id: 1,
Expand Down
3 changes: 2 additions & 1 deletion dist/ng-cordova.js
Original file line number Diff line number Diff line change
Expand Up @@ -5579,6 +5579,7 @@ angular.module('ngCordova.plugins', [
'ngCordova.plugins.progressIndicator',
'ngCordova.plugins.push',
'ngCordova.plugins.push_v5',
'ngCordova.plugins.recentsControl',
'ngCordova.plugins.sms',
'ngCordova.plugins.socialSharing',
'ngCordova.plugins.spinnerDialog',
Expand Down Expand Up @@ -7058,4 +7059,4 @@ angular.module('ngCordova.plugins.zip', [])
};
}]);

})();
})();
27 changes: 23 additions & 4 deletions src/mocks/appVersion.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,29 @@ ngCordovaMocks.factory('$cordovaAppVersion', ['$q', function ($q) {
var throwsError = false;
return {
throwsError: throwsError,
getAppVersion: function () {
var defer = $q.defer();
defer.resolve('mock v');
return defer.promise;

getAppName: function () {
var q = $q.defer();
q.resolve('mock app name');
return q.promise;
},

getPackageName: function () {
var q = $q.defer();
q.resolve('com.package.mock');
return q.promise;
},

getVersionNumber: function () {
var q = $q.defer();
q.resolve('1.2.3');
return q.promise;
},

getVersionCode: function () {
var q = $q.defer();
q.resolve('4.5.6');
return q.promise;
}
};
}]);
15 changes: 15 additions & 0 deletions src/mocks/socialSharing.js
Original file line number Diff line number Diff line change
Expand Up @@ -258,6 +258,21 @@ ngCordovaMocks.factory('$cordovaSocialSharing', ['$q', function ($q) {
defer.resolve();
}
return defer.promise;
},

shareWithOptions: function (options) {
var defer = $q.defer();
if (this.throwsError) {
defer.reject('There was an error sharing via SMS.');
} else {
this.message = options.message;
this.subject = options.subject;
this.attachments = options.files;
this.link = options.url;

defer.resolve();
}
return defer.promise;
}
};
}]);
9 changes: 9 additions & 0 deletions src/mocks/toast.js
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,15 @@ ngCordovaMocks.factory('$cordovaToast', ['$q', function ($q) {
}
return defer.promise;
},
showWithOptions: function (options) {
var defer = $q.defer();
if (this.throwsError) {
defer.reject('There was an error showing the toast.');
} else {
defer.resolve();
}
return defer.promise;
},
show: function (message, duration, position) {
var defer = $q.defer();
if (this.throwsError) {
Expand Down
147 changes: 147 additions & 0 deletions src/plugins/3dtouch.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
// install : cordova plugin add https://github.com/EddyVerbruggen/cordova-plugin-3dtouch.git
// link : https://github.com/EddyVerbruggen/cordova-plugin-3dtouch

angular.module('ngCordova.plugins.3dtouch', [])

.factory('$cordova3DTouch', ['$q', function($q) {
var quickActions = [];
var quickActionHandler = {};

var createQuickActionHandler = function(quickActionHandler) {
return function (payload) {
for (var key in quickActionHandler) {
if (payload.type === key) {
quickActionHandler[key]();
}
}
};
};

return {
/*
* Checks if Cordova 3D touch is present and loaded
*
* @return promise
*/
isAvailable: function () {
var deferred = $q.defer();
if (!window.cordova) {
deferred.reject('Not supported in browser');
} else {
if (!window.ThreeDeeTouch) {
deferred.reject('Could not find 3D touch plugin');
} else {
window.ThreeDeeTouch.isAvailable(function (value) {
deferred.resolve(value);
}, function (err) {
deferred.reject(err);
});
}
}

return deferred.promise;
},

/*
* Add a quick action to menu
*
* @param string type
* @param string title
* @param string iconType (optional)
* @param string subtitle (optional)
* @param function callback (optional)
* @return promise
*/
addQuickAction: function(type, title, iconType, iconTemplate, subtitle, callback) {
var deferred = $q.defer();

var quickAction = {
type: type,
title: title,
subtitle: subtitle
};

if (iconType) {
quickAction.iconType = iconType;
}

if (iconTemplate) {
quickAction.iconTemplate = iconTemplate;
}

this.isAvailable().then(function() {
quickActions.push(quickAction);
quickActionHandler[type] = callback;
window.ThreeDeeTouch.configureQuickActions(quickActions);
window.ThreeDeeTouch.onHomeIconPressed = createQuickActionHandler(quickActionHandler);
deferred.resolve(quickActions);
},
function(err) {
deferred.reject(err);
});

return deferred.promise;
},

/*
* Add a quick action handler. Used for static quick actions
*
* @param string type
* @param function callback
* @return promise
*/
addQuickActionHandler: function(type, callback) {
var deferred = $q.defer();

this.isAvailable().then(function() {
quickActionHandler[type] = callback;
window.ThreeDeeTouch.onHomeIconPressed = createQuickActionHandler(quickActionHandler);
deferred.resolve(true);
},
function(err) {
deferred.reject(err);
});

return deferred.promise;
},

/*
* Enable link preview popup when force touch is appled to link elements
*
* @return bool
*/
enableLinkPreview: function() {
var deferred = $q.defer();

this.isAvailable().then(function() {
window.ThreeDeeTouch.enableLinkPreview();
deferred.resolve(true);
},
function(err) {
deferred.reject(err);
});

return deferred.promise;
},

/*
* Add a hanlder function for force touch events,
*
* @param function callback
* @return promise
*/
addForceTouchHandler: function(callback) {
var deferred = $q.defer();

this.isAvailable().then(function() {
window.ThreeDeeTouch.watchForceTouches(callback);
deferred.resolve(true);
},
function(err) {
deferred.reject(err);
});

return deferred.promise;
}
};
}]);
7 changes: 3 additions & 4 deletions src/plugins/appRate.js
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ angular.module('ngCordova.plugins.appRate', [])
*
* @param {Object} customObj
* @param {string} customObj.title
* @param {string} customObj.message
* @param {string} customObj.cancelButtonLabel
* @param {string} customObj.laterButtonLabel
* @param {string} customObj.rateButtonLabel
Expand Down Expand Up @@ -80,13 +81,11 @@ angular.module('ngCordova.plugins.appRate', [])
},

onButtonClicked: function (cb) {
AppRate.onButtonClicked = function (buttonIndex) {
cb.call(this, buttonIndex);
};
AppRate.preferences.callbacks.onButtonClicked = cb.bind(this);
},

onRateDialogShow: function (cb) {
AppRate.onRateDialogShow = cb();
AppRate.preferences.callbacks.onRateDialogShow = cb.bind(this);
}
};
}];
Expand Down
7 changes: 6 additions & 1 deletion src/plugins/googleAnalytics.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,13 @@ angular.module('ngCordova.plugins.googleAnalytics', [])

addCustomDimension: function (key, value) {
var d = $q.defer();
var parsedKey = parseInt(key, 10);

$window.analytics.addCustomDimension(key, value, function () {
if (isNaN(parsedKey)) {
d.reject('Parameter "key" must be an integer.');
}

$window.analytics.addCustomDimension(parsedKey, value, function () {
d.resolve();
}, function (error) {
d.reject(error);
Expand Down
1 change: 1 addition & 0 deletions src/plugins/module.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
angular.module('ngCordova.plugins', [
'ngCordova.plugins.3dtouch',
'ngCordova.plugins.actionSheet',
'ngCordova.plugins.adMob',
'ngCordova.plugins.appAvailability',
Expand Down
21 changes: 21 additions & 0 deletions src/plugins/recentsControl.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// install : cordova plugin add cordova-plugin-recentscontrol
// link : https://github.com/smcpjames/cordova-plugin-recentscontrol

/* globals RecentsControl: true */
angular.module('ngCordova.plugins.recentsControl', [])

.factory('$cordovaRecents', function () {
return {
setColor: function (color) {
return RecentsControl.setColor(color);
},

setDescription: function (desc) {
return RecentsControl.setDescription(desc);
},

setOptions: function (colorStr, desc) {
return RecentsControl.setOptions(colorStr, desc);
}
};
});
Loading