The PauseLayer stops all potential gui_input's from being processed as it's always in the SceneTree. For instance if you use any Control node in your gameplay scene and try to use gui_input signal to capture mouse events, the PauseLayer/MarginContainer/Control always captures the input and it's defaulted to "Stop"
Setting the mouse_filter to "Ignore" for all non-interactable PauseLayer children and setting the interactable Control's (PauseButton, Resume, MainMenu) to "Pass" resolves this issue
The PauseLayer stops all potential gui_input's from being processed as it's always in the SceneTree. For instance if you use any Control node in your gameplay scene and try to use gui_input signal to capture mouse events, the PauseLayer/MarginContainer/Control always captures the input and it's defaulted to "Stop"