commit 4ca53f471d004a4aea1bb9f5620f2b44823a0bf0
Author: Pavel Fidranský <fidransky@outlook.com>
Date:   Tue Aug 21 10:28:32 2018 +0200

    detached stopPropagation function to Utils

diff --git a/sources/src/main/webapp/js/components/edgePopover.js b/sources/src/main/webapp/js/components/edgePopover.js
index ffa3570..7a4b0a9 100644
--- a/sources/src/main/webapp/js/components/edgePopover.js
+++ b/sources/src/main/webapp/js/components/edgePopover.js
@@ -67,8 +67,8 @@ function EdgePopover() {
 		rootElement = app.utils.createHtmlElement('div', {
 			'class': 'popover edge-popover hidden',
 		});
-		rootElement.addEventListener('wheel', stopPropagation.bind(this));
-		rootElement.addEventListener('mousedown', stopPropagation.bind(this));
+		rootElement.addEventListener('wheel', app.utils.stopPropagation);
+		rootElement.addEventListener('mousedown', app.utils.stopPropagation);
 		rootElement.addEventListener('mouseleave', this.close.bind(this));
 
 		var popoverTitle = app.utils.createHtmlElement('span', {
@@ -88,12 +88,4 @@ function EdgePopover() {
 		return rootElement;
 	};
 
-	/**
-	 * Stops propagation of the event which triggered this function to its parental elements.
-	 * @param {Event} e The event.
-	 */
-	function stopPropagation(e) {
-		e.stopPropagation();
-	}
-
 }
diff --git a/sources/src/main/webapp/js/components/vertex.js b/sources/src/main/webapp/js/components/vertex.js
index bd000ab..9f96036 100644
--- a/sources/src/main/webapp/js/components/vertex.js
+++ b/sources/src/main/webapp/js/components/vertex.js
@@ -424,6 +424,7 @@ function Vertex(props) {
 			'data-name': this.name,
 		});
 		rootElement.addEventListener('click', click.bind(this));
+		rootElement.addEventListener('dblclick', app.utils.stopPropagation);
 		rootElement.addEventListener('contextmenu', contextMenu.bind(this));
 		rootElement.addEventListener('mousedown', mouseDown.bind(this));
 		
diff --git a/sources/src/main/webapp/js/components/vertexContextMenuList.js b/sources/src/main/webapp/js/components/vertexContextMenuList.js
index b21b9a4..9d68429 100644
--- a/sources/src/main/webapp/js/components/vertexContextMenuList.js
+++ b/sources/src/main/webapp/js/components/vertexContextMenuList.js
@@ -80,7 +80,7 @@ function VertexContextMenuList() {
 		rootElement = app.utils.createHtmlElement('div', {
 			'class': 'context-menu hidden',
 		});
-		rootElement.addEventListener('mousedown', stopPropagation.bind(this));
+		rootElement.addEventListener('mousedown', app.utils.stopPropagation);
 
 		listElement = app.utils.createHtmlElement('ul', {});
 		rootElement.appendChild(listElement);
@@ -88,14 +88,6 @@ function VertexContextMenuList() {
 		return rootElement;
 	};
 
-	/**
-	 * Stops propagation of the event which triggered this function to its parental elements.
-	 * @param {Event} e The event.
-	 */
-	function stopPropagation(e) {
-		e.stopPropagation();
-	}
-
 	/**
 	 * Context menu item click interaction. The vertex this context menu is bound to is either added to the group or merged 
 	 * with the vertex to created a new group.
diff --git a/sources/src/main/webapp/js/components/vertexPopover.js b/sources/src/main/webapp/js/components/vertexPopover.js
index eac5918..fb13330 100644
--- a/sources/src/main/webapp/js/components/vertexPopover.js
+++ b/sources/src/main/webapp/js/components/vertexPopover.js
@@ -59,8 +59,8 @@ function VertexPopover() {
 		rootElement = app.utils.createHtmlElement('div', {
 			'class': 'popover vertex-popover hidden',
 		});
-		rootElement.addEventListener('wheel', stopPropagation.bind(this));
-		rootElement.addEventListener('mousedown', stopPropagation.bind(this));
+		rootElement.addEventListener('wheel', app.utils.stopPropagation);
+		rootElement.addEventListener('mousedown', app.utils.stopPropagation);
 		rootElement.addEventListener('mouseleave', this.close.bind(this));
 
 		popoverTitle = app.utils.createHtmlElement('span', {
@@ -78,12 +78,4 @@ function VertexPopover() {
 
 		return rootElement;
 	};
-
-	/**
-	 * Stops propagation of the event which triggered this function to its parental elements.
-	 * @param {Event} e The event.
-	 */
-	function stopPropagation(e) {
-		e.stopPropagation();
-	}
 }
\ No newline at end of file
diff --git a/sources/src/main/webapp/js/utils/utils.js b/sources/src/main/webapp/js/utils/utils.js
index ddc566e..f07420e 100644
--- a/sources/src/main/webapp/js/utils/utils.js
+++ b/sources/src/main/webapp/js/utils/utils.js
@@ -8,6 +8,14 @@ function Utils() {
 	 */
 	this.noop = function() {};
 
+	/**
+	 * Stops propagation of the mouse interaction to parental elements.
+	 * @param {MouseEvent} e Click/double-click event.
+	 */
+	this.stopPropagation = function(e) {
+		e.stopPropagation();
+	};
+
 	/**
 	 * Checks whether the variable passed as parameter is defined.
 	 * 
