Prepare release
This commit is contained in:
parent
86c58f4cf1
commit
498ec93a8c
@ -2,7 +2,7 @@
|
|||||||
<html manifest="cache.manifest">
|
<html manifest="cache.manifest">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<title>StackEdit — *smart* markdown editor</title>
|
<title>StackEdit – *smart* markdown editor</title>
|
||||||
<link rel="canonical" href="https://stackedit.io/">
|
<link rel="canonical" href="https://stackedit.io/">
|
||||||
<link rel="icon" href="res-min/img/stackedit-32.ico" type="image/x-icon">
|
<link rel="icon" href="res-min/img/stackedit-32.ico" type="image/x-icon">
|
||||||
<link rel="shortcut icon" href="res-min/img/stackedit-32.ico" type="image/x-icon">
|
<link rel="shortcut icon" href="res-min/img/stackedit-32.ico" type="image/x-icon">
|
||||||
|
@ -967,6 +967,9 @@ define([
|
|||||||
$(".action-default-settings").click(function() {
|
$(".action-default-settings").click(function() {
|
||||||
storage.removeItem("settings");
|
storage.removeItem("settings");
|
||||||
storage.removeItem("theme");
|
storage.removeItem("theme");
|
||||||
|
if(!settings.dropboxFullAccess) {
|
||||||
|
storage.removeItem('dropbox.lastChangeId');
|
||||||
|
}
|
||||||
window.location.reload();
|
window.location.reload();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -282,19 +282,24 @@ define([
|
|||||||
// Set checkbox event listeners
|
// Set checkbox event listeners
|
||||||
$(documentListElt.querySelectorAll('[type=checkbox]')).change(doActiveButtons);
|
$(documentListElt.querySelectorAll('[type=checkbox]')).change(doActiveButtons);
|
||||||
|
|
||||||
// Open root folder by default
|
|
||||||
$(documentListElt.querySelectorAll('.root-folder')).click();
|
|
||||||
}, 50);
|
}, 50);
|
||||||
|
|
||||||
documentManager.onFileCreated = refreshManager;
|
documentManager.onFileCreated = refreshManager;
|
||||||
documentManager.onFileDeleted = refreshManager;
|
documentManager.onFileDeleted = refreshManager;
|
||||||
documentManager.onTitleChanged = refreshManager;
|
|
||||||
documentManager.onSyncExportSuccess = refreshManager;
|
documentManager.onSyncExportSuccess = refreshManager;
|
||||||
documentManager.onSyncRemoved = refreshManager;
|
documentManager.onSyncRemoved = refreshManager;
|
||||||
documentManager.onNewPublishSuccess = refreshManager;
|
documentManager.onNewPublishSuccess = refreshManager;
|
||||||
documentManager.onPublishRemoved = refreshManager;
|
documentManager.onPublishRemoved = refreshManager;
|
||||||
documentManager.onFoldersChanged = refreshManager;
|
documentManager.onFoldersChanged = refreshManager;
|
||||||
|
|
||||||
|
documentManager.onTitleChanged = function(fileDesc) {
|
||||||
|
if(isVisible === false) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$(documentListElt).find('[data-file-index="' + fileDesc.fileIndex + '"] .name').html(fileDesc.composeTitle()).removeClass('hide');
|
||||||
|
$(documentListElt.querySelectorAll('.input-rename')).addClass('hide');
|
||||||
|
};
|
||||||
|
|
||||||
documentManager.onReady = function() {
|
documentManager.onReady = function() {
|
||||||
modalElt = document.querySelector('.modal-document-manager');
|
modalElt = document.querySelector('.modal-document-manager');
|
||||||
documentListElt = modalElt.querySelector('.list-group.document-list');
|
documentListElt = modalElt.querySelector('.list-group.document-list');
|
||||||
@ -307,8 +312,13 @@ define([
|
|||||||
$(modalElt).on('show.bs.modal', function() {
|
$(modalElt).on('show.bs.modal', function() {
|
||||||
isVisible = true;
|
isVisible = true;
|
||||||
refreshManager();
|
refreshManager();
|
||||||
|
// Open root folder
|
||||||
|
setTimeout(function() {
|
||||||
|
$(documentListElt.querySelectorAll('.root-folder')).click();
|
||||||
|
}, 250);
|
||||||
}).on('hide.bs.modal', function() {
|
}).on('hide.bs.modal', function() {
|
||||||
isVisible = false;
|
isVisible = false;
|
||||||
|
documentListElt.innerHTML = '';
|
||||||
});
|
});
|
||||||
|
|
||||||
// Create folder action
|
// Create folder action
|
||||||
@ -329,16 +339,18 @@ define([
|
|||||||
eventMgr.onFoldersChanged();
|
eventMgr.onFoldersChanged();
|
||||||
|
|
||||||
// Edit the name when folder has just been created
|
// Edit the name when folder has just been created
|
||||||
|
setTimeout(function() {
|
||||||
var renameButtonElt = $(modalElt.querySelector('[data-folder-index="' + folderIndex + '"] .button-rename')).click();
|
var renameButtonElt = $(modalElt.querySelector('[data-folder-index="' + folderIndex + '"] .button-rename')).click();
|
||||||
modalElt.scrollTop += renameButtonElt.offset().top - 50;
|
modalElt.scrollTop += renameButtonElt.offset().top - 50;
|
||||||
|
}, 60);
|
||||||
});
|
});
|
||||||
|
|
||||||
// Selection dropdown menu actions
|
// Selection dropdown menu actions
|
||||||
$(modalElt.querySelectorAll('.action-select-all')).click(function() {
|
$(modalElt.querySelectorAll('.action-select-all')).click(function() {
|
||||||
$(documentListElt.querySelectorAll('input[type="checkbox"]')).prop('checked', true);
|
$(documentListElt.querySelectorAll('input[type="checkbox"]')).prop('checked', true).change();
|
||||||
});
|
});
|
||||||
$(modalElt.querySelectorAll('.action-unselect-all')).click(function() {
|
$(modalElt.querySelectorAll('.action-unselect-all')).click(function() {
|
||||||
$(documentListElt.querySelectorAll('input[type="checkbox"]')).prop('checked', false);
|
$(documentListElt.querySelectorAll('input[type="checkbox"]')).prop('checked', false).change();
|
||||||
});
|
});
|
||||||
|
|
||||||
// Delete selection actions
|
// Delete selection actions
|
||||||
|
@ -19,7 +19,7 @@ define([
|
|||||||
}
|
}
|
||||||
|
|
||||||
var title = fileDesc.title;
|
var title = fileDesc.title;
|
||||||
document.title = "StackEdit — " + title;
|
document.title = "StackEdit – " + title;
|
||||||
$fileTitleNavbar.html(fileDesc.composeTitle());
|
$fileTitleNavbar.html(fileDesc.composeTitle());
|
||||||
$(".file-title").text(title);
|
$(".file-title").text(title);
|
||||||
$(".input-file-title").val(title);
|
$(".input-file-title").val(title);
|
||||||
|
@ -183,11 +183,12 @@ define([
|
|||||||
lastPreviewScrollTop = previewScrollTop;
|
lastPreviewScrollTop = previewScrollTop;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
$previewElt.stop(true).animate({
|
$previewElt.stop('scrollLinkFx', true).animate({
|
||||||
scrollTop: destScrollTop
|
scrollTop: destScrollTop
|
||||||
}, {
|
}, {
|
||||||
easing: 'easeOutSine',
|
easing: 'easeOutSine',
|
||||||
duration: 200,
|
duration: 200,
|
||||||
|
queue: 'scrollLinkFx',
|
||||||
step: function(now) {
|
step: function(now) {
|
||||||
isPreviewMoving = true;
|
isPreviewMoving = true;
|
||||||
lastPreviewScrollTop = previewScrollTop + now;
|
lastPreviewScrollTop = previewScrollTop + now;
|
||||||
@ -197,7 +198,7 @@ define([
|
|||||||
isPreviewMoving = false;
|
isPreviewMoving = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
});
|
}).dequeue('scrollLinkFx');
|
||||||
}
|
}
|
||||||
else if(isScrollPreview === true) {
|
else if(isScrollPreview === true) {
|
||||||
if(Math.abs(previewScrollTop - lastPreviewScrollTop) <= 9) {
|
if(Math.abs(previewScrollTop - lastPreviewScrollTop) <= 9) {
|
||||||
@ -227,11 +228,12 @@ define([
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(window.lightMode) {
|
if(window.lightMode) {
|
||||||
$textareaElt.stop(true).animate({
|
$textareaElt.stop('scrollLinkFx', true).animate({
|
||||||
scrollTop: destScrollTop
|
scrollTop: destScrollTop
|
||||||
}, {
|
}, {
|
||||||
easing: 'easeOutSine',
|
easing: 'easeOutSine',
|
||||||
duration: 200,
|
duration: 200,
|
||||||
|
queue: 'scrollLinkFx',
|
||||||
step: function(now) {
|
step: function(now) {
|
||||||
isEditorMoving = true;
|
isEditorMoving = true;
|
||||||
lastEditorScrollTop = editorScrollTop + now;
|
lastEditorScrollTop = editorScrollTop + now;
|
||||||
@ -241,14 +243,15 @@ define([
|
|||||||
isEditorMoving = false;
|
isEditorMoving = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
});
|
}).dequeue('scrollLinkFx');
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
scrollingHelper.stop(true).css('value', 0).animate({
|
scrollingHelper.stop('scrollLinkFx', true).css('value', 0).animate({
|
||||||
value: destScrollTop - editorScrollTop
|
value: destScrollTop - editorScrollTop
|
||||||
}, {
|
}, {
|
||||||
easing: 'easeOutSine',
|
easing: 'easeOutSine',
|
||||||
duration: 200,
|
duration: 200,
|
||||||
|
queue: 'scrollLinkFx',
|
||||||
step: function(now) {
|
step: function(now) {
|
||||||
isEditorMoving = true;
|
isEditorMoving = true;
|
||||||
lastEditorScrollTop = editorScrollTop + now;
|
lastEditorScrollTop = editorScrollTop + now;
|
||||||
@ -259,7 +262,7 @@ define([
|
|||||||
isEditorMoving = false;
|
isEditorMoving = false;
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
});
|
}).dequeue('scrollLinkFx');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, 100);
|
}, 100);
|
||||||
|
@ -33,7 +33,7 @@ define([
|
|||||||
});
|
});
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
tooltip.tooltip('hide').removeClass('info-tooltip');
|
tooltip.tooltip('hide').removeClass('info-tooltip');
|
||||||
}, 30000);
|
}, 15000);
|
||||||
},
|
},
|
||||||
template: [
|
template: [
|
||||||
'<div class="popover tour">',
|
'<div class="popover tour">',
|
||||||
|
@ -51,7 +51,9 @@ var MarkdownHighlightRules = function() {
|
|||||||
token: "markup.heading.multi.2",
|
token: "markup.heading.multi.2",
|
||||||
regex: "^\\-+(?=\\s*$)"
|
regex: "^\\-+(?=\\s*$)"
|
||||||
}, {
|
}, {
|
||||||
token : "constant.language.escape",
|
token : function(value) {
|
||||||
|
return "markup.heading." + value.length;
|
||||||
|
},
|
||||||
regex : /^#{1,6}(?=\s*[^ #]|\s+#.)/,
|
regex : /^#{1,6}(?=\s*[^ #]|\s+#.)/,
|
||||||
next : "header"
|
next : "header"
|
||||||
},
|
},
|
||||||
|
@ -38,15 +38,11 @@ define([
|
|||||||
'<head>\n',
|
'<head>\n',
|
||||||
'<meta charset="utf-8">\n',
|
'<meta charset="utf-8">\n',
|
||||||
'<title><%= documentTitle %></title>\n',
|
'<title><%= documentTitle %></title>\n',
|
||||||
'<link rel="stylesheet" href="',
|
'<link rel="stylesheet" href="file:///app/stackedit/public/res-min/themes/base.css" />\n',
|
||||||
constants.MAIN_URL,
|
|
||||||
'res-min/themes/base.css" />\n',
|
|
||||||
'<script type="text/x-mathjax-config">\n',
|
'<script type="text/x-mathjax-config">\n',
|
||||||
'MathJax.Hub.Config({ messageStyle: "none" });\n',
|
'MathJax.Hub.Config({ messageStyle: "none" });\n',
|
||||||
'</script>\n',
|
'</script>\n',
|
||||||
'<script type="text/javascript" src="',
|
'<script type="text/javascript" src="file:///app/stackedit/public/libs/MathJax/MathJax.js?config=TeX-AMS_HTML"></script>\n',
|
||||||
constants.MAIN_URL,
|
|
||||||
'libs/MathJax/MathJax.js?config=TeX-AMS_HTML"></script>\n',
|
|
||||||
'</head>\n',
|
'</head>\n',
|
||||||
'<body class="pdf"><%= documentHTML %></body>\n',
|
'<body class="pdf"><%= documentHTML %></body>\n',
|
||||||
'</html>'
|
'</html>'
|
||||||
|
@ -250,6 +250,16 @@ define([
|
|||||||
version = "v16";
|
version = "v16";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Upgrade from v16 to v17
|
||||||
|
if(version == "v16") {
|
||||||
|
if(_.has(localStorage, 'settings')) {
|
||||||
|
settings = JSON.parse(localStorage.settings);
|
||||||
|
settings.pdfTemplate && (settings.pdfTemplate = settings.pdfTemplate.replace(/https:\/\/stackedit.io/g, 'file:///app/stackedit/public'));
|
||||||
|
localStorage.settings = JSON.stringify(settings);
|
||||||
|
}
|
||||||
|
version = "v17";
|
||||||
|
}
|
||||||
|
|
||||||
localStorage.version = version;
|
localStorage.version = version;
|
||||||
return localStorage;
|
return localStorage;
|
||||||
});
|
});
|
@ -18,44 +18,44 @@
|
|||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
src: local('Open Sans Light'), local('OpenSans-Light'), url("../font/opensans-light-webfont.woff") format('woff');
|
src: local('Open Sans Light'), local('OpenSans-Light'), url("../font/OpenSans-Light-webfont.woff") format('woff');
|
||||||
}
|
}
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
src: local('Open Sans'), local('OpenSans'), url("../font/opensans-regular-webfont.woff") format('woff');
|
src: local('Open Sans'), local('OpenSans'), url("../font/OpenSans-Regular-webfont.woff") format('woff');
|
||||||
}
|
}
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
src: local('Open Sans Bold'), local('OpenSans-Bold'), url("../font/opensans-bold-webfont.woff") format('woff');
|
src: local('Open Sans Bold'), local('OpenSans-Bold'), url("../font/OpenSans-Bold-webfont.woff") format('woff');
|
||||||
}
|
}
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url("../font/opensans-lightitalic-webfont.woff") format('woff');
|
src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url("../font/OpenSans-LightItalic-webfont.woff") format('woff');
|
||||||
}
|
}
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url("../font/opensans-italic-webfont.woff") format('woff');
|
src: local('Open Sans Italic'), local('OpenSans-Italic'), url("../font/OpenSans-Italic-webfont.woff") format('woff');
|
||||||
}
|
}
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url("../font/opensans-bolditalic-webfont.woff") format('woff');
|
src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url("../font/OpenSans-BoldItalic-webfont.woff") format('woff');
|
||||||
}
|
}
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||||
@font-face {
|
@font-face {
|
||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
src: local('Open Sans Light'), local('OpenSans-Light'), url('../font/opensans-light-webfont.svg') format('svg');
|
src: local('Open Sans Light'), local('OpenSans-Light'), url('../font/OpenSans-Light-webfont.svg') format('svg');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||||
@ -63,7 +63,7 @@
|
|||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
src: local('Open Sans'), local('OpenSans'), url('../font/opensans-regular-webfont.svg') format('svg');
|
src: local('Open Sans'), local('OpenSans'), url('../font/OpenSans-Regular-webfont.svg') format('svg');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||||
@ -71,7 +71,7 @@
|
|||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
src: local('Open Sans Bold'), local('OpenSans-Bold'), url('../font/opensans-bold-webfont.svg') format('svg');
|
src: local('Open Sans Bold'), local('OpenSans-Bold'), url('../font/OpenSans-Bold-webfont.svg') format('svg');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||||
@ -79,7 +79,7 @@
|
|||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
font-weight: 300;
|
font-weight: 300;
|
||||||
src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url('../font/opensans-lightitalic-webfont.svg') format('svg');
|
src: local('Open Sans Light Italic'), local('OpenSansLight-Italic'), url('../font/OpenSans-LightItalic-webfont.svg') format('svg');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||||
@ -87,7 +87,7 @@
|
|||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
src: local('Open Sans Italic'), local('OpenSans-Italic'), url('../font/opensans-italic-webfont.svg') format('svg');
|
src: local('Open Sans Italic'), local('OpenSans-Italic'), url('../font/OpenSans-Italic-webfont.svg') format('svg');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
@media screen and (-webkit-min-device-pixel-ratio:0) {
|
||||||
@ -95,7 +95,7 @@
|
|||||||
font-family: 'Open Sans';
|
font-family: 'Open Sans';
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('../font/opensans-bolditalic-webfont.svg') format('svg');
|
src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('../font/OpenSans-BoldItalic-webfont.svg') format('svg');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user