loleaflet/dist/images/preview_placeholder.png |binary loleaflet/src/control/Control.PartsPreview.js | 1 loleaflet/src/control/Control.Presentation.js | 42 +++---------------- loleaflet/src/control/Parts.js | 57 ++++++++++++++++++++++++++ loleaflet/src/layer/tile/ImpressTileLayer.js | 12 ++--- 5 files changed, 72 insertions(+), 40 deletions(-)
New commits: commit 56ac4eac7454399d11b9a60fff1dfb332a774f21 Author: Ozcan Esen <[email protected]> Date: Sat Jan 2 23:24:29 2016 +0200 loleaflet: load tiles of the first slide before loading slide thumbnails and show 180x135 white placeholder image in the thumbnail while waiting for the actual thumbnail Change-Id: I768815b5d54e02000718d5a443f820ac665dac60 Reviewed-on: https://gerrit.libreoffice.org/21049 Reviewed-by: Ashod Nakashian <[email protected]> Tested-by: Ashod Nakashian <[email protected]> diff --git a/loleaflet/dist/images/preview_placeholder.png b/loleaflet/dist/images/preview_placeholder.png new file mode 100644 index 0000000..ddf8651 Binary files /dev/null and b/loleaflet/dist/images/preview_placeholder.png differ diff --git a/loleaflet/src/control/Control.PartsPreview.js b/loleaflet/src/control/Control.PartsPreview.js index 93a2cfa..7cf4fd8 100644 --- a/loleaflet/src/control/Control.PartsPreview.js +++ b/loleaflet/src/control/Control.PartsPreview.js @@ -63,6 +63,7 @@ L.Control.PartsPreview = L.Control.extend({ var imgClassName = 'preview-img'; var img = L.DomUtil.create('img', imgClassName, frame); img.id = id; + img.src = L.Icon.Default.imagePath + '/preview_placeholder.png'; L.DomEvent .on(img, 'click', L.DomEvent.stopPropagation) .on(img, 'click', L.DomEvent.stop) diff --git a/loleaflet/src/layer/tile/ImpressTileLayer.js b/loleaflet/src/layer/tile/ImpressTileLayer.js index 0868c43..e6351da 100644 --- a/loleaflet/src/layer/tile/ImpressTileLayer.js +++ b/loleaflet/src/layer/tile/ImpressTileLayer.js @@ -113,6 +113,12 @@ L.ImpressTileLayer = L.TileLayer.extend({ this._parts = command.parts; this._selectedPart = command.selectedPart; L.Socket.sendMessage('setclientpart part=' + this._selectedPart); + this._resetPreFetching(true); + this._update(); + if (this._preFetchPart !== this._selectedPart) { + this._preFetchPart = this._selectedPart; + this._preFetchBorder = null; + } var partNames = textMsg.match(/[^\r\n]+/g); // only get the last matches partNames = partNames.slice(partNames.length - this._parts); @@ -122,12 +128,6 @@ L.ImpressTileLayer = L.TileLayer.extend({ docType: this._docType, partNames: partNames }); - this._resetPreFetching(true); - this._update(); - if (this._preFetchPart !== this._selectedPart) { - this._preFetchPart = this._selectedPart; - this._preFetchBorder = null; - } } } }); commit 13eacefe6022f96386887db2cfac3da48a9b03dc Author: Ozcan Esen <[email protected]> Date: Tue Dec 29 06:14:49 2015 +0200 loleaflet: make presentation controls more portable Change-Id: I3834f115a3bde8720149fdefdf132684e9a546da Reviewed-on: https://gerrit.libreoffice.org/21000 Reviewed-by: Ashod Nakashian <[email protected]> Tested-by: Ashod Nakashian <[email protected]> diff --git a/loleaflet/src/control/Control.Presentation.js b/loleaflet/src/control/Control.Presentation.js index 469dd3a..edefa2f 100644 --- a/loleaflet/src/control/Control.Presentation.js +++ b/loleaflet/src/control/Control.Presentation.js @@ -12,9 +12,9 @@ L.Control.Presentation = L.Control.extend({ container = L.DomUtil.create('div', buttonsName + '-container' + ' leaflet-bar'); this._buttons = { - 'insertpage': {title: 'Insert Page', uno: 'InsertPage', iconName: 'insertpage.png'}, - 'duplicatepage': {title: 'Duplicate Page', uno: 'DuplicatePage', iconName: 'duplicatepage.png'}, - 'deletepage': {title: 'Delete Page', uno: 'DeletePage', iconName: 'deletepage.png'} + 'insertpage': {title: 'Insert Page', iconName: 'insertpage.png'}, + 'duplicatepage': {title: 'Duplicate Page', iconName: 'duplicatepage.png'}, + 'deletepage': {title: 'Delete Page', iconName: 'deletepage.png'} }; for (var key in this._buttons) { @@ -62,41 +62,15 @@ L.Control.Presentation = L.Control.extend({ return; } var id = e.target.id; - var button = this._buttons[id]; - var docLayer = this._map._docLayer; - // TO DO: Deleting all the pages causes problem. - if (id === 'deletepage' && docLayer._parts === 1) { - return; + if (id === 'insertpage') { + this._map.insertPage(); } - - if (button.uno) { - L.Socket.sendMessage('uno .uno:' + button.uno); - } - - // TO DO: We should fire these events after server response - // Unfortunately server does not send any response. - if (id === 'insertpage' || id === 'duplicatepage') { - this._map.fire('insertpage', { - selectedPart: docLayer._selectedPart, - parts: docLayer._parts - }); - - docLayer._parts++; - this._map.setPart('next'); + else if (id === 'duplicatepage') { + this._map.duplicatePage(); } else if (id === 'deletepage') { - this._map.fire('deletepage', { - selectedPart: docLayer._selectedPart, - parts: docLayer._parts - }); - - docLayer._parts--; - if (docLayer._selectedPart >= docLayer._parts) { - docLayer._selectedPart--; - } - - this._map.setPart(docLayer._selectedPart); + this._map.deletePage(); } } }); diff --git a/loleaflet/src/control/Parts.js b/loleaflet/src/control/Parts.js index 88585bf..811388a 100644 --- a/loleaflet/src/control/Parts.js +++ b/loleaflet/src/control/Parts.js @@ -144,6 +144,63 @@ L.Map.include({ }); }, + insertPage: function() { + if (this.getDocType() !== 'presentation') { + return; + } + L.Socket.sendMessage('uno .uno:InsertPage'); + var docLayer = this._docLayer; + + this.fire('insertpage', { + selectedPart: docLayer._selectedPart, + parts: docLayer._parts + }); + + docLayer._parts++; + this.setPart('next'); + }, + + duplicatePage: function() { + if (this.getDocType() !== 'presentation') { + return; + } + L.Socket.sendMessage('uno .uno:DuplicatePage'); + var docLayer = this._docLayer; + + this.fire('insertpage', { + selectedPart: docLayer._selectedPart, + parts: docLayer._parts + }); + + docLayer._parts++; + this.setPart('next'); + }, + + deletePage: function () { + if (this.getDocType() !== 'presentation') { + return; + } + + L.Socket.sendMessage('uno .uno:DeletePage'); + var docLayer = this._docLayer; + // TO DO: Deleting all the pages causes problem. + if (docLayer._parts === 1) { + return; + } + + this.fire('deletepage', { + selectedPart: docLayer._selectedPart, + parts: docLayer._parts + }); + + docLayer._parts--; + if (docLayer._selectedPart >= docLayer._parts) { + docLayer._selectedPart--; + } + + this.setPart(docLayer._selectedPart); + }, + getNumberOfPages: function () { return this._docLayer._pages; }, _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
