Skip to content

fix: the pointer stays over what scripts draw on the menus - #1330

Merged
vdmkenny merged 1 commit into
mainfrom
fix/pointer-over-scripts
Oct 23, 2026
Merged

vdmkenny merged 1 commit into
mainfrom
fix/pointer-over-scripts

Conversation

@vdmkenny

Copy link
Copy Markdown
Collaborator

The front end's own screens and the in-game menus drew their pointer inside their own drawing, before the scripts drew over the screen. So a script that drew where the pointer was covered it. The rooms and a mod's screen already drew theirs after the scripts.

  • The 11 screens leave the pointer out (main menu, game options, settings, mods, mod options, GET MODS, game modes, pilot roster, saved games, in-game options, restart).
  • Each driver draws it after the scripts' drawing, through canvas.Canvas.drawPointer:
    • the front end, for each screen it shows (Interface.drawPointer);
    • the rooms' driver, for the menus over the rooms;
    • flight, for the pause menu (PauseMenu.drawPointer).
  • The restart screen keeps its pointer at the screen's brightness, and hides it once a choice is made (Restart.drawPointer).
  • The pause menu now frees the settings screen it leaves on the next frame, so the frame that leaves it can still draw its pointer.
  • With the developers' keys on, the main menu's mission number now goes under the pointer: marked as an improvement.

Checked with the tests, and a new test that the restart screen's pointer stops once a choice is made.

Closes #1171

The front end's own screens and the in-game menus drew their pointer
inside their own drawing, before the scripts drew over the screen, so a
script that drew where the pointer was covered it. The rooms and a mod's
screen already drew theirs after the scripts.

Each screen now leaves the pointer out, and its driver draws it after the
scripts' drawing (canvas.Canvas.drawPointer): the front end for each
screen it shows, the rooms' driver for the menus over the rooms, and
flight for the pause menu. The restart screen keeps its pointer at the
screen's brightness and hides it once a choice is made. The pause menu
keeps the settings screen it leaves until the next frame, so that frame's
pointer can still be drawn.
@vdmkenny
vdmkenny merged commit 611e21d into main Oct 23, 2026
4 checks passed
@vdmkenny
vdmkenny deleted the fix/pointer-over-scripts branch October 23, 2026 22:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The front end's screens draw their pointer over what scripts draw

1 participant