[Libreoffice-commits] online.git: Branch 'distro/collabora/co-4-2-0' - 6 commits - loleaflet/src loolkitconfig.xcu
Andras Timar (via logerrit)
logerrit at kemper.freedesktop.org
Thu Dec 12 08:32:21 UTC 2019
loleaflet/src/control/Control.ContextMenu.js | 2 -
loleaflet/src/control/Control.LokDialog.js | 4 ++-
loleaflet/src/control/Control.MobileWizard.js | 8 ++++---
loleaflet/src/control/Control.Toolbar.js | 3 --
loleaflet/src/layer/tile/CalcTileLayer.js | 5 ----
loleaflet/src/layer/tile/GridLayer.js | 29 +++++++++++++++-----------
loleaflet/src/layer/tile/ImpressTileLayer.js | 5 ----
loleaflet/src/layer/tile/TileLayer.js | 12 +++++++---
loleaflet/src/layer/tile/WriterTileLayer.js | 1
loleaflet/src/map/Map.js | 13 ++++-------
loolkitconfig.xcu | 7 ++++--
11 files changed, 45 insertions(+), 44 deletions(-)
New commits:
commit 5a2ec4ce5c329a15ec8989649b38fda1579a4f38
Author: Andras Timar <andras.timar at collabora.com>
AuthorDate: Thu Dec 12 09:30:38 2019 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Dec 12 09:30:38 2019 +0100
[cp] Use the collabora_svg theme and large icons for the sidebar
Change-Id: I8b58c5e3ebe737abfac1f2c124e00bc717c862df
diff --git a/loolkitconfig.xcu b/loolkitconfig.xcu
index 30feb7f17..afad642f3 100644
--- a/loolkitconfig.xcu
+++ b/loolkitconfig.xcu
@@ -25,7 +25,10 @@
<!-- Enable thumbnail generation by default (disabling saves CPU time) -->
<item oor:path="/org.openoffice.Office.Common/Save/Document"><prop oor:name="GenerateThumbnail" oor:op="fuse"><value>true</value></prop></item>
-<!-- Use the colibre_svg theme for the sidebar -->
-<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="SymbolStyle" oor:op="fuse"><value>colibre_svg</value></prop></item>
+<!-- Use the collabora_svg theme for the sidebar -->
+<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="SymbolStyle" oor:op="fuse"><value>collabora_svg</value></prop></item>
+
+<!-- Use the large icons in the sidebar -->
+<item oor:path="/org.openoffice.Office.Common/Misc"><prop oor:name="SidebarIconSize" oor:op="fuse"><value>2</value></prop></item>
</oor:items>
commit 24812b90dbdeccb34a46a204c94b38f2a5106d8c
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
AuthorDate: Wed Dec 11 13:12:03 2019 -0500
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Dec 11 21:20:23 2019 +0100
leaflet: sidebar is now always active for mobile but visible on demand
Because we can't control the sidebar when in Chart edit
mode, we must have it active before we start Chart editing.
Besides that, on mobile we show/hide the sidebar quite
frequently, and there is no point in activating/deactivating
the sidebar on every tap.
So we have the sidebar enabled in the background at all times.
We then track whether it's visible or not (window.mobileWizard)
and show/hide it. Furthermore, we now handle the sidebar
close notification from Core, which we don't expect, really,
now that we don't close it. However, we need to have a way
to re-activate the sidebar when it is closed. Something
we don't do right now, and we need to tack the Core
sidebar state as we can only toggle the sidebar.
Change-Id: Id7774b84cd0604055c708eb0912e17988f5823d2
Reviewed-on: https://gerrit.libreoffice.org/84974
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice at gmail.com>
Reviewed-by: Ashod Nakashian <ashnakash at gmail.com>
diff --git a/loleaflet/src/control/Control.MobileWizard.js b/loleaflet/src/control/Control.MobileWizard.js
index 0a17ac6bf..4715f0694 100644
--- a/loleaflet/src/control/Control.MobileWizard.js
+++ b/loleaflet/src/control/Control.MobileWizard.js
@@ -26,6 +26,7 @@ L.Control.MobileWizard = L.Control.extend({
this.map = map;
map.on('mobilewizard', this._onMobileWizard, this);
map.on('closemobilewizard', this._hideWizard, this);
+ map.on('showmobilewizard', this._showWizard, this);
this._setupBackButton();
},
@@ -72,7 +73,6 @@ L.Control.MobileWizard = L.Control.extend({
var toolbar = w2ui['actionbar'];
if (toolbar && toolbar.get('mobile_wizard').checked)
toolbar.uncheck('mobile_wizard');
- this.map.sendUnoCommand('.uno:Sidebar');
window.mobileWizard = false;
}
@@ -242,8 +242,10 @@ L.Control.MobileWizard = L.Control.extend({
this._reset();
- this._showWizard();
- this._hideKeyboard();
+ if (window.mobileWizard) {
+ this._showWizard();
+ this._hideKeyboard();
+ }
// We can change the sidebar as we want here
if (data.id === '') { // sidebar indicator
diff --git a/loleaflet/src/control/Control.Toolbar.js b/loleaflet/src/control/Control.Toolbar.js
index 1537062ce..dc6365822 100644
--- a/loleaflet/src/control/Control.Toolbar.js
+++ b/loleaflet/src/control/Control.Toolbar.js
@@ -339,7 +339,6 @@ function onClick(e, id, item, subItem) {
else if (id === 'mobile_wizard') {
if (window.mobileWizard) {
window.mobileWizard = false;
- map.sendUnoCommand('.uno:Sidebar');
map.fire('closemobilewizard');
toolbar.uncheck(id);
}
@@ -347,7 +346,7 @@ function onClick(e, id, item, subItem) {
if (window.insertionMobileWizard)
this.onClick(null, 'insertion_mobile_wizard');
window.mobileWizard = true;
- map.sendUnoCommand('.uno:Sidebar');
+ map.fire('showmobilewizard');
toolbar.check(id);
}
}
diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js
index e7faca385..d6e406884 100644
--- a/loleaflet/src/layer/tile/TileLayer.js
+++ b/loleaflet/src/layer/tile/TileLayer.js
@@ -875,14 +875,18 @@ L.TileLayer = L.GridLayer.extend({
this._map.fire('mobilewizard', data);
},
- _closeMobileWizard: function() {
- this._map.fire('closemobilewizard');
+ _closeMobileWizard: function(data) {
+ this._map.fire('closemobilewizard', data);
},
_onJSDialogMsg: function (textMsg) {
- if (window.mode.isMobile() && window.mobileWizard === true) {
+ if (window.mode.isMobile()) {
var msgData = JSON.parse(textMsg.substring('jsdialog:'.length + 1));
- this._openMobileWizard(msgData);
+ if (msgData.enabled) {
+ this._openMobileWizard(msgData);
+ } else {
+ this._closeMobileWizard(msgData);
+ }
}
},
diff --git a/loleaflet/src/map/Map.js b/loleaflet/src/map/Map.js
index a199716c9..af149f236 100644
--- a/loleaflet/src/map/Map.js
+++ b/loleaflet/src/map/Map.js
@@ -285,19 +285,16 @@ L.Map = L.Evented.extend({
// Let the first page finish loading then load the sidebar.
var map = this;
setTimeout(function () {
- // This triggers all sidebar decks, so they would
- // be loaded and show rather quickly on first use.
- // Also, triggers sidebar window creation in the client.
+ // This triggers all sidebar decks, so they would
+ // be loaded and show rather quickly on first use.
+ // Also, triggers sidebar window creation in the client.
map._socket.sendMessage('uno .uno:Sidebar');
// HACK: The initial state of sidebar is that the core
// thinks it is shown, so the command has to be triggered
// once again for it to be visible on the desktop
- // (because the first .uno:Sidebar has actually hidden
- // that)
- if (!window.mode.isMobile() && !window.mode.isTablet() && !window.ThisIsAMobileApp) {
- map._socket.sendMessage('uno .uno:Sidebar');
- }
+ // (because the first .uno:Sidebar has actually hid it)
+ map._socket.sendMessage('uno .uno:Sidebar');
}, 200);
}
commit eef0d535b7ed50c89d0b60ce69f092ecf745a816
Author: Ashod Nakashian <ashod.nakashian at collabora.co.uk>
AuthorDate: Mon Dec 9 21:06:43 2019 -0500
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Dec 11 21:19:40 2019 +0100
leaflet: resize the document-content properly when toggling the sidebar
Change-Id: Ia0066effc2b73c2b6312e015bd67d0c7d08f5e61
Reviewed-on: https://gerrit.libreoffice.org/84795
Reviewed-by: Ashod Nakashian <ashnakash at gmail.com>
Tested-by: Ashod Nakashian <ashnakash at gmail.com>
diff --git a/loleaflet/src/control/Control.LokDialog.js b/loleaflet/src/control/Control.LokDialog.js
index 18efb9de4..997fb9aac 100644
--- a/loleaflet/src/control/Control.LokDialog.js
+++ b/loleaflet/src/control/Control.LokDialog.js
@@ -870,7 +870,8 @@ L.Control.LokDialog = L.Control.extend({
},
_onSidebarClose: function(dialogId) {
- this._resizeSidebar(dialogId, 0);
+ var strId = this._toStrId(dialogId);
+ this._resizeSidebar(strId, 0);
delete this._dialogs[dialogId];
if (this._currentDeck) {
$('#' + this._currentDeck.strId).remove();
@@ -1059,6 +1060,7 @@ L.Control.LokDialog = L.Control.extend({
this._map.options.documentContainer.style.right = wrapper.offsetWidth + 'px';
else
this._map.options.documentContainer.style.right = (width - 15).toString() + 'px';
+
var spreadsheetRowColumnFrame = L.DomUtil.get('spreadsheet-row-column-frame');
if (spreadsheetRowColumnFrame)
spreadsheetRowColumnFrame.style.right = width.toString() + 'px';
commit e40eb1febe8f608a8dbbb83a658caa6c92eb0742
Author: mert <mert.tumer at collabora.com>
AuthorDate: Mon Dec 9 16:33:33 2019 +0300
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Dec 11 21:19:35 2019 +0100
Fix shape context menu brings dialogs on mobile
Change-Id: I0101242ebd2bf582093545e3f3abf88b01a043af
Reviewed-on: https://gerrit.libreoffice.org/84746
Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
Tested-by: Michael Meeks <michael.meeks at collabora.com>
diff --git a/loleaflet/src/control/Control.ContextMenu.js b/loleaflet/src/control/Control.ContextMenu.js
index 6109a7171..137300e13 100644
--- a/loleaflet/src/control/Control.ContextMenu.js
+++ b/loleaflet/src/control/Control.ContextMenu.js
@@ -60,7 +60,7 @@ L.Control.ContextMenu = L.Control.extend({
// This black list contains those menu items which should be disabled on mobile even if they
// are allowed in general. We need to have only those items here which are also part
// of the whitelist, otherwise the menu items are not visible anyway.
- mobileBlackList: ['SpellingAndGrammarDialog', 'FontDialog', 'FontDialogForParagraph']
+ mobileBlackList: ['SpellingAndGrammarDialog', 'FontDialog', 'FontDialogForParagraph', 'TransformDialog', 'FormatLine', 'FormatArea']
},
commit 60074bbc49dd32df967ed5d1a0cc4d722b4f671d
Author: Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Mon Dec 9 16:37:23 2019 +0000
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Dec 11 21:19:30 2019 +0100
prefetch: disable interval timer when we've pre-fetched everything.
Change-Id: I9d3b3819b3d9a960aa31f729686315e9e5d6d8e1
diff --git a/loleaflet/src/layer/tile/GridLayer.js b/loleaflet/src/layer/tile/GridLayer.js
index d9ff748a3..4db50a473 100644
--- a/loleaflet/src/layer/tile/GridLayer.js
+++ b/loleaflet/src/layer/tile/GridLayer.js
@@ -1278,6 +1278,9 @@ L.GridLayer = L.Layer.extend({
var fragment = document.createDocumentFragment();
this._addTiles(finalQueue, fragment);
this._level.el.appendChild(fragment);
+ } else {
+ clearInterval(this._tilesPreFetcher);
+ this._tilesPreFetcher = undefined;
}
},
@@ -1285,8 +1288,10 @@ L.GridLayer = L.Layer.extend({
if (!this._map) {
return;
}
- clearInterval(this._tilesPreFetcher);
- clearTimeout(this._preFetchIdle);
+ if (this._tilesPreFetcher)
+ clearInterval(this._tilesPreFetcher);
+ if (this._preFetchIdle)
+ clearTimeout(this._preFetchIdle);
if (resetBorder) {
this._preFetchBorder = null;
}
@@ -1295,6 +1300,7 @@ L.GridLayer = L.Layer.extend({
this._preFetchPart = this._selectedPart;
this._preFetchIdle = setTimeout(L.bind(function () {
this._tilesPreFetcher = setInterval(L.bind(this._preFetchTiles, this), interval);
+ this._prefetchIdle = undefined;
}, this), idleTime);
}
});
commit c7adfb705a2a46d49157dd1779f59edb876da908
Author: Michael Meeks <michael.meeks at collabora.com>
AuthorDate: Mon Dec 9 16:14:26 2019 +0000
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Wed Dec 11 21:19:26 2019 +0100
prefetch: cleanup, and avoid constant growth of pre-loading area.
We were inadvertently mutating and growing our copy of the bounds
to fetch here, causing a chunk of un-necessary rendering load,
particularly for spreadsheets.
Change-Id: Ia01565c043d1cb0172cabbec16d941dd8b66dd05
diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js
index abbcea8b3..511a5253e 100644
--- a/loleaflet/src/layer/tile/CalcTileLayer.js
+++ b/loleaflet/src/layer/tile/CalcTileLayer.js
@@ -528,7 +528,6 @@ L.CalcTileLayer = L.TileLayer.extend({
}
else {
// tile outside of the visible area, just remove it
- this._preFetchBorder = null;
this._removeTile(key);
}
}
@@ -646,10 +645,6 @@ L.CalcTileLayer = L.TileLayer.extend({
});
this._resetPreFetching(true);
this._update();
- if (this._preFetchPart !== this._selectedPart) {
- this._preFetchPart = this._selectedPart;
- this._preFetchBorder = null;
- }
}
},
diff --git a/loleaflet/src/layer/tile/GridLayer.js b/loleaflet/src/layer/tile/GridLayer.js
index 7623f7cd8..d9ff748a3 100644
--- a/loleaflet/src/layer/tile/GridLayer.js
+++ b/loleaflet/src/layer/tile/GridLayer.js
@@ -1185,6 +1185,7 @@ L.GridLayer = L.Layer.extend({
var zoom = this._map.getZoom();
var tilesToFetch = 10;
var maxBorderWidth = 5;
+ var tileBorderSrc;
if (this._map._permission === 'edit') {
tilesToFetch = 5;
@@ -1192,19 +1193,17 @@ L.GridLayer = L.Layer.extend({
}
if (!this._preFetchBorder) {
- if (this._selectedPart !== this._preFetchPart) {
- // all tiles from the new part have to be pre-fetched
- var tileBorder = this._preFetchBorder = new L.Bounds(new L.Point(0, 0), new L.Point(0, 0));
- }
- else {
- var pixelBounds = this._map.getPixelBounds(center, zoom);
- tileBorder = this._pxBoundsToTileRange(pixelBounds);
- this._preFetchBorder = tileBorder;
- }
+ var pixelBounds = this._map.getPixelBounds(center, zoom);
+ tileBorderSrc = this._pxBoundsToTileRange(pixelBounds);
+ this._preFetchBorder = tileBorderSrc;
}
else {
- tileBorder = this._preFetchBorder;
+ tileBorderSrc = this._preFetchBorder;
}
+
+ // We mutate this - so need a temporary copy
+ var tileBorder = new L.Bounds(tileBorderSrc.min, tileBorderSrc.max);
+
var queue = [],
finalQueue = [],
visitedTiles = {},
diff --git a/loleaflet/src/layer/tile/ImpressTileLayer.js b/loleaflet/src/layer/tile/ImpressTileLayer.js
index 787411afb..485343cd1 100644
--- a/loleaflet/src/layer/tile/ImpressTileLayer.js
+++ b/loleaflet/src/layer/tile/ImpressTileLayer.js
@@ -633,7 +633,6 @@ L.ImpressTileLayer = L.TileLayer.extend({
}
else {
// tile outside of the visible area, just remove it
- this._preFetchBorder = null;
this._removeTile(key);
}
}
@@ -708,10 +707,6 @@ L.ImpressTileLayer = L.TileLayer.extend({
this._selectedParts = command.selectedParts || [command.selectedPart];
this._resetPreFetching(true);
this._update();
- if (this._preFetchPart !== this._selectedPart) {
- this._preFetchPart = this._selectedPart;
- this._preFetchBorder = null;
- }
var partMatch = textMsg.match(/[^\r\n]+/g);
// only get the last matches
this._partHashes = partMatch.slice(partMatch.length - this._parts);
diff --git a/loleaflet/src/layer/tile/WriterTileLayer.js b/loleaflet/src/layer/tile/WriterTileLayer.js
index 8b42c775b..c2c4f7850 100644
--- a/loleaflet/src/layer/tile/WriterTileLayer.js
+++ b/loleaflet/src/layer/tile/WriterTileLayer.js
@@ -294,7 +294,6 @@ L.WriterTileLayer = L.TileLayer.extend({
}
else {
// tile outside of the visible area, just remove it
- this._preFetchBorder = null;
this._removeTile(key);
}
}
More information about the Libreoffice-commits
mailing list