commit 95a95ea9d16bce428a564576b351cfce20a0181f
Author: Sralbotka <kouba.prem@gmail.com>
Date:   Sun Jun 9 13:01:08 2019 +0200

    big update - solves specified bugs (refs #7561) – positioning bugs on UI

diff --git a/sources/imiger-core/src/main/webapp/css/common.css b/sources/imiger-core/src/main/webapp/css/common.css
index 191dbca..fd28814 100644
--- a/sources/imiger-core/src/main/webapp/css/common.css
+++ b/sources/imiger-core/src/main/webapp/css/common.css
@@ -3,6 +3,7 @@ body {
 	font-size: 1.3em;
 	margin: 0;
 	background-color: #e8f4ff;
+	height: 100vh;
 }
 
 ul {
diff --git a/sources/imiger-core/src/main/webapp/css/components/modal-window.css b/sources/imiger-core/src/main/webapp/css/components/modal-window.css
index ce5ec07..8bbbd6e 100644
--- a/sources/imiger-core/src/main/webapp/css/components/modal-window.css
+++ b/sources/imiger-core/src/main/webapp/css/components/modal-window.css
@@ -1,6 +1,6 @@
 .modal {
 	position: absolute;
-	z-index: 2;
+	z-index: 999999;
 	top: 0;
 	bottom: 0;
 	left: 0;
diff --git a/sources/imiger-core/src/main/webapp/css/customStyles.css b/sources/imiger-core/src/main/webapp/css/customStyles.css
index 7292bb8..1caceda 100644
--- a/sources/imiger-core/src/main/webapp/css/customStyles.css
+++ b/sources/imiger-core/src/main/webapp/css/customStyles.css
@@ -67,6 +67,7 @@
 
 .sidebar {
     width: 100%;
+    overflow: auto;
 }
 
 .viewport, .graph-content {
@@ -101,6 +102,7 @@
 
 #sidebar-container {
     border: 1px solid #7db9e8;
+    overflow: auto;
 }
 
 .navbar  > ul {
@@ -113,3 +115,25 @@ button {
     color: black;
 }
 
+#id {
+    width: 100%;
+    height: 100%;
+    padding: 0;
+    margin: 0;
+}
+
+.graph-content {
+    width: 100%;
+    height: 100%;
+}
+
+.full-height {
+    height: 100%;
+}
+
+.sidebar-bottom {
+    bottom: 115px;
+    width: 100%;
+    position: absolute;
+    background-color: #f5f5f5;
+}
\ No newline at end of file
diff --git a/sources/imiger-core/src/main/webapp/js/components/nodeProxy.js b/sources/imiger-core/src/main/webapp/js/components/nodeProxy.js
index 3339003..d683807 100644
--- a/sources/imiger-core/src/main/webapp/js/components/nodeProxy.js
+++ b/sources/imiger-core/src/main/webapp/js/components/nodeProxy.js
@@ -87,9 +87,10 @@ class NodeProxy {
 	updatePosition() {
 		let bbox = this._rootElement.getBoundingClientRect();
 		let viewportPosition = app.viewportComponent.position;
-
+		var timelineElement = document.getElementsByClassName("timeline-pane");
+		var timelineHeight = timelineElement.length > 0 ? timelineElement[0].clientHeight : 0;
 		this._position.x = (bbox.left - viewportPosition.x);
-		this._position.y = (bbox.top - viewportPosition.y - app.headerComponent.height - app.navbarComponent.height);
+		this._position.y = (bbox.top - viewportPosition.y - app.headerComponent.height - app.navbarComponent.height - timelineHeight);
 
 		let edgeOffsetY;
 		if (this._node instanceof Vertex) {
diff --git a/sources/imiger-core/src/main/webapp/js/components/sidebar.js b/sources/imiger-core/src/main/webapp/js/components/sidebar.js
index 9d93fc1..d11686f 100644
--- a/sources/imiger-core/src/main/webapp/js/components/sidebar.js
+++ b/sources/imiger-core/src/main/webapp/js/components/sidebar.js
@@ -21,7 +21,7 @@ class Sidebar {
 			this.unconnectedNodeListComponent.render(),
 			this.excludedNodeListComponent.render(),
 			DOM.h('div', {
-				class: 'sidebar-bottom',
+				class: 'sidebar-bottom affix-bottom',
 			}, [
 				this.minimapComponent.render(),
 				this.statusBarComponent.render(),
diff --git a/sources/imiger-core/src/main/webapp/js/components/vertex.js b/sources/imiger-core/src/main/webapp/js/components/vertex.js
index 6461265..dd156e1 100644
--- a/sources/imiger-core/src/main/webapp/js/components/vertex.js
+++ b/sources/imiger-core/src/main/webapp/js/components/vertex.js
@@ -340,7 +340,7 @@ class Vertex extends Node {
 		if (nodeList.length === 0) return;
 
 		app.viewportComponent.contextMenuComponent.vertex = this;
-		app.viewportComponent.contextMenuComponent.position = new Coordinates(e.clientX, e.clientY);
+		app.viewportComponent.contextMenuComponent.position = new Coordinates(e.clientX, e.layerY);
 
 		// fill list with items
 		nodeList.forEach(node => {
diff --git a/sources/imiger-core/src/main/webapp/showGraph.jsp b/sources/imiger-core/src/main/webapp/showGraph.jsp
index bdaef1b..0be2b26 100644
--- a/sources/imiger-core/src/main/webapp/showGraph.jsp
+++ b/sources/imiger-core/src/main/webapp/showGraph.jsp
@@ -124,12 +124,12 @@
 	</head>
 
 	<body class="${isLoggedIn ? 'loggedIn' : 'loggedOut'}">
-		<div class="container-fluid full-width no-margin">
+		<div class="container-fluid full-width no-margin full-height">
 			<div id="header" class="header"></div>
 			<div id="navbar" class="navbar p-0"></div>
-            <div class="container-fluid full-width no-margin">
-                <div class="row">
-                    <div class="col-10 p-0 no-margin" style="margin-righ:30px">
+            <div class="container-fluid full-width no-margin full-height">
+                <div class="row full-height">
+                    <div class="col-xs-10 p-0 no-margin" style="margin-righ:30px">
                         <c:if test = "${sessionScope.showTimeline eq true}">
                             <div class="row container-fluid timeline-container" style="">
                                 <div class="timeline-pane">
@@ -137,10 +137,10 @@
                                 </div>
                             </div>
                         </c:if>
-                        <div id="app" class="row"></div>
+                        <div id="app" class="row full-height no-margin"></div>
                     </div>
 
-                    <div class="col-2 p-0 no-margin d-flex" id="sidebar-container">
+                    <div class="col-xs-2 p-0 no-margin d-flex" id="sidebar-container">
 
 
                     </div>
