Code/Demos/DemoCursorVisible.cs
using Sandbox;
namespace Sandbox;
// forces the OS cursor visible on enable and restores previous visibility on disable; lets you click/hover Goo panels in smoke scenes without a game-input router (MouseVisibility.Auto requires the engine's InputContext to already be in UI mode, which doesn't happen for plain world panels).
[Title( "Demo: Cursor Visible" ), Category( "UI/Demo" ), Icon( "mouse" )]
public sealed class DemoCursorVisible : Component
{
MouseVisibility _prev;
protected override void OnEnabled()
{
_prev = Mouse.Visibility;
Mouse.Visibility = MouseVisibility.Visible;
}
protected override void OnDisabled()
{
Mouse.Visibility = _prev;
}
}