loleaflet/dist/toolbar.css | 16 +++++++++ loleaflet/dist/toolbar/toolbar.js | 57 +++++++++++++++++++--------------- loleaflet/src/layer/tile/TileLayer.js | 10 ----- 3 files changed, 48 insertions(+), 35 deletions(-)
New commits: commit 5891371dcacf04182827317482df6b92700aabbd Author: Pranav Kant <pran...@collabora.co.uk> Date: Sun Sep 25 22:47:59 2016 +0530 loleaflet: Show usercolor in userlist Change-Id: I6be05f36ffc4c00aa986b3873fce1bc5acc6fbf0 diff --git a/loleaflet/dist/toolbar.css b/loleaflet/dist/toolbar.css index aef6e23..d607b39 100644 --- a/loleaflet/dist/toolbar.css +++ b/loleaflet/dist/toolbar.css @@ -306,3 +306,19 @@ button.leaflet-control-search-next border: 0px; background: rgba(66, 151, 215, 1); } + +tr.useritem:hover { + cursor: default; + background-color: rgba(67, 172, 232, 0.25); +} + +tr.useritem > td { + padding: 7px; +} + +tr.useritem > td.usercolor { + display: inline-block; + top: 5px; + left: 3px; + position: relative; +} diff --git a/loleaflet/dist/toolbar/toolbar.js b/loleaflet/dist/toolbar/toolbar.js index 2e282e9..b7a02a4 100644 --- a/loleaflet/dist/toolbar/toolbar.js +++ b/loleaflet/dist/toolbar/toolbar.js @@ -461,9 +461,7 @@ $(function () { {type: 'html', id: 'right'}, {type: 'html', id: 'modifiedstatuslabel', html: '<div id="modifiedstatuslabel" class="loleaflet-font"></div>'}, {type: 'break'}, - {type: 'menu', id: 'userlist', caption: _('1 user'), items: [ - { id: '-1', text: _('You'), disabled: true }, - ]}, + {type: 'drop', id: 'userlist', text: _('No users'), html: '<div id="userlist_container"><table id="userlist_table"><tbody></tbody></table></div>' }, {type: 'break'}, {type: 'button', id: 'prev', img: 'prev', hint: _('Previous page')}, {type: 'button', id: 'next', img: 'next', hint: _('Next page')}, @@ -474,6 +472,9 @@ $(function () { {type: 'button', id: 'zoomin', img: 'zoomin', hint: _('Zoom in')} ], onClick: function (e) { + if (e.item.id === 'userlist') { + return; + } onClick(e.target, e.item, e.subItem); } }); @@ -1307,18 +1308,26 @@ map.on('statusindicator', function (e) { } }); -function getUserListItem(viewId, userName) { - var userListItem = { id: viewId, text: userName, disabled: true }; - return userListItem; +function getUserItem(viewId, userName, color) { + var html = '<tr class="useritem" id="user-' + viewId + '">' + + '<td class=usercolor style="background-color: ' + color +';"></td>' + + '<td class="username">' + userName + '</td>' + + '</tr>'; + return html; } var nUsers = _('%n users'); -function updateUserListCount(userlist) { - var count = userlist.items.length; +function updateUserListCount() { + var userlistItem = w2ui['toolbar-down'].get('userlist'); + var count = $(userlistItem.html).find('#userlist_table tbody tr').length; if (count > 1) { - userlist.caption = nUsers.replace('%n', count); + userlistItem.text = nUsers.replace('%n', count); } else if (count === 1) { - userlist.caption = _('1 user'); + userlistItem.text = _('1 user'); + } else { + userlistItem.text = _('No users'); } + + w2ui['toolbar-down'].refresh(); } map.on('addview', function(e) { @@ -1335,11 +1344,16 @@ map.on('addview', function(e) { userPopupTimeout = null; }, 3000); - var userlist = w2ui['toolbar-down'].get('userlist'); - userlist.items.push(getUserListItem(e.viewId, e.username)); - - updateUserListCount(userlist); - w2ui['toolbar-down'].refresh(); + var username = e.username; + var color = L.LOUtil.getViewIdHexColor(e.viewId); + if (e.viewId === map._docLayer._viewId) { + username = _('You'); + color = '#000'; + } + var userlistItem = w2ui['toolbar-down'].get('userlist'); + var newhtml = $(userlistItem.html).find('#userlist_table tbody').append(getUserItem(e.viewId, username, color)).parent().parent()[0].outerHTML; + userlistItem.html = newhtml; + updateUserListCount(); }); map.on('removeview', function(e) { @@ -1356,16 +1370,9 @@ map.on('removeview', function(e) { userPopupTimeout = null; }, 3000); - var userlist = w2ui['toolbar-down'].get('userlist'); - for (var idx in userlist.items) { - if (userlist.items[idx].id == e.viewId) { - userlist.items.splice(idx, 1); - break; - } - } - - updateUserListCount(userlist); - w2ui['toolbar-down'].refresh(); + var userlistItem = w2ui['toolbar-down'].get('userlist'); + userlistItem.html = $(userlistItem.html).find('#user-' + e.viewId).remove().end()[0].outerHTML; + updateUserListCount(); }); $(window).resize(function() { diff --git a/loleaflet/src/layer/tile/TileLayer.js b/loleaflet/src/layer/tile/TileLayer.js index 047a40d..df48df7 100644 --- a/loleaflet/src/layer/tile/TileLayer.js +++ b/loleaflet/src/layer/tile/TileLayer.js @@ -697,11 +697,6 @@ L.TileLayer = L.GridLayer.extend({ }, _addView: function(viewId, username) { - // Ignore if viewid is same as ours - if (viewId === this._viewId) { - return; - } - this._map.addView(viewId, username); //TODO: We can initialize color and other properties here. @@ -713,11 +708,6 @@ L.TileLayer = L.GridLayer.extend({ }, _removeView: function(viewId) { - // Couldn't be ours, now could it?! - if (viewId === this._viewId) { - return; - } - // Remove selection, if any. if (this._viewSelections[viewId] && this._viewSelections[viewId].selection) { this._viewLayerGroup.removeLayer(this._viewSelections[viewId].selection); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits