[Libreoffice-commits] online.git: 5 commits - loleaflet/css loleaflet/images loleaflet/src

Tamás Zolnai (via logerrit) logerrit at kemper.freedesktop.org
Sat Oct 5 17:43:09 UTC 2019


 loleaflet/css/toolbar.css                        |    6 ++
 loleaflet/images/lc_insertion_mobile_wizard.svg  |   69 +++++++++++++++++++++++
 loleaflet/src/control/Control.JSDialogBuilder.js |   66 ++++++++++++++++++++++
 loleaflet/src/control/Control.Menubar.js         |   51 ++++++++++++++++-
 loleaflet/src/control/Control.MobileWizard.js    |   15 +++--
 loleaflet/src/control/Control.Toolbar.js         |   19 +++++-
 loleaflet/src/layer/tile/CalcTileLayer.js        |    8 --
 loleaflet/src/layer/tile/WriterTileLayer.js      |    8 --
 8 files changed, 222 insertions(+), 20 deletions(-)

New commits:
commit 7b469564bbe5280b2602e110513a314002c20797
Author:     Tamás Zolnai <tamas.zolnai at collabora.com>
AuthorDate: Sat Oct 5 19:08:10 2019 +0200
Commit:     Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Sat Oct 5 19:08:10 2019 +0200

    mobile-wizard: Update toolbar buttons by closing
    
    Change-Id: I72b276e9cf0e54522d755eea156d5044a77166e2

diff --git a/loleaflet/src/control/Control.MobileWizard.js b/loleaflet/src/control/Control.MobileWizard.js
index c71b1f51f..b98506858 100644
--- a/loleaflet/src/control/Control.MobileWizard.js
+++ b/loleaflet/src/control/Control.MobileWizard.js
@@ -3,7 +3,7 @@
  * L.Control.MobileWizard
  */
 
-/* global $ */
+/* global $ w2ui*/
 L.Control.MobileWizard = L.Control.extend({
 
 	_inMainMenu: true,
@@ -70,10 +70,10 @@ L.Control.MobileWizard = L.Control.extend({
 			this._hideWizard();
 			this._currentDepth = 0;
 			if (window.mobileWizard === true) {
-				this.map.sendUnoCommand('.uno:Sidebar');
-				window.mobileWizard = false
+				w2ui['actionbar'].click('mobile_wizard')
+			} else if (window.insertionMobileWizard === true) {
+				w2ui['actionbar'].click('insertion_mobile_wizard')
 			}
-			window.insertionMobileWizard = false
 		} else {
 			this._currentDepth--;
 
commit ea9eb2525d23f7cb6bcae0dac8b1f3417ad01246
Author:     Tamás Zolnai <tamas.zolnai at collabora.com>
AuthorDate: Sat Oct 5 18:47:40 2019 +0200
Commit:     Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Sat Oct 5 18:47:40 2019 +0200

    insertion-mobile-wizard: Add a title for the main menu (e.g. "Insert")
    
    Change-Id: I498f474d731d87591e33f2db1b7c9b52b7dafa47

diff --git a/loleaflet/src/control/Control.MobileWizard.js b/loleaflet/src/control/Control.MobileWizard.js
index 5a9132ffc..c71b1f51f 100644
--- a/loleaflet/src/control/Control.MobileWizard.js
+++ b/loleaflet/src/control/Control.MobileWizard.js
@@ -9,6 +9,7 @@ L.Control.MobileWizard = L.Control.extend({
 	_inMainMenu: true,
 	_isActive: false,
 	_currentDepth: 0,
+	_mainTitle: '',
 
 	onAdd: function (map) {
 		this.map = map;
@@ -80,7 +81,7 @@ L.Control.MobileWizard = L.Control.extend({
 			if (this._currentDepth > 0 && parent)
 				this._setTitle(parent.get(0).title);
 			else
-				this._setTitle('');
+				this._setTitle(this._mainTitle);
 
 			$('.ui-content.level-' + this._currentDepth + '.mobile-wizard').hide('slide', { direction: 'right' }, 'fast');
 			$('.ui-header.level-' + this._currentDepth + '.mobile-wizard').show('slide', { direction: 'left' }, 'fast');
@@ -106,6 +107,9 @@ L.Control.MobileWizard = L.Control.extend({
 			this._hideKeyboard();
 
 			L.control.jsDialogBuilder({mobileWizard: this, map: this.map}).build(this.content.get(0), [data]);
+
+			this._mainTitle = data.text ? data.text : '';
+			this._setTitle(this._mainTitle);
 		}
 	}
 });
commit 33e5e7977a49b8cf5a210415076c0d6ce2f10269
Author:     Tamás Zolnai <tamas.zolnai at collabora.com>
AuthorDate: Sat Oct 5 17:35:48 2019 +0200
Commit:     Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Sat Oct 5 18:44:39 2019 +0200

    insertion-mobile-wizard: Align the sub menu arrow correctly
    
    Change-Id: If0952435dc058d2cada04f4c6c5351d3c9aeaa91

diff --git a/loleaflet/css/toolbar.css b/loleaflet/css/toolbar.css
index 937dfb9f2..b726377ae 100644
--- a/loleaflet/css/toolbar.css
+++ b/loleaflet/css/toolbar.css
@@ -827,3 +827,8 @@ tr.useritem > td > img {
 	display: table-cell;
 	vertical-align: middle;
 }
+
+.sub-menu-arrow {
+	margin-right: 40px;
+	background: transparent;
+}
diff --git a/loleaflet/src/control/Control.JSDialogBuilder.js b/loleaflet/src/control/Control.JSDialogBuilder.js
index 3a9f4529b..f4b4e3d26 100644
--- a/loleaflet/src/control/Control.JSDialogBuilder.js
+++ b/loleaflet/src/control/Control.JSDialogBuilder.js
@@ -140,7 +140,16 @@ L.Control.JSDialogBuilder = L.Control.extend({
 
 	_explorableMenu: function(parentContainer, title, children, builder) {
 		var sectionTitle = L.DomUtil.create('div', 'ui-header level-' + builder._currentDepth + ' mobile-wizard ui-widget', parentContainer);
-		sectionTitle.innerHTML = title;
+		if (builder._currentDepth === 0) {
+			$(sectionTitle).css('justify-content', 'space-between');
+
+			var titleSpan = L.DomUtil.create('span', 'sub-menu-title', sectionTitle);
+			titleSpan.innerHTML = title;
+			var arrowSpan = L.DomUtil.create('span', 'sub-menu-arrow', sectionTitle);
+			arrowSpan.innerHTML = '>';
+		} else {
+			sectionTitle.innerHTML = title;
+		}
 
 		var contentDiv = L.DomUtil.create('div', 'ui-content level-' + builder._currentDepth + ' mobile-wizard', parentContainer);
 		contentDiv.title = title;
diff --git a/loleaflet/src/control/Control.Menubar.js b/loleaflet/src/control/Control.Menubar.js
index 3d6bcb013..9df4099df 100644
--- a/loleaflet/src/control/Control.Menubar.js
+++ b/loleaflet/src/control/Control.Menubar.js
@@ -1197,6 +1197,9 @@ L.Control.Menubar = L.Control.extend({
 
 	_generateMenuStructure: function(item, mainMenu) {
 		var itemText = $($(item).children()[0]).text();
+		if (itemText.endsWith('›'))
+			itemText = itemText.substring(0, itemText.length - 1);
+
 		var children = $(item).children('ul').children('li');
 		var itemEnabled = true;
 		if ($($(item).children()[0]).hasClass('disabled')) {
commit ca51f56ebecef9f07a25f74fd0e96a8224d166b6
Author:     Tamás Zolnai <tamas.zolnai at collabora.com>
AuthorDate: Sat Oct 5 17:40:51 2019 +0200
Commit:     Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Sat Oct 5 17:40:51 2019 +0200

    mobile-wizard: Convert Insert menu to a mobile wizard like widget
    
    * Added a toolbar button to open this insertion mobile wizard.
    * Added a method to convert 'Insert' menu for mobile wizard code.
    * Added callbacks for menu types items to JSDialogBuilder.
    * Since the menus are not dialogs it would be good to create
    a separate JSMenuBuilder class for the added code. I'll do that
    later.
    
    Change-Id: Ie68e13ae46dde7bc36c2465785628135623436da

diff --git a/loleaflet/css/toolbar.css b/loleaflet/css/toolbar.css
index 02f68b30e..937dfb9f2 100644
--- a/loleaflet/css/toolbar.css
+++ b/loleaflet/css/toolbar.css
@@ -634,6 +634,7 @@ button.leaflet-control-search-next
 .w2ui-icon.closetoolbar{ background: url('images/close_toolbar.svg') no-repeat center !important; }
 .w2ui-icon.sidebar_modify_page{ background: url('images/lc_formproperties.svg') no-repeat center !important; }
 .w2ui-icon.mobile_wizard{ background: url('images/lc_mobile_wizard.svg') no-repeat center !important; }
+.w2ui-icon.insertion_mobile_wizard{ background: url('images/lc_insertion_mobile_wizard.svg') no-repeat center !important; }
 
 .w2ui-icon.vereign{ background: url('images/vereign.png') no-repeat center !important; }
 
diff --git a/loleaflet/src/control/Control.JSDialogBuilder.js b/loleaflet/src/control/Control.JSDialogBuilder.js
index 12557dd95..3a9f4529b 100644
--- a/loleaflet/src/control/Control.JSDialogBuilder.js
+++ b/loleaflet/src/control/Control.JSDialogBuilder.js
@@ -44,6 +44,10 @@ L.Control.JSDialogBuilder = L.Control.extend({
 		this._controlHandlers['toolbox'] = this._containerHandler;
 		this._controlHandlers['toolitem'] = this._toolitemHandler;
 
+		this._controlHandlers['mainmenu'] = this._containerHandler;
+		this._controlHandlers['submenu'] = this._subMenuHandler;
+		this._controlHandlers['menuitem'] = this._menuItemHandler;
+
 		this._toolitemHandlers['.uno:XLineColor'] = this._colorControl;
 		this._toolitemHandlers['.uno:SelectWidth'] = this._lineWidthControl;
 		this._toolitemHandlers['.uno:CharFontName'] = this._fontNameControl;
@@ -134,6 +138,27 @@ L.Control.JSDialogBuilder = L.Control.extend({
 		}
 	},
 
+	_explorableMenu: function(parentContainer, title, children, builder) {
+		var sectionTitle = L.DomUtil.create('div', 'ui-header level-' + builder._currentDepth + ' mobile-wizard ui-widget', parentContainer);
+		sectionTitle.innerHTML = title;
+
+		var contentDiv = L.DomUtil.create('div', 'ui-content level-' + builder._currentDepth + ' mobile-wizard', parentContainer);
+		contentDiv.title = title;
+
+		builder._currentDepth++;
+		for (var i = 0; i < children.length; i++) {
+			builder.build(contentDiv, [children[i]]);
+		}
+		builder._currentDepth--;
+
+		$(contentDiv).hide();
+		if (builder.wizard) {
+			$(sectionTitle).click(function() { builder.wizard.goLevelDown(contentDiv); });
+		} else {
+			console.debug('Builder used outside of mobile wizard: please implement the click handler');
+		}
+	},
+
 	_frameHandler: function(parentContainer, data, builder) {
 		var title = builder._cleanText(data.children[0].text);
 		var contentNode = data.children[1];
@@ -355,6 +380,38 @@ L.Control.JSDialogBuilder = L.Control.extend({
 		builder._spinfieldControl(parentContainer, data, builder);
 	},
 
+	_subMenuHandler: function(parentContainer, data, builder) {
+		var title = data.text;
+		builder._explorableMenu(parentContainer, title, data.children, builder);
+
+		return false;
+	},
+
+	_menuItemHandler: function(parentContainer, data, builder) {
+		var title = data.text;
+		// separator
+		if (title === '') {
+			return false;
+		}
+
+		var sectionTitle = L.DomUtil.create('div', 'ui-header level-' + builder._currentDepth + ' mobile-wizard ui-widget', parentContainer);
+		sectionTitle.innerHTML = title;
+
+		if (builder.wizard) {
+			$(sectionTitle).click(function() {
+				if (data.executionType === 'action') {
+					builder.map.menubar._executeAction($(builder.map.menubar._getItem(data.id).children()[0]))
+				} else {
+					builder.map.sendUnoCommand(data.command)
+				}
+			});
+		} else {
+			console.debug('Builder used outside of mobile wizard: please implement the click handler');
+		}
+
+		return false;
+	},
+
 	_fontNameControl: function(parentContainer, data, builder) {
 		data.entries = [ 'Liberation Sans' ];
 		builder._comboboxControl(parentContainer, data, builder);
diff --git a/loleaflet/src/control/Control.Menubar.js b/loleaflet/src/control/Control.Menubar.js
index 2e2250f99..3d6bcb013 100644
--- a/loleaflet/src/control/Control.Menubar.js
+++ b/loleaflet/src/control/Control.Menubar.js
@@ -77,7 +77,7 @@ L.Control.Menubar = L.Control.extend({
 				{id: 'mobile-wizard',  type: 'action', name: _('Mobile Wizard'), mobile: true, desktop: false}
 			]
 			},
-			{name: _UNO('.uno:InsertMenu', 'text'), type: 'menu', menu: [
+			{name: _UNO('.uno:InsertMenu', 'text'), id: 'insert', type: 'menu', menu: [
 				{name: _('Local Image...'), id: 'insertgraphic', type: 'action'},
 				{name: _UNO('.uno:InsertGraphic', 'text'), id: 'insertgraphicremote', type: 'action'},
 				{name: _UNO('.uno:InsertAnnotation', 'text'), id: 'insertcomment', type: 'action'},
@@ -382,7 +382,7 @@ L.Control.Menubar = L.Control.extend({
 				{uno: '.uno:Sidebar'},
 				{id: 'mobile-wizard',  type: 'action', name: _('Mobile Wizard'), mobile: true, desktop: false}
 			]},
-			{name: _UNO('.uno:InsertMenu', 'spreadsheet'), type: 'menu', menu: [
+			{name: _UNO('.uno:InsertMenu', 'spreadsheet'), id: 'insert', type: 'menu', menu: [
 				{name: _('Local Image...'), id: 'insertgraphic', type: 'action'},
 				{name: _UNO('.uno:InsertGraphic', 'spreadsheet'), id: 'insertgraphicremote', type: 'action'},
 				{uno: '.uno:InsertObjectChart'},
@@ -1183,6 +1183,50 @@ L.Control.Menubar = L.Control.extend({
 		for (var i in menuHtml) {
 			this._menubarCont.appendChild(menuHtml[i]);
 		}
+	},
+
+	generateMenuStructureFor: function(targetId) {
+		var item = this._getItem(targetId);
+		if (item === null) {
+			return '';
+		}
+
+		var menuStructure = this._generateMenuStructure(item, true)
+		return menuStructure
+	},
+
+	_generateMenuStructure: function(item, mainMenu) {
+		var itemText = $($(item).children()[0]).text();
+		var children = $(item).children('ul').children('li');
+		var itemEnabled = true;
+		if ($($(item).children()[0]).hasClass('disabled')) {
+			itemEnabled = false;
+		}
+		var itemType = 'submenu';
+		if (mainMenu) {
+			itemType = 'mainmenu';
+		} else if (!children.length) {
+			itemType = 'menuitem';
+		}
+		var itemID = $(item).attr('id');
+		if (itemID && itemID.length > 5) {
+			itemID = itemID.substring(5);
+		}
+
+		var menuStructure = {
+			id : itemID,
+			type : itemType,
+			enabled : itemEnabled,
+			text : itemText,
+			command : $($(item).children()[0]).data('uno'),
+			executionType : $($(item).children()[0]).data('type'),
+			children : []
+		};
+
+		for (var i = 0; i < children.length; i++) {
+			menuStructure['children'].push(this._generateMenuStructure(children[i], false));
+		}
+		return menuStructure;
 	}
 });
 
diff --git a/loleaflet/src/control/Control.MobileWizard.js b/loleaflet/src/control/Control.MobileWizard.js
index 382868854..5a9132ffc 100644
--- a/loleaflet/src/control/Control.MobileWizard.js
+++ b/loleaflet/src/control/Control.MobileWizard.js
@@ -68,8 +68,11 @@ L.Control.MobileWizard = L.Control.extend({
 		if (this._inMainMenu) {
 			this._hideWizard();
 			this._currentDepth = 0;
-			window.mobileWizard = false
-			this.map.sendUnoCommand('.uno:Sidebar');
+			if (window.mobileWizard === true) {
+				this.map.sendUnoCommand('.uno:Sidebar');
+				window.mobileWizard = false
+			}
+			window.insertionMobileWizard = false
 		} else {
 			this._currentDepth--;
 
diff --git a/loleaflet/src/control/Control.Toolbar.js b/loleaflet/src/control/Control.Toolbar.js
index 3e6a970cb..f0656b0dc 100644
--- a/loleaflet/src/control/Control.Toolbar.js
+++ b/loleaflet/src/control/Control.Toolbar.js
@@ -122,7 +122,7 @@ function onClick(e, id, item, subItem) {
 	}
 	var docLayer = map._docLayer;
 	// In the iOS app we don't want clicking on the toolbar to pop up the keyboard.
-	if (!window.ThisIsTheiOSApp && id !== 'zoomin' && id !== 'zoomout' && id !== 'mobile_wizard') {
+	if (!window.ThisIsTheiOSApp && id !== 'zoomin' && id !== 'zoomout' && id !== 'mobile_wizard' && id !== 'insertion_mobile_wizard') {
 		map.focus();
 	}
 	if (item.disabled) {
@@ -321,10 +321,25 @@ function onClick(e, id, item, subItem) {
 			window.mobileWizard = false
 			map.sendUnoCommand('.uno:Sidebar');
 			map.fire('closemobilewizard');
+			toolbar.uncheck(id);
 		}
 		else {
 			window.mobileWizard = true
 			map.sendUnoCommand('.uno:Sidebar');
+			toolbar.check(id);
+		}
+	}
+	else if (id === 'insertion_mobile_wizard') {
+		if (window.insertionMobileWizard === true) {
+			window.insertionMobileWizard = false
+			map.fire('closemobilewizard');
+			toolbar.uncheck(id);
+		}
+		else {
+			window.insertionMobileWizard = true
+			var menuData = map.menubar.generateMenuStructureFor('insert');
+			map.fire('mobilewizard', menuData);
+			toolbar.check(id);
 		}
 	}
 	else {
@@ -2018,7 +2033,7 @@ function onUpdatePermission(e) {
 	var spreadsheetButtons = ['insertsheet'];
 	var formulaBarButtons = ['functiondialog', 'sum', 'function'];
 	var presentationButtons = ['insertpage', 'duplicatepage', 'deletepage'];
-	var toolbarDownButtons = ['next', 'prev', 'mobile_wizard'];
+	var toolbarDownButtons = ['next', 'prev', 'mobile_wizard', 'insertion_mobile_wizard'];
 	if (e.perm === 'edit') {
 		// Enable list boxes
 		$('.styles-select').prop('disabled', false);
diff --git a/loleaflet/src/layer/tile/CalcTileLayer.js b/loleaflet/src/layer/tile/CalcTileLayer.js
index 607af9f6f..71ce0ded2 100644
--- a/loleaflet/src/layer/tile/CalcTileLayer.js
+++ b/loleaflet/src/layer/tile/CalcTileLayer.js
@@ -110,7 +110,8 @@ L.CalcTileLayer = L.TileLayer.extend({
 				{type: 'spacer'},
 				{type: 'button',  id: 'undo',  img: 'undo', hint: _UNO('.uno:Undo'), uno: 'Undo', disabled: true},
 				{type: 'button',  id: 'redo',  img: 'redo', hint: _UNO('.uno:Redo'), uno: 'Redo', disabled: true},
-				{type: 'button',  id: 'mobile_wizard', img: 'mobile_wizard', name: _('Mobile Wizard'), disabled: true},
+				{type: 'button',  id: 'mobile_wizard', img: 'mobile_wizard', disabled: true},
+				{type: 'button',  id: 'insertion_mobile_wizard', img: 'insertion_mobile_wizard', disabled: true},
 				{type: 'button',  id: 'fullscreen', img: 'fullscreen', hint: _UNO('.uno:FullScreen', 'text')},
 				{type: 'drop', id: 'userlist', img: 'users', html: '<div id="userlist_container"><table id="userlist_table"><tbody></tbody></table>' +
 					'<hr><table class="loleaflet-font" id="editor-btn">' +
@@ -140,11 +141,6 @@ L.CalcTileLayer = L.TileLayer.extend({
 					map.on('addview', window.onAddView);
 					map.on('removeview', window.onRemoveView);
 				}
-				if (window.mobileWizard === true) {
-					this.check('mobile_wizard');
-				} else {
-					this.uncheck('mobile_wizard');
-				}
 			}
 		});
 		toolbar.bind('touchstart', function(e) {
diff --git a/loleaflet/src/layer/tile/WriterTileLayer.js b/loleaflet/src/layer/tile/WriterTileLayer.js
index cf3ec15fd..3737747e2 100644
--- a/loleaflet/src/layer/tile/WriterTileLayer.js
+++ b/loleaflet/src/layer/tile/WriterTileLayer.js
@@ -101,7 +101,8 @@ L.WriterTileLayer = L.TileLayer.extend({
 				{type: 'button',  id: 'next', img: 'next', hint: _UNO('.uno:PageDown', 'text')},
 				{type: 'button',  id: 'undo',  img: 'undo', hint: _UNO('.uno:Undo'), uno: 'Undo', disabled: true},
 				{type: 'button',  id: 'redo',  img: 'redo', hint: _UNO('.uno:Redo'), uno: 'Redo', disabled: true},
-				{type: 'button',  id: 'mobile_wizard', img: 'mobile_wizard', name: _('Mobile Wizard'), disabled: true},
+				{type: 'button',  id: 'mobile_wizard', img: 'mobile_wizard', disabled: true},
+				{type: 'button',  id: 'insertion_mobile_wizard', img: 'insertion_mobile_wizard', disabled: true},
 				{type: 'button',  id: 'fullscreen', img: 'fullscreen', hint: _UNO('.uno:FullScreen', 'text')},
 				{type: 'drop', id: 'userlist', img: 'users', html: '<div id="userlist_container"><table id="userlist_table"><tbody></tbody></table>' +
 					'<hr><table class="loleaflet-font" id="editor-btn">' +
@@ -131,11 +132,6 @@ L.WriterTileLayer = L.TileLayer.extend({
 					map.on('addview', window.onAddView);
 					map.on('removeview', window.onRemoveView);
 				}
-				if (window.mobileWizard === true) {
-					this.check('mobile_wizard');
-				} else {
-					this.uncheck('mobile_wizard');
-				}
 			}
 		});
 		toolbar.bind('touchstart', function(e) {
commit f164ac194f046b68ab12a4084a988ae67f19f5e8
Author:     Pedro <pedro.silva at collabora.com>
AuthorDate: Fri Oct 4 17:57:50 2019 +0200
Commit:     Tamás Zolnai <tamas.zolnai at collabora.com>
CommitDate: Sat Oct 5 17:39:59 2019 +0200

    Mobile wizard: add icon for insertion toolbar button.
    
    Change-Id: Iaaaa437fc7bf304f7bf473bb6d77c3f969a31f85

diff --git a/loleaflet/images/lc_insertion_mobile_wizard.svg b/loleaflet/images/lc_insertion_mobile_wizard.svg
new file mode 100644
index 000000000..fae43963d
--- /dev/null
+++ b/loleaflet/images/lc_insertion_mobile_wizard.svg
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg4"
+   version="1.1"
+   viewBox="0 0 24 24"
+   sodipodi:docname="lc_addelement_AMX_mobile.svg"
+   inkscape:version="0.92.4 (unknown)">
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1920"
+     inkscape:window-height="1017"
+     id="namedview6"
+     showgrid="false"
+     inkscape:snap-bbox="true"
+     inkscape:snap-nodes="false"
+     inkscape:bbox-paths="true"
+     inkscape:bbox-nodes="true"
+     inkscape:snap-bbox-edge-midpoints="true"
+     inkscape:zoom="13.906433"
+     inkscape:cx="2.151365"
+     inkscape:cy="11.383869"
+     inkscape:window-x="0"
+     inkscape:window-y="30"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg4" />
+  <metadata
+     id="metadata10">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs8" />
+  <g
+     id="g878"
+     transform="matrix(0.85826837,0,0,0.85826837,2.3943405,1.4015591)"
+     style="stroke-width:1.16513681">
+    <path
+       inkscape:connector-curvature="0"
+       id="path1595"
+       d="m 15.512612,0.6972654 c -0.3189,0 -0.64985,0.0486749 -0.96875,0.1835937 l -3.111329,1.2871094 a 8.5630703,8.5630703 0 0 1 2.986329,6.4921875 8.5630703,8.5630703 0 0 1 -6.4511725,8.292969 l 2.2949225,5.539062 c 0.380226,0.932169 1.287439,1.495547 2.24414,1.507813 0.3189,0 0.638679,-0.06094 0.945313,-0.183594 l 9.027343,-3.740234 c 1.251069,-0.515145 1.851085,-1.950649 1.335938,-3.189453 L 17.733315,2.2050779 C 17.353088,1.285174 16.457046,0.7217962 15.512612,0.6972654 Z M -0.04207611,14.855469 -1.4385605,18.224609 c -0.5028808,1.251069 0.099087,2.686026 1.33789069,3.201172 L 1.5419083,22.111328 V 16.046875 A 8.5630703,8.5630703 0 0 1 -0.04207611,14.855469 Z M 4.006752,17.015625 v 4.53125 C 4.006752,22.896067 5.1106846,24 6.459877,24 h 1.7792969 l -2.8125,-6.796875 a 8.5630703,8.5630703 0 0 1 -1.4199219,-0.1875 z"
+       style="fill:#555555;fill-opacity:1;stroke-width:1.16513669" />
+    <path
+       inkscape:connector-curvature="0"
+       d="M 11.355452,9.4466509 H 6.641177 V 14.16095 H 5.0697281 V 9.4466509 H 0.35545339 V 7.875226 H 5.0697281 V 3.1609393 H 6.641177 V 7.875226 h 4.714275 z"
+       id="path1603"
+       style="fill:#555555;fill-opacity:1;stroke-width:1.16513681" />
+  </g>
+</svg>


More information about the Libreoffice-commits mailing list