fix: guard GrabFirstFocus on pointerless, unsub VisibilityChanged in _ExitTree
This commit is contained in:
@@ -36,6 +36,7 @@ public partial class AudioSettings : Control
|
||||
{
|
||||
if (InputDeviceManager.Instance != null)
|
||||
InputDeviceManager.Instance.DeviceChanged -= OnDeviceChanged;
|
||||
AudioSettingsControl.VisibilityChanged -= OnVisibilityChanged;
|
||||
SaveSettings();
|
||||
}
|
||||
|
||||
|
||||
@@ -40,7 +40,8 @@ public partial class MainMenu : Control
|
||||
InputDeviceManager.Instance.DeviceChanged += OnDeviceChanged;
|
||||
VisibilityChanged += OnVisibilityChanged;
|
||||
|
||||
GrabFirstFocus();
|
||||
if (InputDeviceManager.Instance?.IsPointerless == true)
|
||||
GrabFirstFocus();
|
||||
}
|
||||
|
||||
public override void _ExitTree()
|
||||
|
||||
@@ -39,6 +39,7 @@ public partial class PauseMenu : Control
|
||||
{
|
||||
if (InputDeviceManager.Instance != null)
|
||||
InputDeviceManager.Instance.DeviceChanged -= OnDeviceChanged;
|
||||
PauseMenuControl.VisibilityChanged -= OnVisibilityChanged;
|
||||
}
|
||||
|
||||
private void OnVisibilityChanged()
|
||||
|
||||
Reference in New Issue
Block a user