mirror of
https://github.com/apache/cordova-plugin-screen-orientation.git
synced 2025-02-24 09:02:51 +08:00
36 lines
1.0 KiB
JavaScript
36 lines
1.0 KiB
JavaScript
var exec = require('cordova/exec'),
|
|
screenOrientation = {},
|
|
iosOrientation = 'unlocked',
|
|
orientationMap = {
|
|
'portrait': [0,180],
|
|
'portrait-primary': [0],
|
|
'portrait-secondary': [180],
|
|
'landscape': [-90,90],
|
|
'landscape-primary': [-90],
|
|
'landscape-secondary': [90],
|
|
'default': [-90,90,0,180]
|
|
};
|
|
|
|
screenOrientation.setOrientation = function(orientation) {
|
|
iosOrientation = orientation;
|
|
|
|
var success = function(res) {
|
|
if (orientation === 'unlocked' && res.device) {
|
|
iosOrientation = res.device;
|
|
setTimeout(function() {
|
|
iosOrientation = 'unlocked';
|
|
},300);
|
|
}
|
|
};
|
|
|
|
exec(success, null, "YoikScreenOrientation", "screenOrientation", ['set', orientation]);
|
|
};
|
|
|
|
module.exports = screenOrientation;
|
|
|
|
// ios orientation callback/hook
|
|
window.shouldRotateToOrientation = function(orientation) {
|
|
var map = orientationMap[iosOrientation] || orientationMap['default'];
|
|
return map.indexOf(orientation) >= 0;
|
|
};
|