From f9e587bd27972a901c25df6694d11e3884db1a8f Mon Sep 17 00:00:00 2001
From: Piotr Gawron <piotr.gawron@uni.lu>
Date: Fri, 19 May 2017 12:03:34 +0200
Subject: [PATCH] custom onresize event handlers added

---
 frontend-js/src/main/js/GuiConnector.js      | 21 +++++++++++++++++++-
 frontend-js/src/test/js/GuiConnector-mock.js |  8 --------
 2 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/frontend-js/src/main/js/GuiConnector.js b/frontend-js/src/main/js/GuiConnector.js
index 18257150fb..6ec2765271 100644
--- a/frontend-js/src/main/js/GuiConnector.js
+++ b/frontend-js/src/main/js/GuiConnector.js
@@ -21,15 +21,18 @@ GuiConnector.yPos = 0;
 /**
  * List of GET params passed via url.
  */
-GuiConnector.getParams = [];
 
 GuiConnector.init = function() {
+  var self = this;
+  
   // bootstrap tab initialization
   $("ul.nav-tabs a").click(function(e) {
     e.preventDefault();
     $(this).tab('show');
   });
 
+  self.getParams = [];
+
   // find GuiConnector.getParams
   document.location.search.replace(/\??(?:([^=]+)=([^&]*)&?)/g, function() {
     function decode(s) {
@@ -44,6 +47,22 @@ GuiConnector.init = function() {
       GuiConnector.updateMouseCoordinates(e.pageX, e.pageY);
     });
   });
+
+  self._windowResizeEvents = [];
+
+  if (window.onresize !== null) {
+    self.addWindowResizeEvent(window.onresize);
+  }
+
+  window.onresize = function() {
+    for (var i = 0; i < self._windowResizeEvents.length; i++) {
+      self._windowResizeEvents[i]();
+    }
+  }
+};
+
+GuiConnector.addWindowResizeEvent = function(handler) {
+  this._windowResizeEvents.push(handler);
 };
 
 /**
diff --git a/frontend-js/src/test/js/GuiConnector-mock.js b/frontend-js/src/test/js/GuiConnector-mock.js
index 7f5db59d00..6cafa12520 100644
--- a/frontend-js/src/test/js/GuiConnector-mock.js
+++ b/frontend-js/src/test/js/GuiConnector-mock.js
@@ -6,14 +6,6 @@ var OriginalGuiConnector = require('../../main/js/GuiConnector');
 
 var GuiConnectorMock = OriginalGuiConnector;
 
-GuiConnectorMock.init = function() {
-  //list of available listener types
-  this.listeners = [];
-
-  this.getParams = [];
-
-};
-
 GuiConnectorMock.alert = function(message) {
   logger.error(message);
   throw new Error(message);
-- 
GitLab