loleaflet/src/layer/tile/TileLayer.js | 12 +++++++++-- loleaflet/src/map/handler/Map.Mouse.js | 8 +++++++ loolwsd/LOKitClient.cpp | 1 loolwsd/LOOLSession.cpp | 3 ++ loolwsd/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h | 9 +++++++- 5 files changed, 30 insertions(+), 3 deletions(-)
New commits: commit 72c407e0ed5c3a9ffd2ae518f9f5d4407e1f5d61 Author: Andrzej Hunt <andrzej.h...@collabora.com> Date: Tue Nov 10 11:44:50 2015 +0100 loleaflet: support mouse cursor calback diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index 8f446ea..eddb2bb 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -241,6 +241,9 @@ L.TileLayer = L.GridLayer.extend({ msg += 'height=' + this._docHeightTwips; this._onInvalidateTilesMsg(msg); } + else if (textMsg.startsWith('mousepointer:')) { + this._onMousePointerMsg(textMsg); + } else if (textMsg.startsWith('partpagerectangles:')) { this._onPartPageRectanglesMsg(textMsg); } @@ -376,6 +379,11 @@ L.TileLayer = L.GridLayer.extend({ this._onUpdateCellCursor(); }, + _onMousePointerMsg: function (textMsg) { + textMsg = textMsg.substring(14); // "mousepointer: " + this._map._container.style.cursor = textMsg; + }, + _onHyperlinkClickedMsg: function (textMsg) { var link = textMsg.substring(18); window.open(link, '_blank'); diff --git a/loleaflet/src/map/handler/Map.Mouse.js b/loleaflet/src/map/handler/Map.Mouse.js index 6477be4..82c8c83 100644 --- a/loleaflet/src/map/handler/Map.Mouse.js +++ b/loleaflet/src/map/handler/Map.Mouse.js @@ -157,6 +157,14 @@ L.Map.Mouse = L.Handler.extend({ this._map.fire('handleautoscroll', { pos: e.containerPoint, map: this._map }); } } + else if (e.type === 'mousemove' && !this._mouseDown) { + clearTimeout(this._mouseOverTimeout); + mousePos = docLayer._latLngToTwips(e.latlng); + this._mouseOverTimeout = setTimeout(L.bind(function() { + docLayer._postMouseEvent('move', mousePos.x, mousePos.y, 1, 0, modifier); + }, this), + 100); + } else if (e.type === 'dblclick' || e.type === 'trplclick' || e.type === 'qdrplclick') { mousePos = docLayer._latLngToTwips(e.latlng); var clicks = { commit 74edae8703d1e3533260009f931709f64f997574 Author: Andrzej Hunt <andrzej.h...@collabora.com> Date: Tue Nov 10 11:42:56 2015 +0100 loolwsd: support LOK_CALLBACK_MOUSE_POINTER diff --git a/loolwsd/LOKitClient.cpp b/loolwsd/LOKitClient.cpp index 481c3be..f72f8e6 100644 --- a/loolwsd/LOKitClient.cpp +++ b/loolwsd/LOKitClient.cpp @@ -53,6 +53,7 @@ extern "C" CASE(GRAPHIC_SELECTION); CASE(CELL_CURSOR); CASE(HYPERLINK_CLICKED); + CASE(MOUSE_POINTER); CASE(STATE_CHANGED); CASE(STATUS_INDICATOR_START); CASE(STATUS_INDICATOR_SET_VALUE); diff --git a/loolwsd/LOOLSession.cpp b/loolwsd/LOOLSession.cpp index 7565470..1edd3fa 100644 --- a/loolwsd/LOOLSession.cpp +++ b/loolwsd/LOOLSession.cpp @@ -891,6 +891,9 @@ extern "C" case LOK_CALLBACK_CELL_CURSOR: srv->sendTextFrame("cellcursor: " + std::string(pPayload)); break; + case LOK_CALLBACK_MOUSE_POINTER: + srv->sendTextFrame("mousepointer: " + std::string(pPayload)); + break; case LOK_CALLBACK_HYPERLINK_CLICKED: srv->sendTextFrame("hyperlinkclicked: " + std::string(pPayload)); break; commit 69325ce576cd04d4c1c950d42310fec4860d8317 Author: Andrzej Hunt <andrzej.h...@collabora.com> Date: Tue Nov 10 11:42:38 2015 +0100 loolwsd: update bundled headers to contain LOK_CALLBACK_MOUSE_POINTER diff --git a/loolwsd/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h b/loolwsd/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h index bf62675..37837ea 100644 --- a/loolwsd/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h +++ b/loolwsd/bundled/include/LibreOfficeKit/LibreOfficeKitEnums.h @@ -202,7 +202,14 @@ typedef enum * * Rectangle format is the same as LOK_CALLBACK_INVALIDATE_TILES. */ - LOK_CALLBACK_CELL_CURSOR + LOK_CALLBACK_CELL_CURSOR, + + /** + * The current mouse pointer style. + * + * Payload is a css mouse pointer style. + */ + LOK_CALLBACK_MOUSE_POINTER } LibreOfficeKitCallbackType; commit 931d6badbe382f341aff577335591121cc3934d1 Author: Andrzej Hunt <andrzej.h...@collabora.com> Date: Mon Nov 9 11:02:12 2015 +0100 loleaflet: no need for hungarian notation diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index 1f00b05..8f446ea 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -943,8 +943,8 @@ L.TileLayer = L.GridLayer.extend({ // Cells can change position during changes of zoom level in calc // hence we need to request an updated cell cursor position for this level. - _onCellCursorShift: function (bForce) { - if (this._cellCursorMarker || bForce) { + _onCellCursorShift: function (force) { + if (this._cellCursorMarker || force) { L.Socket.sendMessage('commandvalues command=.uno:CellCursor' + '?outputHeight=' + this._tileSize + '&outputWidth=' + this._tileSize _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits