diff --git a/frontend-js/src/main/js/gui/leftPanel/OverlayPanel.js b/frontend-js/src/main/js/gui/leftPanel/OverlayPanel.js
index 651c3cfa10ea436008b0dfb66c6582d2cd9f78d6..704c9a051e4db1e415e5942c8515633905315958 100644
--- a/frontend-js/src/main/js/gui/leftPanel/OverlayPanel.js
+++ b/frontend-js/src/main/js/gui/leftPanel/OverlayPanel.js
@@ -468,12 +468,9 @@ OverlayPanel.prototype.refresh = function (showDefault) {
       selectedOverlay[visibleDataOverlays[j].getId()] = true;
     }
 
-    return self.getServerConnector().getOverlays({
-      publicOverlay: false,
-      creator: user.getLogin()
-    });
-  }).then(function (customOverlays) {
-    self.getProject().addOrUpdateDataOverlays(customOverlays);
+    return self.getServerConnector().getOverlays();
+  }).then(function (overlaysFromServer) {
+    self.getProject().addOrUpdateDataOverlays(overlaysFromServer);
 
     if (!showDefault) {
       var id = self.getMap().getBackgroundDataOverlay().getId();
@@ -486,15 +483,22 @@ OverlayPanel.prototype.refresh = function (showDefault) {
     var overlay;
 
     var overlays = self.getProject().getDataOverlays();
+    var customOverlays = [];
+    var defaultOverlay = null;
     for (var i = 0; i < overlays.length; i++) {
       overlay = overlays[i];
       if (overlay.getCreator() === undefined || overlay.getCreator() === "") {
         generalOverlays.push(overlay);
         if (showDefault && overlay.isDefaultOverlay()) {
-          selectedOverlay[overlay.getId()] = true;
+          defaultOverlay = overlay;
         }
+      } else {
+        customOverlays.push(overlay);
       }
     }
+    if (defaultOverlay !== null) {
+      selectedOverlay[defaultOverlay.getId()] = true;
+    }
 
     var table = self.getControlElement(PanelControlElementType.OVERLAY_GENERAL_OVERLAY_TABLE);
     table.appendChild(self.createTableHeader());
@@ -578,6 +582,8 @@ OverlayPanel.prototype.refresh = function (showDefault) {
       }
     }
     return Promise.all(promises);
+  }).then(function () {
+    return self.getMap().redrawSelectedDataOverlays();
   });
 };
 
diff --git a/frontend-js/src/main/js/map/data/DataOverlay.js b/frontend-js/src/main/js/map/data/DataOverlay.js
index 8e5a78f53b94ebf74836b88f7a77a635f1b7790a..5eab884b4a3b7d9d33bf66026b08b83fbc52b51a 100644
--- a/frontend-js/src/main/js/map/data/DataOverlay.js
+++ b/frontend-js/src/main/js/map/data/DataOverlay.js
@@ -414,6 +414,9 @@ DataOverlay.prototype.isGoogleLicenseConsent = function () {
  * @param {DataOverlay} overlay
  */
 DataOverlay.prototype.update = function (overlay) {
+  this.setPublicOverlay(overlay.getPublicOverlay());
+  this.setOrder(overlay.getOrder());
+  this.setCreator(overlay.getCreator());
   this.setName(overlay.getName());
   this.setDescription(overlay.getDescription());
 };
diff --git a/frontend-js/src/main/js/map/data/Project.js b/frontend-js/src/main/js/map/data/Project.js
index e01d1bffb3c1bbb63bab94e3ea3854cc0e9754f3..8e86530b1b17f1fa0ac904f3b8f50be6754983ca 100644
--- a/frontend-js/src/main/js/map/data/Project.js
+++ b/frontend-js/src/main/js/map/data/Project.js
@@ -32,6 +32,10 @@ function Project(data) {
   ObjectWithListeners.call(this);
   this.registerListenerType("onreload");
 
+  /**
+   * @type {Array<DataOverlay>}
+   * @private
+   */
   this._dataOverlays = [];
   this._models = [];
   this._elementsPointingToSubmap = [];
diff --git a/frontend-js/src/test/js/gui/leftPanel/OverlayPanel-test.js b/frontend-js/src/test/js/gui/leftPanel/OverlayPanel-test.js
index 690b906124bece411b8db6e68c6f9aeee2cc3d7c..08034713bc88ef6a1fe9944337adfedecd97645b 100644
--- a/frontend-js/src/test/js/gui/leftPanel/OverlayPanel-test.js
+++ b/frontend-js/src/test/js/gui/leftPanel/OverlayPanel-test.js
@@ -39,6 +39,7 @@ describe('OverlayPanel', function () {
   describe('refresh', function () {
     it('anonymous', function () {
       var map = helper.createCustomMap();
+      map.getProject().addDataOverlay(helper.createBackgroundOverlay());
 
       var panel = new OverlayPanel({
         element: testDiv,
@@ -55,6 +56,7 @@ describe('OverlayPanel', function () {
     it('admin', function () {
       helper.loginAsAdmin();
       var map = helper.createCustomMap();
+      map.getProject().addDataOverlay(helper.createBackgroundOverlay());
 
       var panel = new OverlayPanel({
         element: testDiv,
@@ -119,9 +121,7 @@ describe('OverlayPanel', function () {
   it('download', function () {
     var map = helper.createCustomMap();
 
-    var overlay = helper.createOverlay();
-    overlay.setInputDataAvailable(true);
-    map.getProject().addDataOverlay(overlay);
+    map.getProject().addDataOverlay(helper.createBackgroundOverlay());
 
     var panel = new OverlayPanel({
       element: testDiv,
diff --git a/frontend-js/src/test/js/helper.js b/frontend-js/src/test/js/helper.js
index fe698c7ae711d4f0638ac69997b22f819cf29588..2f850abaa0ef24bed2de3d72d82f329036e3908a 100644
--- a/frontend-js/src/test/js/helper.js
+++ b/frontend-js/src/test/js/helper.js
@@ -434,6 +434,19 @@ Helper.prototype.createOverlay = function (model) {
   });
 };
 
+/**
+ *
+ * @param {MapModel} [model]
+ * @returns {DataOverlay}
+ */
+Helper.prototype.createBackgroundOverlay = function (model) {
+  var result = this.createOverlay(model);
+  result.setInputDataAvailable(true);
+  result.setDefaultOverlay(true);
+  result.setName("empty");
+  return result;
+};
+
 /**
  *
  * @param {Project} [project]
diff --git a/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/overlays/token=MOCK_TOKEN_ID& b/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/overlays/token=MOCK_TOKEN_ID&
new file mode 100644
index 0000000000000000000000000000000000000000..b9254627b7ed1bdc5b5e83ae2da2e221f928c6ef
--- /dev/null
+++ b/frontend-js/testFiles/apiCalls/projects/complex_model_with_images/overlays/token=MOCK_TOKEN_ID&
@@ -0,0 +1 @@
+[{"defaultOverlay":false,"deprecatedColumns":[],"description":null,"googleLicenseConsent":false,"idObject":17987,"images":[{"modelId":19397,"path":"_nested0"},{"modelId":19399,"path":"_nested3"},{"modelId":19398,"path":"_nested1"},{"modelId":19400,"path":"_nested2"}],"inputDataAvailable":false,"name":"Pathways and compartments","order":1,"publicOverlay":true},{"defaultOverlay":false,"deprecatedColumns":[],"description":null,"googleLicenseConsent":false,"idObject":17988,"images":[{"modelId":19397,"path":"_normal0"},{"modelId":19399,"path":"_normal3"},{"modelId":19398,"path":"_normal1"},{"modelId":19400,"path":"_normal2"}],"inputDataAvailable":false,"name":"Network","order":1,"publicOverlay":true},{"defaultOverlay":false,"deprecatedColumns":[],"description":null,"googleLicenseConsent":false,"idObject":17989,"images":[{"modelId":19397,"path":"_empty0"},{"modelId":19399,"path":"_empty3"},{"modelId":19398,"path":"_empty1"},{"modelId":19400,"path":"_empty2"}],"inputDataAvailable":false,"name":"Empty","order":1,"publicOverlay":true}]
\ No newline at end of file