Manual merge, update the CSS in loading.js and document that loading.less does nothing.
This commit is contained in:
@@ -25,7 +25,7 @@ define([
|
||||
|
||||
var cacheGet = function (k, cb) {
|
||||
if (window.cryptpadCache) { return void window.cryptpadCache.get(k, cb); }
|
||||
setTimeout(function () { cb(localStorage['LESS_CACHE|' + key + '|' + k]); })
|
||||
setTimeout(function () { cb(localStorage['LESS_CACHE|' + key + '|' + k]); });
|
||||
};
|
||||
var cachePut = function (k, v, cb) {
|
||||
if (window.cryptpadCache) { return void window.cryptpadCache.put(k, v, cb); }
|
||||
|
||||
@@ -215,9 +215,10 @@ define([
|
||||
force = opt.force || false;
|
||||
} else if (typeof(opt) === 'boolean') {
|
||||
force = opt;
|
||||
}
|
||||
if (typeof(opt) !== 'object') {
|
||||
opt = {};
|
||||
}
|
||||
|
||||
cb = cb || function () {};
|
||||
|
||||
var message;
|
||||
@@ -278,22 +279,25 @@ define([
|
||||
]);
|
||||
|
||||
var listener;
|
||||
var close = Util.once(function () {
|
||||
$(frame).fadeOut(150, function () { $(this).remove(); });
|
||||
stopListening(listener);
|
||||
var close = Util.once(function (result, ev) {
|
||||
var $frame = $(frame).fadeOut(150, function () {
|
||||
stopListening(listener);
|
||||
$frame.remove();
|
||||
cb(result, ev);
|
||||
});
|
||||
});
|
||||
|
||||
var $ok = $(ok).click(function (ev) { cb(input.value, ev); });
|
||||
var $cancel = $(cancel).click(function (ev) { cb(null, ev); });
|
||||
var $ok = $(ok).click(function (ev) { close(input.value, ev); });
|
||||
var $cancel = $(cancel).click(function (ev) { close(null, ev); });
|
||||
listener = listenForKeys(function () { // yes
|
||||
close(); $ok.click();
|
||||
$ok.click();
|
||||
}, function () { // no
|
||||
close(); $cancel.click();
|
||||
$cancel.click();
|
||||
});
|
||||
|
||||
document.body.appendChild(frame);
|
||||
setTimeout(function () {
|
||||
input.select().focus();
|
||||
$(input).select().focus();
|
||||
UI.notify();
|
||||
});
|
||||
};
|
||||
@@ -321,13 +325,14 @@ define([
|
||||
]);
|
||||
|
||||
var listener;
|
||||
var close = Util.once(function () {
|
||||
var close = Util.once(function (bool, ev) {
|
||||
$(frame).fadeOut(150, function () { $(this).remove(); });
|
||||
stopListening(listener);
|
||||
cb(bool, ev);
|
||||
});
|
||||
|
||||
var $ok = $(ok).click(function (ev) { close(); cb(true, ev); });
|
||||
var $cancel = $(cancel).click(function (ev) { close(); cb(false, ev); });
|
||||
var $ok = $(ok).click(function (ev) { close(true, ev); });
|
||||
var $cancel = $(cancel).click(function (ev) { close(false, ev); });
|
||||
|
||||
if (opt.cancelClass) { $cancel.addClass(opt.cancelClass); }
|
||||
if (opt.okClass) { $ok.addClass(opt.okClass); }
|
||||
@@ -381,7 +386,7 @@ define([
|
||||
};
|
||||
};
|
||||
|
||||
var LOADING = 'loading';
|
||||
var LOADING = 'cp-loading';
|
||||
|
||||
var getRandomTip = function () {
|
||||
if (!Messages.tips || !Object.keys(Messages.tips).length) { return ''; }
|
||||
@@ -400,21 +405,21 @@ define([
|
||||
if (loadingText) {
|
||||
$('#' + LOADING).find('p').text(loadingText);
|
||||
}
|
||||
$container = $loading.find('.loadingContainer');
|
||||
$container = $loading.find('.cp-loading-container');
|
||||
} else {
|
||||
$loading = $(Pages.loadingScreen());
|
||||
$container = $loading.find('.loadingContainer');
|
||||
$container = $loading.find('.cp-loading-container');
|
||||
if (hideLogo) {
|
||||
$loading.find('img').hide();
|
||||
} else {
|
||||
$loading.find('img').show();
|
||||
}
|
||||
var $spinner = $loading.find('.spinnerContainer');
|
||||
var $spinner = $loading.find('.cp-loading-spinner-container');
|
||||
$spinner.show();
|
||||
$('body').append($loading);
|
||||
}
|
||||
if (Messages.tips && !hideTips) {
|
||||
var $loadingTip = $('<div>', {'id': 'loadingTip'});
|
||||
var $loadingTip = $('<div>', {'id': 'cp-loading-tip'});
|
||||
$('<span>', {'class': 'tips'}).text(getRandomTip()).appendTo($loadingTip);
|
||||
$loadingTip.css({
|
||||
'bottom': $('body').height()/2 - $container.height()/2 + 20 + 'px'
|
||||
@@ -424,7 +429,7 @@ define([
|
||||
};
|
||||
UI.removeLoadingScreen = function (cb) {
|
||||
$('#' + LOADING).fadeOut(750, cb);
|
||||
var $tip = $('#loadingTip').css('top', '')
|
||||
var $tip = $('#cp-loading-tip').css('top', '')
|
||||
// loading.less sets transition-delay: $wait-time
|
||||
// and transition: opacity $fadeout-time
|
||||
.css({
|
||||
@@ -438,7 +443,7 @@ define([
|
||||
};
|
||||
UI.errorLoadingScreen = function (error, transparent) {
|
||||
if (!$('#' + LOADING).is(':visible')) { UI.addLoadingScreen({hideTips: true}); }
|
||||
$('.spinnerContainer').hide();
|
||||
$('.cp-loading-spinner-container').hide();
|
||||
if (transparent) { $('#' + LOADING).css('opacity', 0.8); }
|
||||
$('#' + LOADING).find('p').html(error || Messages.error);
|
||||
};
|
||||
|
||||
@@ -1,76 +1,76 @@
|
||||
define([], function () {
|
||||
var loadingStyle = (function(){/*
|
||||
#loading {
|
||||
position: fixed;
|
||||
z-index: 9999999;
|
||||
top: 0px;
|
||||
bottom: 0px;
|
||||
left: 0px;
|
||||
right: 0px;
|
||||
background: #222;
|
||||
color: #fafafa;
|
||||
text-align: center;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
#loading .loadingContainer {
|
||||
margin-top: 50vh;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
#loading .cryptofist {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
height: 300px;
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
@media screen and (max-height: 450px) {
|
||||
#loading .cryptofist {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#loading .spinnerContainer {
|
||||
position: relative;
|
||||
height: 100px;
|
||||
}
|
||||
#loading .spinnerContainer > div {
|
||||
height: 100px;
|
||||
}
|
||||
#loadingTip {
|
||||
position: fixed;
|
||||
z-index: 99999;
|
||||
top: 80%;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
transition: opacity 750ms;
|
||||
transition-delay: 3000ms;
|
||||
}
|
||||
@media screen and (max-height: 600px) {
|
||||
#loadingTip {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#loadingTip span {
|
||||
background-color: #222;
|
||||
color: #fafafa;
|
||||
text-align: center;
|
||||
font-size: 1.5em;
|
||||
opacity: 0.7;
|
||||
font-family: 'Open Sans', 'Helvetica Neue', sans-serif;
|
||||
padding: 15px;
|
||||
max-width: 60%;
|
||||
display: inline-block;
|
||||
}*/
|
||||
}).toString().slice(14, -3);
|
||||
#cp-loading {
|
||||
position: fixed;
|
||||
z-index: 10000000;
|
||||
top: 0px;
|
||||
bottom: 0px;
|
||||
left: 0px;
|
||||
right: 0px;
|
||||
background: #222;
|
||||
color: #fafafa;
|
||||
text-align: center;
|
||||
font-size: 1.5em;
|
||||
}
|
||||
#cp-loading .cp-loading-container {
|
||||
margin-top: 50vh;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
#cp-loading .cp-loading-cryptofist {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
height: 300px;
|
||||
margin-bottom: 2em;
|
||||
}
|
||||
@media screen and (max-height: 450px) {
|
||||
#cp-loading .cp-loading-cryptofist {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#cp-loading .cp-loading-spinner-container {
|
||||
position: relative;
|
||||
height: 100px;
|
||||
}
|
||||
#cp-loading .cp-loading-spinner-container > div {
|
||||
height: 100px;
|
||||
}
|
||||
#cp-loading-tip {
|
||||
position: fixed;
|
||||
z-index: 100000;
|
||||
top: 80%;
|
||||
left: 0;
|
||||
right: 0;
|
||||
text-align: center;
|
||||
transition: opacity 750ms;
|
||||
transition-delay: 3000ms;
|
||||
}
|
||||
@media screen and (max-height: 600px) {
|
||||
#cp-loading-tip {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
#cp-loading-tip span {
|
||||
background: #222;
|
||||
color: #fafafa;
|
||||
text-align: center;
|
||||
font-size: 1.5em;
|
||||
opacity: 0.7;
|
||||
font-family: 'Open Sans', 'Helvetica Neue', sans-serif;
|
||||
padding: 15px;
|
||||
max-width: 60%;
|
||||
display: inline-block;
|
||||
}
|
||||
*/}).toString().slice(14, -3);
|
||||
var urlArgs = window.location.href.replace(/^.*\?([^\?]*)$/, function (all, x) { return x; });
|
||||
var elem = document.createElement('div');
|
||||
elem.setAttribute('id', 'loading');
|
||||
elem.setAttribute('id', 'cp-loading');
|
||||
elem.innerHTML = [
|
||||
'<style>',
|
||||
loadingStyle,
|
||||
'</style>',
|
||||
'<div class="loadingContainer">',
|
||||
'<img class="cryptofist" src="/customize/cryptpad-new-logo-colors-logoonly.png?' + urlArgs + '">',
|
||||
'<div class="spinnerContainer">',
|
||||
'<div class="cp-loading-container">',
|
||||
'<img class="cp-loading-cryptofist" src="/customize/cryptpad-new-logo-colors-logoonly.png?' + urlArgs + '">',
|
||||
'<div class="cp-loading-spinner-container">',
|
||||
'<span class="fa fa-circle-o-notch fa-spin fa-4x fa-fw"></span>',
|
||||
'</div>',
|
||||
'<p id="cp-loading-message"></p>',
|
||||
|
||||
@@ -49,6 +49,7 @@ define([
|
||||
readOnly: true
|
||||
});
|
||||
editor.setValue(Messages.codeInitialState);
|
||||
editor.focus();
|
||||
|
||||
var setMode = exp.setMode = function (mode, cb) {
|
||||
exp.highlightMode = mode;
|
||||
|
||||
@@ -200,20 +200,7 @@ define([
|
||||
return button;
|
||||
};
|
||||
|
||||
|
||||
UI.getFileSize = function (Common, href, cb) {
|
||||
var channelId = Cryptpad.hrefToHexChannelId(href);
|
||||
Common.sendAnonRpcMsg("GET_FILE_SIZE", channelId, function (data) {
|
||||
if (!data) { return void cb("No response"); }
|
||||
if (data.error) { return void cb(data.error); }
|
||||
if (data.response && data.response.length && typeof(data.response[0]) === 'number') {
|
||||
return void cb(void 0, data.response[0]);
|
||||
} else {
|
||||
cb('INVALID_RESPONSE');
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
// Avatars
|
||||
UI.displayAvatar = function (Common, $container, href, name, cb) {
|
||||
var MutationObserver = window.MutationObserver;
|
||||
var displayDefault = function () {
|
||||
@@ -229,7 +216,7 @@ define([
|
||||
var cryptKey = secret.keys && secret.keys.fileKeyStr;
|
||||
var hexFileName = Cryptpad.base64ToHex(secret.channel);
|
||||
var src = Cryptpad.getBlobPathFromHex(hexFileName);
|
||||
UI.getFileSize(Common, href, function (e, data) {
|
||||
Common.getFileSize(href, function (e, data) {
|
||||
if (e) {
|
||||
displayDefault();
|
||||
return void console.error(e);
|
||||
@@ -467,9 +454,13 @@ define([
|
||||
var metadataMgr = common.getMetadataMgr();
|
||||
var type = metadataMgr.getMetadataLazy().type;
|
||||
var sframeChan = common.getSframeChannel();
|
||||
var focus;
|
||||
|
||||
var onConfirm = function (yes) {
|
||||
if (!yes) { return; }
|
||||
if (!yes) {
|
||||
if (focus) { focus.focus(); }
|
||||
return;
|
||||
}
|
||||
var first = true; // We can only pick a template once (for a new document)
|
||||
var fileDialogCfg = {
|
||||
onSelect: function (data) {
|
||||
@@ -480,6 +471,7 @@ define([
|
||||
Cryptpad.removeLoadingScreen();
|
||||
common.feedback('TEMPLATE_USED');
|
||||
});
|
||||
if (focus) { focus.focus(); }
|
||||
return;
|
||||
}
|
||||
}
|
||||
@@ -494,6 +486,7 @@ define([
|
||||
|
||||
sframeChan.query("Q_TEMPLATE_EXIST", type, function (err, data) {
|
||||
if (data) {
|
||||
focus = document.activeElement;
|
||||
Cryptpad.confirm(Messages.useTemplate, onConfirm, {
|
||||
ok: Messages.useTemplateOK,
|
||||
cancel: Messages.useTemplateCancel,
|
||||
|
||||
@@ -77,7 +77,6 @@ define([
|
||||
funcs.openTemplatePicker = callWithCommon(UI.openTemplatePicker);
|
||||
funcs.displayAvatar = callWithCommon(UI.displayAvatar);
|
||||
funcs.createButton = callWithCommon(UI.createButton);
|
||||
funcs.getFileSize = callWithCommon(UI.getFileSize);
|
||||
|
||||
// History
|
||||
funcs.getHistory = callWithCommon(History.create);
|
||||
@@ -106,6 +105,19 @@ define([
|
||||
}
|
||||
return;
|
||||
};
|
||||
funcs.getFileSize = function (href, cb) {
|
||||
var channelId = Cryptpad.hrefToHexChannelId(href);
|
||||
funcs.sendAnonRpcMsg("GET_FILE_SIZE", channelId, function (data) {
|
||||
if (!data) { return void cb("No response"); }
|
||||
if (data.error) { return void cb(data.error); }
|
||||
if (data.response && data.response.length && typeof(data.response[0]) === 'number') {
|
||||
return void cb(void 0, data.response[0]);
|
||||
} else {
|
||||
cb('INVALID_RESPONSE');
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
// CodeMirror
|
||||
funcs.initCodeMirrorApp = callWithCommon(CodeMirror.create);
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -837,7 +837,7 @@ define([
|
||||
};
|
||||
|
||||
// Events
|
||||
var initClickEvents = function (toolbar, config) {
|
||||
var initClickEvents = function (toolbar) {
|
||||
var removeDropdowns = function () {
|
||||
window.setTimeout(function () {
|
||||
toolbar.$toolbar.find('.cp-dropdown-content').hide();
|
||||
|
||||
Reference in New Issue
Block a user