@@ -86,13 +86,15 @@ public static ModularPanel defaultPopupPanel(String name) {
8686
8787 public static ModularPanel defaultPopupPanel (String name , boolean disableBelow ,
8888 boolean closeOnOutsideClick , boolean deleteCachedPanel ) {
89- return new PopupPanel (name , DEFAULT_WIDTH , DEFAULT_HIEGHT , disableBelow , closeOnOutsideClick , deleteCachedPanel );
89+ return new PopupPanel (name , DEFAULT_WIDTH , DEFAULT_HIEGHT , disableBelow , closeOnOutsideClick ,
90+ deleteCachedPanel );
9091 }
9192
9293 private static class PopupPanel extends ModularPanel {
9394
9495 private final boolean disableBelow ;
9596 private final boolean closeOnOutsideClick ;
97+ private final boolean deleteCachedPanel ;
9698
9799 public PopupPanel (@ NotNull String name ) {
98100 this (name , DEFAULT_WIDTH , DEFAULT_HIEGHT );
@@ -116,15 +118,21 @@ public PopupPanel(@NotNull String name, int width, int height, boolean disableBe
116118 .onMousePressed (mouseButton -> {
117119 if (mouseButton == 0 || mouseButton == 1 ) {
118120 this .closeIfOpen (true );
119- if (deleteCachedPanel && isSynced () && getSyncHandler () instanceof IPanelHandler handler ) {
120- handler .deleteCachedPanel ();
121- }
122121 return true ;
123122 }
124123 return false ;
125124 }));
126125 this .disableBelow = disableBelow ;
127126 this .closeOnOutsideClick = closeOnOutsideClick ;
127+ this .deleteCachedPanel = deleteCachedPanel ;
128+ }
129+
130+ @ Override
131+ public void onClose () {
132+ super .onClose ();
133+ if (deleteCachedPanel && isSynced () && getSyncHandler () instanceof IPanelHandler handler ) {
134+ handler .deleteCachedPanel ();
135+ }
128136 }
129137
130138 @ Override
0 commit comments