From 72798539a0992263eafc7d7c809cf47d759ce586 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20G=C3=BCnter?= Date: Fri, 22 Nov 2024 07:38:36 +0100 Subject: [PATCH] enable toggle debug popup (#1563) --- app/webapp/Component.js | 8 +++++++- app/webapp/cc/DebugTool.js | 7 +++++++ src/01/03/z2ui5_cl_app_component_js.clas.abap | 8 +++++++- src/01/03/z2ui5_cl_app_debugtool_js.clas.abap | 7 +++++++ 4 files changed, 28 insertions(+), 2 deletions(-) diff --git a/app/webapp/Component.js b/app/webapp/Component.js index 28f955d7..94045cd8 100644 --- a/app/webapp/Component.js +++ b/app/webapp/Component.js @@ -37,7 +37,13 @@ sap.ui.define(["sap/ui/core/UIComponent", "z2ui5/model/models", document.addEventListener("keydown", function (zEvent) { if (zEvent?.ctrlKey && zEvent?.key === "F12") { - new z2ui5.cc.DebugTool().show(); + if (!z2ui5.debugTool){ + z2ui5.debugTool = new z2ui5.cc.DebugTool(); + z2ui5.debugTool.show(); + } else { + z2ui5.debugTool.close(); + z2ui5.debugTool = null; + } } }); }, diff --git a/app/webapp/cc/DebugTool.js b/app/webapp/cc/DebugTool.js index 8e5ba736..c899692f 100644 --- a/app/webapp/cc/DebugTool.js +++ b/app/webapp/cc/DebugTool.js @@ -137,6 +137,13 @@ sap.ui.define(["sap/ui/core/Control", "sap/ui/core/Fragment", "sap/ui/model/json this.oDialog.addStyleClass('dbg-ltr'); this.oDialog.setModel(oModel); this.oDialog.open(); + }, + + async close(){ + if (this.oDialog){ + this.oDialog.close(); + this.oDialog.destry(); + } } }); }); diff --git a/src/01/03/z2ui5_cl_app_component_js.clas.abap b/src/01/03/z2ui5_cl_app_component_js.clas.abap index 0a513047..dda168ca 100644 --- a/src/01/03/z2ui5_cl_app_component_js.clas.abap +++ b/src/01/03/z2ui5_cl_app_component_js.clas.abap @@ -57,7 +57,13 @@ CLASS z2ui5_cl_app_component_js IMPLEMENTATION. `` && |\n| && ` document.addEventListener("keydown", function (zEvent) {` && |\n| && ` if (zEvent?.ctrlKey && zEvent?.key === "F12") {` && |\n| && - ` new z2ui5.cc.DebugTool().show();` && |\n| && + ` if (!z2ui5.debugTool){` && |\n| && + ` z2ui5.debugTool = new z2ui5.cc.DebugTool();` && |\n| && + ` z2ui5.debugTool.show();` && |\n| && + ` } else {` && |\n| && + ` z2ui5.debugTool.close();` && |\n| && + ` z2ui5.debugTool = null;` && |\n| && + ` }` && |\n| && ` }` && |\n| && ` });` && |\n| && ` },` && |\n| && diff --git a/src/01/03/z2ui5_cl_app_debugtool_js.clas.abap b/src/01/03/z2ui5_cl_app_debugtool_js.clas.abap index 838b7c2f..2488a87e 100644 --- a/src/01/03/z2ui5_cl_app_debugtool_js.clas.abap +++ b/src/01/03/z2ui5_cl_app_debugtool_js.clas.abap @@ -157,6 +157,13 @@ CLASS z2ui5_cl_app_debugtool_js IMPLEMENTATION. ` this.oDialog.addStyleClass('dbg-ltr');` && |\n| && ` this.oDialog.setModel(oModel);` && |\n| && ` this.oDialog.open();` && |\n| && + ` },` && |\n| && + `` && |\n| && + ` async close(){` && |\n| && + ` if (this.oDialog){` && |\n| && + ` this.oDialog.close();` && |\n| && + ` this.oDialog.destry();` && |\n| && + ` }` && |\n| && ` }` && |\n| && ` });` && |\n| && `});` && |\n| &&