Download
This commit is contained in:
@@ -1,22 +0,0 @@
|
||||
<widget id='com.mdibaiee.sketchy' version='1.2.1'>
|
||||
|
||||
<name>Sketchy</name>
|
||||
<description>
|
||||
Free full-featured Sketch app
|
||||
</description>
|
||||
<author email='mdibaiee@aol.com' href='http://dibaiee.ir'>
|
||||
Mahdi Dibaiee
|
||||
</author>
|
||||
<content src='index.html'/>
|
||||
<access origin='*'/>
|
||||
|
||||
<preference name='KeepRunning' value='false'/>
|
||||
<preference name='SplashScreen' value='sketchy'/>
|
||||
<preference name='SetFullScreen' value='true'/>
|
||||
<preference name='FullScreen' value='true'/>
|
||||
<preference name='DisallowOverscroll' value='true'/>
|
||||
|
||||
<icon src='icon.png'/>
|
||||
</widget>
|
||||
|
||||
|
@@ -5,8 +5,9 @@
|
||||
<title>Sketchy</title>
|
||||
<meta charset='UTF-8'>
|
||||
<link rel='stylesheet' href='css/main.css'>
|
||||
<script src='cordova.js'></script>
|
||||
</head>
|
||||
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
|
@@ -1,123 +1,136 @@
|
||||
$(document).ready(function() {
|
||||
|
||||
$('*').off('click mousemove mousedown mouseup mouseleave').on('click mousemove mousedown mouseup mouseleave', function(e) {
|
||||
e.preventDefault;
|
||||
$(document).on('resume', function() {
|
||||
sizeAndPos();
|
||||
})
|
||||
document.addEventListener('deviceready', function() {
|
||||
sizeAndPos();
|
||||
|
||||
/*$('a[href^="http"]').tap(function(e) {
|
||||
e.preventDefault();
|
||||
var href = $(this).attr('href');
|
||||
var view = new MozActivity({
|
||||
name: 'view',
|
||||
data: {
|
||||
type: 'url',
|
||||
url: href
|
||||
}
|
||||
$('*').off('click mousemove mousedown mouseup mouseleave').on('click mousemove mousedown mouseup mouseleave', function(e) {
|
||||
e.preventDefault;
|
||||
})
|
||||
return false;
|
||||
}).click(function(e) {
|
||||
e.preventDefault();
|
||||
return false;
|
||||
})*/
|
||||
|
||||
/*$('a[href^="mailto"]').tap(function(e) {
|
||||
e.preventDefault();
|
||||
var mail = new MozActivity({
|
||||
name: 'new',
|
||||
data: {
|
||||
type: 'mail',
|
||||
url: $(this).attr('href')
|
||||
}
|
||||
})
|
||||
return false;
|
||||
}).click(function(e) {
|
||||
e.preventDefault();
|
||||
return false;
|
||||
})*/
|
||||
/*$('a[href^="http"]').tap(function(e) {
|
||||
e.preventDefault();
|
||||
var href = $(this).attr('href');
|
||||
var view = new MozActivity({
|
||||
name: 'view',
|
||||
data: {
|
||||
type: 'url',
|
||||
url: href
|
||||
}
|
||||
})
|
||||
|
||||
window.save = function() {
|
||||
var f = c.getImageData(0, 0, width(), height());
|
||||
switch(save.background) {
|
||||
case 'white': {
|
||||
c.fillStyle = 'white';
|
||||
c.globalCompositeOperation = 'destination-over';
|
||||
c.fillRect(0, 0, width(), height());
|
||||
c.fillStyle = settings.color;
|
||||
c.globalCompositeOperation = settings.composite;
|
||||
break;
|
||||
}
|
||||
case 'current color': {
|
||||
c.fillStyle = settings.bg;
|
||||
c.globalCompositeOperation = 'destination-over';
|
||||
c.fillRect(0, 0, width(), height());
|
||||
c.globalCompositeOperation = settings.composite;
|
||||
break;
|
||||
}
|
||||
}
|
||||
var data = $c[0].toDataURL();
|
||||
if( save.type == 'sketchy project' ) {
|
||||
var list = JSON.parse(localStorage.getItem('projects'));
|
||||
var index;
|
||||
if( list && list.some(function(a, i) { if( a.name == save['file name'] ) {index = i; return true} return false }) ) {
|
||||
if( confirm('A sketch with this name already exists. Do you want to overwrite ' + save['file name'] + '?') ) {
|
||||
console.log(index);
|
||||
list[index] = {
|
||||
name: save['file name'],
|
||||
data: data,
|
||||
points: window.points,
|
||||
settings: settings
|
||||
}
|
||||
localStorage.setItem('projects', JSON.stringify(list));
|
||||
return false;
|
||||
}).click(function(e) {
|
||||
e.preventDefault();
|
||||
return false;
|
||||
})*/
|
||||
|
||||
/*$('a[href^="mailto"]').tap(function(e) {
|
||||
e.preventDefault();
|
||||
var mail = new MozActivity({
|
||||
name: 'new',
|
||||
data: {
|
||||
type: 'mail',
|
||||
url: $(this).attr('href')
|
||||
}
|
||||
})
|
||||
return false;
|
||||
}).click(function(e) {
|
||||
e.preventDefault();
|
||||
return false;
|
||||
})*/
|
||||
|
||||
|
||||
|
||||
window.save = function() {
|
||||
var f = c.getImageData(0, 0, width(), height());
|
||||
switch(save.background) {
|
||||
case 'white': {
|
||||
c.fillStyle = 'white';
|
||||
c.globalCompositeOperation = 'destination-over';
|
||||
c.fillRect(0, 0, width(), height());
|
||||
c.fillStyle = settings.color;
|
||||
c.globalCompositeOperation = settings.composite;
|
||||
break;
|
||||
}
|
||||
case 'current color': {
|
||||
c.fillStyle = settings.bg;
|
||||
c.globalCompositeOperation = 'destination-over';
|
||||
c.fillRect(0, 0, width(), height());
|
||||
c.globalCompositeOperation = settings.composite;
|
||||
break;
|
||||
}
|
||||
}
|
||||
else {
|
||||
list ? list.push({
|
||||
name: save['file name'],
|
||||
data: data,
|
||||
points: window.points,
|
||||
settings: settings
|
||||
}) : list = [{
|
||||
name: save['file name'],
|
||||
data: data,
|
||||
points: window.points,
|
||||
settings: settings
|
||||
}];
|
||||
localStorage.setItem('projects', JSON.stringify(list));
|
||||
}
|
||||
} else {
|
||||
var sd = window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fs) {
|
||||
var fdata = dataToBlob(data);
|
||||
var req = fs.root.getFile(save['file name'] + '.png', {create: true}, function(file) {
|
||||
file.createWriter(function(writer) {
|
||||
writer.write(fdata);
|
||||
alert('Your Sketch was saved successfuly: ' + this.result);
|
||||
}, function() {
|
||||
alert('Something bad happened trying to save your sketch ' + save['file name'] + '\n Possible reasons:\n Duplicate Name \n Not enough permission')
|
||||
})
|
||||
})
|
||||
}, function(error) {
|
||||
alert('Couldn\'t access filesystem\n' + error.message);
|
||||
});
|
||||
}
|
||||
c.putImageData(f, 0, 0);
|
||||
}
|
||||
window.load = function() {
|
||||
var file = JSON.parse(localStorage.getItem('projects')).filter(function(a) { return a.name == load.file })[0];
|
||||
var img = document.createElement('img');
|
||||
img.src = file.data;
|
||||
img.onload = function() {
|
||||
c.clearRect(0, 0, width(), height());
|
||||
c.drawImage(img, 0, 0);
|
||||
window.points = file.points;
|
||||
window.points.history = [{ data: c.createImageData($c.width(), $c.height()), points: []}, { data: c.getImageData(0, 0, width(), height()), points: file.points}];
|
||||
$c.first().css('background', file.settings.bg);
|
||||
window.settings.bg = file.settings.bg;
|
||||
var data = $c[0].toDataURL();
|
||||
if( save.type == 'sketchy project' ) {
|
||||
var list = JSON.parse(localStorage.getItem('projects'));
|
||||
var index;
|
||||
if( list && list.some(function(a, i) { if( a.name == save['file name'] ) {index = i; return true} return false }) ) {
|
||||
if( confirm('A sketch with this name already exists. Do you want to overwrite ' + save['file name'] + '?') ) {
|
||||
console.log(index);
|
||||
list[index] = {
|
||||
name: save['file name'],
|
||||
data: data,
|
||||
points: window.points,
|
||||
settings: settings
|
||||
}
|
||||
localStorage.setItem('projects', JSON.stringify(list));
|
||||
}
|
||||
}
|
||||
else {
|
||||
list ? list.push({
|
||||
name: save['file name'],
|
||||
data: data,
|
||||
points: window.points,
|
||||
settings: settings
|
||||
}) : list = [{
|
||||
name: save['file name'],
|
||||
data: data,
|
||||
points: window.points,
|
||||
settings: settings
|
||||
}];
|
||||
localStorage.setItem('projects', JSON.stringify(list));
|
||||
}
|
||||
} else {
|
||||
var img = dataToBlob(data);
|
||||
var sd = window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, function(fs) {
|
||||
window.alert('SD');
|
||||
/*var req = fs.root.getFile(save['file name'] + '.png', {create: true}, function(entry) {
|
||||
alert('Entry');
|
||||
entry.createWriter(function(writer) {
|
||||
writer.write(img);
|
||||
alert('Your Sketch was saved successfuly');
|
||||
}, function() {
|
||||
alert('Something bad happened trying to save your sketch ' + save['file name'] + '\n Possible reasons:\n Duplicate Name \n Not enough permission')
|
||||
})
|
||||
})*/
|
||||
}, function(e) {
|
||||
alert('SD Error')
|
||||
//alert('Couldn\'t access filesystem\nERR: ' + e.code);
|
||||
});
|
||||
}
|
||||
c.putImageData(f, 0, 0);
|
||||
}
|
||||
window.load = function() {
|
||||
var file = JSON.parse(localStorage.getItem('projects')).filter(function(a) { return a.name == load.file })[0];
|
||||
var img = document.createElement('img');
|
||||
img.src = file.data;
|
||||
img.onload = function() {
|
||||
c.clearRect(0, 0, width(), height());
|
||||
c.drawImage(img, 0, 0);
|
||||
window.points = file.points;
|
||||
window.points.history = [{ data: c.createImageData($c.width(), $c.height()), points: []}, { data: c.getImageData(0, 0, width(), height()), points: file.points}];
|
||||
$c.first().css('background', file.settings.bg);
|
||||
window.settings.bg = file.settings.bg;
|
||||
}
|
||||
}
|
||||
|
||||
if( !localStorage.getItem('sawVote') ) {
|
||||
$('.vote').removeClass('hidden');
|
||||
localStorage.setItem('sawVote', true);
|
||||
}
|
||||
if( !localStorage.getItem('sawVote') ) {
|
||||
$('.vote').removeClass('hidden');
|
||||
localStorage.setItem('sawVote', true);
|
||||
}
|
||||
}, false)
|
||||
|
||||
})
|
||||
|
BIN
Android/res/icons/android/icon-48-mdpi.png
Normal file
BIN
Android/res/icons/android/icon-48-mdpi.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.7 KiB |
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.7 KiB |
Reference in New Issue
Block a user