Merge branch 'staging' into communities-comments

pull/1/head
yflory 2020-04-22 16:23:56 +02:00
commit 7f2b44d6a5
8 changed files with 17 additions and 11 deletions

View File

@ -20,7 +20,7 @@ As usual, updating from the previous release can be accomplished by:
## Features
* As mentioned above, we've built upon a very helpful PR to introduce author colors in our code editor. It's still experimental, but you can test it out by enabling author colors in a code pad via the pad's properties modal.
* As mentioned above, we've built upon a very helpful [PR](https://github.com/xwiki-labs/cryptpad/pull/522) from members of the Piratenpartei (German Pirate Party) to introduce author colors in our code editor. It's still experimental, but registered users can enable it on pads that they own via the "Author colors" entry in the `...` menu found beneath their user admin menu.
* Serverside performance optimizations
* Automatically expiring pads work by creating a task to be run at the target date. This process involves a little bit of hashing, so we've changed it to be run in the worker.
* The act of deleting a file from the server actually moves it to an archive which is not publicly accessible. These archived files are regularly cleaned up if you run `scripts/evict-inactive.js`. Unfortunately, moving files is more expensive than deletion, so we've noticed spikes in CPU when users delete many files at once (like when emptying the trash from their drive). To avoid such spikes while the server is already under load we've implemented per-user queues for deletion.

View File

@ -1,3 +1,5 @@
@import (reference) "./tools.less";
.markdown_main() {
blockquote {
background: #e5e5e5;
@ -95,6 +97,7 @@
svg {
max-width: 100%;
cursor: pointer;
.tools_unselectable();
}
}
}

View File

@ -203,6 +203,7 @@ Workers.initialize = function (Env, config, _cb) {
Log.info("INSUFFICIENT_MAX_WORKERS", max);
limit = 1;
}
limit = max;
} else {
Log.error("INVALID_MAX_WORKERS", '[' + max + ']');
}

View File

@ -452,6 +452,7 @@ define([
markers.ready();
common.getPadMetadata(null, function (md) {
if (md && md.error) { return; }
if (!Array.isArray(md.owners)) { return void markers.setState(false); }
if (!common.isOwned(md.owners)) { return; }
// We're the owner: add the button and enable the colors if needed
mkColorByAuthor(framework, markers);

View File

@ -689,7 +689,7 @@ define([
Markers.create = function (config) {
var Env = config;
Env.authormarks = Util.clone(DEFAULT);
Env.authormarks = {};
Env.enabled = false;
Env.myAuthorId = 0;

View File

@ -447,7 +447,9 @@ define([
idx = 0;
}
common.getMediaTagPreview(mts, idx);
setTimeout(function () {
common.getMediaTagPreview(mts, idx);
});
};
};
@ -465,10 +467,10 @@ define([
contextMenu.show(e);
});
if ($mt.children().length) {
$mt.off('dblclick preview');
$mt.off('click dblclick preview');
$mt.on('preview', onPreview($mt));
if ($mt.find('img').length) {
$mt.on('dblclick', function () {
$mt.on('click dblclick', function () {
$mt.trigger('preview');
});
}
@ -485,10 +487,10 @@ define([
observer.disconnect();
}
});
$mt.off('dblclick preview');
$mt.off('click dblclick preview');
$mt.on('preview', onPreview($mt));
if ($mt.find('img').length) {
$mt.on('dblclick', function () {
$mt.on('click dblclick', function () {
$mt.trigger('preview');
});
}
@ -518,9 +520,9 @@ define([
$(contextMenu.menu).find('li:not(.cp-svg)').hide();
contextMenu.show(e);
});
$el.off('dblclick preview');
$el.off('dblclick click preview');
$el.on('preview', onPreview($el));
$el.on('dblclick', function () {
$el.on('dblclick click', function () {
$el.trigger('preview');
});

View File

@ -256,11 +256,9 @@ define([
$inner.append(cfg.svg);
if (!cfg.render) {
$spinner.hide();
console.error('here');
locked = false;
return;
}
console.error('there');
setTimeout(cfg.render);
tag = cfg.svg;
} else {

View File

@ -1003,6 +1003,7 @@ define([
if (typeof(SecureModal.cb) !== "function") { return; }
SecureModal.cb(data);
};
config.onFileUpload = onFileUpload;
config.onClose = function () {
SecureModal.$iframe.hide();
};