From b4d2ba9fb3f4a28167cb88ec37ac63b245ee519c Mon Sep 17 00:00:00 2001
From: florian <f.spreckelsen@inidscale.com>
Date: Mon, 16 Jan 2023 16:56:59 +0100
Subject: [PATCH] WIP: Add show preview event

---
 src/core/js/ext_prop_display.js | 26 +++++++++++++++-----------
 1 file changed, 15 insertions(+), 11 deletions(-)

diff --git a/src/core/js/ext_prop_display.js b/src/core/js/ext_prop_display.js
index f74d7000..92df5949 100644
--- a/src/core/js/ext_prop_display.js
+++ b/src/core/js/ext_prop_display.js
@@ -210,22 +210,26 @@ var prop_display = new function ($, edit_mode, getEntityName, getEntityRole, get
             this.displayProperties(entities, conf, allTypes, userName, userRoles);
             // If we are in the edit mode, (un)hide properties after ending
             // the editing of an entity
-            document.body.addEventListener(edit_mode.start_edit.type, (e) => {
-                edit_mode.app.onAfterShowResults = this._displayPropertiesWrapper(edit_mode.app.onAfterShowResults, conf, allTypes);
-            }, true);
+            for (let event_t of [edit_mode.start_edit.type, preview.showPreviewEvent.type]) {
+                document.body.addEventListener(event_t, (e) => {
+                    edit_mode.app.onAfterShowResults = this._displayPropertiesWrapper(edit_mode.app.onAfterShowResults, conf, allTypes);
+                }, true);
+            }
 
         } else {
             // There are no properties to be hidden, so make this clear in HTML body
             $("body").attr("data-hidden-properties", "false")
             this.unhideAllProperties();
-            document.body.addEventListener(edit_mode.start_edit.type, (e) => {
-                // also unhide properties when leaving the edit mode
-                // TODO(fspreck): We're lacking a proper state/event here in the
-                // edit mode, so do this on "init", since this is the state to which
-                // the state machine returns after either successfully saving an
-                // entity or canceling the edit.
-                edit_mode.app.onAfterShowResults = this._unhideAllPropertiesWrapper(edit_mode.app.onAfterShowResults);
-            }, true);
+            for (let event_t of [edit_mode.start_edit.type, preview.showPreviewEvent.type]) {
+                document.body.addEventListener(edit_mode.start_edit.type, (e) => {
+                    // also unhide properties when leaving the edit mode
+                    // TODO(fspreck): We're lacking a proper state/event here in the
+                    // edit mode, so do this on "init", since this is the state to which
+                    // the state machine returns after either successfully saving an
+                    // entity or canceling the edit.
+                    edit_mode.app.onAfterShowResults = this._unhideAllPropertiesWrapper(edit_mode.app.onAfterShowResults);
+                }, true);
+            }
         }
     }
 }($, edit_mode, getEntityName, getEntityRole, getPropertyElements, getPropertyName, getUserName, getUserRoles, log.getLogger("ext_prop_display"), load_config, query);
-- 
GitLab