What is the best way to toggle a mouse-driven UI overlay?

At the moment I have an SButton which calls ExitCursorMode. When the button is clicked, the cursor becomes locked to the viewport (because of LockToWidget), but moving it does not control the camera, and child widgets in my UI still show mouse-over effects, such as SListView highlighting the background of child entries in the list, SButtons highlighting when the cursor is over them, too, which leads me to believe my widget still has focus at that point, especially given that I can click on widgets as per normal. The keyboard is able to control the player’s movement. At this stage clicking on an area not populated by UI elements restores mouse control to the player’s camera, and hides the cursor.

I’ve identified the cursor’s visibility as being due to my use of .Cursor() on my widget when I created it, but removing that part of widget initialization means that the cursor disappears when I click the button, but I still need to move my now-invisible cursor back to an empty location of the screen and click in order for mouse movement to control the camera.