@@ -38,6 +38,8 @@ public class EditWindowsController : MonoBehaviour
3838 public Button MoveUp { get ; set ; }
3939 public Button MoveDown { get ; set ; }
4040
41+ private bool _windowToggled ;
42+
4143 public EditWindowsController ( )
4244 { }
4345
@@ -55,7 +57,7 @@ private System.Collections.IEnumerator StartInitialization()
5557 Root = EditWindows . rootVisualElement ;
5658
5759 CloseButton = Root . Q < Button > ( "close-button" ) ;
58- CloseButton . RegisterCallback < PointerUpEvent > ( _ => CloseWindow ( ) ) ;
60+ CloseButton . RegisterCallback < PointerUpEvent > ( _ => ToggleWindow ( ) ) ;
5961 AvailableScrollView = Root . Q < ScrollView > ( "available-scrollview" ) ;
6062 AvailableScrollView . StopMouseEventsToGameInputPropagation ( ) ;
6163 InstalledScrollView = Root . Q < ScrollView > ( "installed-scrollview" ) ;
@@ -87,6 +89,8 @@ private System.Collections.IEnumerator StartInitialization()
8789 BuildCategoryDropdown ( ) ;
8890 _editableWindows = FlightSceneController . Instance . GetEditableWindows ( ) ;
8991 ResetSelectedWindow ( ) ;
92+
93+ _windowToggled = true ;
9094 }
9195
9296 public void Update ( )
@@ -383,11 +387,19 @@ private void RebuildFlightUI()
383387 FlightSceneController . Instance . RebuildUI ( ) ;
384388 }
385389
386- public void CloseWindow ( )
390+ public void ToggleWindow ( ) => ToggleWindow ( ! _windowToggled ) ;
391+ public void ToggleWindow ( bool state )
387392 {
388- if ( EditWindows != null && EditWindows . gameObject != null )
389- EditWindows . gameObject . DestroyGameObject ( ) ;
390- GameObject . Destroy ( EditWindows ) ;
393+ if ( state )
394+ {
395+ Root . style . display = DisplayStyle . Flex ;
396+ }
397+ else
398+ {
399+ Root . style . display = DisplayStyle . None ;
400+ }
401+
402+ _windowToggled = state ;
391403 }
392404 }
393405}
0 commit comments