fix(hid): HOS_INPUT_SCRIPT_BACKGROUND no longer lets the player's keyboard into a test run #319

Open
d4nkn3ss wants to merge 1 commit from d4nkn3ss/Longshot:fix/input-script-background into main
Contributor

Type: fix · Risk: low · Tested on: Windows 11, RTX 3080 · Needs: none

Why

A test run started with HOS_INPUT_SCRIPT_BACKGROUND=1 takes the keyboard of whoever is using the PC, even when its window is behind another one. Typing in another window, even in a chat, moves Link, makes him jump, and Enter pauses the game, which spoils the run. I searched the tracker (forge.py issue list --state all) and found no issue for this. The switch came from https://github.com/NotRexed/Hookshot/issues/389.

How to reproduce

Seen on: Windows 11 Pro 26300, RTX 3080 10 GB, NVIDIA 621.14
Settings and switches: defaults; HOS_INPUT_SCRIPT_BACKGROUND=1, HOS_INPUT_LIVE=<file>, HOS_SKIP_OPENING=1, a window that never takes focus (scripts/run-vk.ps1 -Window)
Steps: append 0:A lines to the live file until the test save is in play, then click into another window and press Enter, hold W, type in a chat
Expected: the game behind ignores the keys; only the script's presses reach it
Actual: each Enter pauses the game (control: state play -> menu), and Link walks and jumps while the user types elsewhere

What changed

With HOS_INPUT_SCRIPT_BACKGROUND set, the game no longer skips the "is my window in front" check, so the player's keyboard and mouse stay out of a game behind another window. Scripted and control-bridge presses never needed the switch: they are put in before that check. The switch now only writes a log line saying it is no longer needed.

  • hid: read_input() in host/nn_hid.c keeps the focus gate with the switch set. scripted_input() and hos_control_input() add their presses before the gate, so they already count with the window behind (the existing script-background case). Skipping the gate let through only the player's devices: the keyboard (GetAsyncKeyState sees every key whatever window is in front, so headless runs too) and the mouse.
  • tests: tests/test_input_background.py gets a case, script-background-switch: the window behind, the switch set, a bound key held. It fails on main and passes here.
  • docs: the switch's row in docs/development.md; the two runs below as files in docs/tested/.

Measurements

Verdict: fixed: Enter pressed in other windows paused the game 3 times on main and 0 times with this PR, and Link no longer moves while the user types elsewhere; the new game-free case fails on main aa95d35f and passes on this PR @ dbf3a2d1.

Baseline: the in-game A/B ran on 2026-11-13, main @ fbd42024 (its host/nn_hid.c as 514591a3) against this PR @ 3fb77017. The PR has since been rebased onto main aa95d35f. Main has changed host/nn_hid.c since then (the Walk key, #66), but not the lines this PR changes, and the game-free case below reruns the comparison on the current commits: it fails on main aa95d35f and passes on dbf3a2d1.
Hardware: Windows 11 Pro 26300, RTX 3080 10 GB, NVIDIA 621.14, i9-12900K, 64 GB
Scene: the test save, in play, a window that never takes focus (scripts/run-vk.ps1 -Window), default settings
Method: a behaviour check, one run each with the user at the keyboard. The script presses A into the save, then stops; the user presses Enter twice in other windows, holds W, and types in a chat window. Counted: the control: state play -> menu lines in longshot_log.txt, and what the user saw. Each run, tests/test_input_background.py's script-background-switch case repeats it game-free.
How to reproduce: scripts/run-vk.ps1 -Window -Env "HOS_INPUT_SCRIPT_BACKGROUND=1;HOS_INPUT_LIVE=<file>;HOS_SKIP_OPENING=1", append 0:A lines to the file until in play, then click into another window and press Enter.

Before: main @ fbd42024 After: this PR @ 3fb77017
pauses from Enter pressed in other windows 3 0
Link moved while the user typed elsewhere yes (walked, jumped) no
Before: main @ aa95d35f After: this PR @ dbf3a2d1
test_input_background.py with the script-background-switch case fails (fixture.exe script-background-switch exits 1: the bound key reaches the game behind) passes
main @ fbd42024:
hid: scripted input runs with the game in the background (HOS_INPUT_SCRIPT_BACKGROUND)
hid: game window not in front (foreground window: process 0, class "")
control: state play -> menu at frame 5731 (146.4 draws a frame)
control: state menu -> play at frame 6101 (545.4 draws a frame)
control: state play -> menu at frame 6217 (146.3 draws a frame)
control: state menu -> play at frame 6300 (636.9 draws a frame)
control: state play -> menu at frame 6398 (146.0 draws a frame)
control: state menu -> play at frame 6437 (722.6 draws a frame)

this PR @ 3fb77017:
hid: HOS_INPUT_SCRIPT_BACKGROUND is no longer needed: scripted and control-bridge presses count with the game's window behind another one, and the player's keyboard and mouse stay out
(no state play -> menu line)

main @ aa95d35f, tests/test_input_background.py from this PR:
subprocess.CalledProcessError: Command '[...\fixture.exe', 'script-background-switch']' returned non-zero exit status 1.

this PR @ dbf3a2d1:
PASS: latch mouse/background routing
PASS: Walk Hold/Toggle beside button Toggle; independent edges, speed and menu/focus/pause resets

Flags and settings

This PR changes what one test switch does: HOS_INPUT_SCRIPT_BACKGROUND no longer lets the player's devices through.

Flag What it is Before this PR After this PR Effect Helps / doesn't help / untested Recommendation
HOS_INPUT_SCRIPT_BACKGROUND A test switch for scripted runs with the window behind Set: the focus gate skipped, so the player's keyboard and mouse reached a game behind another window Set: only a log line saying it is no longer needed A test run on a PC someone is using no longer takes their keys Helps: any windowed or headless test run on Windows. Untested: Linux (the keyboard comes through SDL, behind the same gate) Unset; can be removed from scripts

Testing

Tested:

  • python -I -B tests/run_all.py on Windows 11 (llvm-mingw from the Longshot Builder), on this PR @ dbf3a2d1 and on main @ aa95d35f: 541 passed, 17 failed, 35 skipped on both, and the same 17 fail on both: test_appimage_player_build, test_cpm_discovery, test_cpp_preflight, test_crash_dialog, test_env_on, test_lift_cleanup_error, test_linux_preflight, test_make_game_cache, test_make_game_prepare, test_missing_nup, test_oot_state_tap, test_options_budget_once, test_readback_late, test_release, test_tested_configurations (its CRLF pipe case), test_vk_pgo, test_walk_key (undefined symbol: hos_oot_autoload_input, on main too).
  • Of the 20 checks that read host/nn_hid.c, 18 pass, test_walk_key fails as on main (above), and test_pipeline_tour gave no result (it stops on "the tour's run is not given --vk-profile", on main too).
  • In the game, on the PC under Measurements: the A/B above, with the user at the keyboard. With this PR the script's presses still drove the game into play with the window behind.

Not tested:

  • A Linux build: the host/nn_hid.c diff drops one condition (&& !scripted_background) and changes a log string, with no new call, header or path, so it builds wherever main does; built on Windows (llvm-mingw, the game and the test fixture).
  • Linux in the game: the keyboard there comes from SDL, read through the same read_input() gate, so it should behave the same. I didn't run it.
  • A pad in the background with the switch set: it now follows HOS_INPUT_BACKGROUND and the menu's "Controller in background" row, as without the switch (the pads-env and pads-menu cases cover it game-free).

Must be tested: None. The game-free case covers the change on every run, and the in-game check is above.

Risks

What could break: a script that counted on the switch to let a person's keyboard or mouse into a game behind another window loses that. Nothing in this repository sets it.

Turning it off: revert the commit.

Compatibility: Nothing changes for a player: the switch is for test runs only, and saves, longshot_options.ini, the caches and the vk ABI are untouched.

The window counts as in front while a tool window or overlay is in front (the taskbar, a notification) if the game was the last normal window in front: game_in_front(). So a test window someone clicked into still takes their keys after they click the taskbar. That is the player's case and is unchanged here.

Checklist

Everyone

  • One topic.
  • The title is a Conventional Commit (type(scope): description) of the status line's type.
  • Why gives the reason plainly and links the issues that fit (the tracker searched).
  • Measurements has a verdict, or one line saying why there is nothing to measure.
  • Testing names what was tested, what wasn't, and what must still be tested, where and how.
  • Rebased on current main.
  • python -I -B tests/run_all.py passes (any failure that also fails on main is named).
  • No game files, dumps, build output or generated files.
  • third_party/ untouched (a new folder with a PROVENANCE.md instead).
  • The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled.

When it applies

  • AI assistance recorded with Assisted-by: / Co-Authored-By: trailers.
  • Switches documented (docs/development.md; the README for a menu row) and shipped at their recommended value.
  • A file in docs/tested/ for each new measured run (format in docs/tested-configurations.md).
  • A game-free test added for the fix, failing on main and passing here.
  • A check under tests/ that reads changed source updated in this PR, not weakened.
  • Host code builds on both Windows (llvm-mingw) and Linux, with UTF-8 paths.
  • Docs updated.

🤖 Generated with Claude Code

**Type:** fix · **Risk:** low · **Tested on:** Windows 11, RTX 3080 · **Needs:** none ## Why A test run started with `HOS_INPUT_SCRIPT_BACKGROUND=1` takes the keyboard of whoever is using the PC, even when its window is behind another one. Typing in another window, even in a chat, moves Link, makes him jump, and Enter pauses the game, which spoils the run. I searched the tracker (`forge.py issue list --state all`) and found no issue for this. The switch came from https://github.com/NotRexed/Hookshot/issues/389. ## How to reproduce **Seen on:** Windows 11 Pro 26300, RTX 3080 10 GB, NVIDIA 621.14 **Settings and switches:** defaults; `HOS_INPUT_SCRIPT_BACKGROUND=1`, `HOS_INPUT_LIVE=<file>`, `HOS_SKIP_OPENING=1`, a window that never takes focus (`scripts/run-vk.ps1 -Window`) **Steps:** append `0:A` lines to the live file until the test save is in play, then click into another window and press Enter, hold W, type in a chat **Expected:** the game behind ignores the keys; only the script's presses reach it **Actual:** each Enter pauses the game (`control: state play -> menu`), and Link walks and jumps while the user types elsewhere ## What changed With `HOS_INPUT_SCRIPT_BACKGROUND` set, the game no longer skips the "is my window in front" check, so the player's keyboard and mouse stay out of a game behind another window. Scripted and control-bridge presses never needed the switch: they are put in before that check. The switch now only writes a log line saying it is no longer needed. - hid: `read_input()` in `host/nn_hid.c` keeps the focus gate with the switch set. `scripted_input()` and `hos_control_input()` add their presses before the gate, so they already count with the window behind (the existing `script-background` case). Skipping the gate let through only the player's devices: the keyboard (`GetAsyncKeyState` sees every key whatever window is in front, so headless runs too) and the mouse. - tests: `tests/test_input_background.py` gets a case, `script-background-switch`: the window behind, the switch set, a bound key held. It fails on main and passes here. - docs: the switch's row in `docs/development.md`; the two runs below as files in `docs/tested/`. ## Measurements **Verdict:** fixed: Enter pressed in other windows paused the game 3 times on main and 0 times with this PR, and Link no longer moves while the user types elsewhere; the new game-free case fails on main aa95d35f and passes on this PR @ dbf3a2d1. Baseline: the in-game A/B ran on 2026-11-13, main @ fbd42024 (its `host/nn_hid.c` as 514591a3) against this PR @ 3fb77017. The PR has since been rebased onto main aa95d35f. Main has changed `host/nn_hid.c` since then (the Walk key, #66), but not the lines this PR changes, and the game-free case below reruns the comparison on the current commits: it fails on main aa95d35f and passes on dbf3a2d1. Hardware: Windows 11 Pro 26300, RTX 3080 10 GB, NVIDIA 621.14, i9-12900K, 64 GB Scene: the test save, in play, a window that never takes focus (`scripts/run-vk.ps1 -Window`), default settings Method: a behaviour check, one run each with the user at the keyboard. The script presses A into the save, then stops; the user presses Enter twice in other windows, holds W, and types in a chat window. Counted: the `control: state play -> menu` lines in `longshot_log.txt`, and what the user saw. Each run, `tests/test_input_background.py`'s `script-background-switch` case repeats it game-free. How to reproduce: `scripts/run-vk.ps1 -Window -Env "HOS_INPUT_SCRIPT_BACKGROUND=1;HOS_INPUT_LIVE=<file>;HOS_SKIP_OPENING=1"`, append `0:A` lines to the file until in play, then click into another window and press Enter. | | Before: main @ fbd42024 | After: this PR @ 3fb77017 | |---|---|---| | pauses from Enter pressed in other windows | 3 | 0 | | Link moved while the user typed elsewhere | yes (walked, jumped) | no | | | Before: main @ aa95d35f | After: this PR @ dbf3a2d1 | |---|---|---| | `test_input_background.py` with the `script-background-switch` case | fails (`fixture.exe script-background-switch` exits 1: the bound key reaches the game behind) | passes | ``` main @ fbd42024: hid: scripted input runs with the game in the background (HOS_INPUT_SCRIPT_BACKGROUND) hid: game window not in front (foreground window: process 0, class "") control: state play -> menu at frame 5731 (146.4 draws a frame) control: state menu -> play at frame 6101 (545.4 draws a frame) control: state play -> menu at frame 6217 (146.3 draws a frame) control: state menu -> play at frame 6300 (636.9 draws a frame) control: state play -> menu at frame 6398 (146.0 draws a frame) control: state menu -> play at frame 6437 (722.6 draws a frame) this PR @ 3fb77017: hid: HOS_INPUT_SCRIPT_BACKGROUND is no longer needed: scripted and control-bridge presses count with the game's window behind another one, and the player's keyboard and mouse stay out (no state play -> menu line) main @ aa95d35f, tests/test_input_background.py from this PR: subprocess.CalledProcessError: Command '[...\fixture.exe', 'script-background-switch']' returned non-zero exit status 1. this PR @ dbf3a2d1: PASS: latch mouse/background routing PASS: Walk Hold/Toggle beside button Toggle; independent edges, speed and menu/focus/pause resets ``` ### Flags and settings This PR changes what one test switch does: `HOS_INPUT_SCRIPT_BACKGROUND` no longer lets the player's devices through. | Flag | What it is | Before this PR | After this PR | Effect | Helps / doesn't help / untested | Recommendation | |---|---|---|---|---|---|---| | `HOS_INPUT_SCRIPT_BACKGROUND` | A test switch for scripted runs with the window behind | Set: the focus gate skipped, so the player's keyboard and mouse reached a game behind another window | Set: only a log line saying it is no longer needed | A test run on a PC someone is using no longer takes their keys | Helps: any windowed or headless test run on Windows. Untested: Linux (the keyboard comes through SDL, behind the same gate) | Unset; can be removed from scripts | ## Testing **Tested:** - `python -I -B tests/run_all.py` on Windows 11 (llvm-mingw from the Longshot Builder), on this PR @ dbf3a2d1 and on main @ aa95d35f: 541 passed, 17 failed, 35 skipped on both, and the same 17 fail on both: `test_appimage_player_build`, `test_cpm_discovery`, `test_cpp_preflight`, `test_crash_dialog`, `test_env_on`, `test_lift_cleanup_error`, `test_linux_preflight`, `test_make_game_cache`, `test_make_game_prepare`, `test_missing_nup`, `test_oot_state_tap`, `test_options_budget_once`, `test_readback_late`, `test_release`, `test_tested_configurations` (its CRLF pipe case), `test_vk_pgo`, `test_walk_key` (`undefined symbol: hos_oot_autoload_input`, on main too). - Of the 20 checks that read `host/nn_hid.c`, 18 pass, `test_walk_key` fails as on main (above), and `test_pipeline_tour` gave no result (it stops on "the tour's run is not given --vk-profile", on main too). - In the game, on the PC under Measurements: the A/B above, with the user at the keyboard. With this PR the script's presses still drove the game into play with the window behind. **Not tested:** - A Linux build: the `host/nn_hid.c` diff drops one condition (`&& !scripted_background`) and changes a log string, with no new call, header or path, so it builds wherever main does; built on Windows (llvm-mingw, the game and the test fixture). - Linux in the game: the keyboard there comes from SDL, read through the same `read_input()` gate, so it should behave the same. I didn't run it. - A pad in the background with the switch set: it now follows `HOS_INPUT_BACKGROUND` and the menu's "Controller in background" row, as without the switch (the `pads-env` and `pads-menu` cases cover it game-free). **Must be tested:** None. The game-free case covers the change on every run, and the in-game check is above. ## Risks **What could break:** a script that counted on the switch to let a person's keyboard or mouse into a game behind another window loses that. Nothing in this repository sets it. **Turning it off:** revert the commit. **Compatibility:** Nothing changes for a player: the switch is for test runs only, and saves, `longshot_options.ini`, the caches and the vk ABI are untouched. The window counts as in front while a tool window or overlay is in front (the taskbar, a notification) if the game was the last normal window in front: `game_in_front()`. So a test window someone clicked into still takes their keys after they click the taskbar. That is the player's case and is unchanged here. ## Checklist ### Everyone - [x] One topic. - [x] The title is a Conventional Commit (`type(scope): description`) of the status line's type. - [x] Why gives the reason plainly and links the issues that fit (the tracker searched). - [x] Measurements has a verdict, or one line saying why there is nothing to measure. - [x] Testing names what was tested, what wasn't, and what must still be tested, where and how. - [x] Rebased on current `main`. - [x] `python -I -B tests/run_all.py` passes (any failure that also fails on `main` is named). - [x] No game files, dumps, build output or generated files. - [x] `third_party/` untouched (a new folder with a `PROVENANCE.md` instead). - [x] The license is OK: GPL-3.0-or-later, nothing incompatible and nothing decompiled. ### When it applies - [x] AI assistance recorded with `Assisted-by:` / `Co-Authored-By:` trailers. - [x] Switches documented (docs/development.md; the README for a menu row) and shipped at their recommended value. - [x] A file in `docs/tested/` for each new measured run (format in `docs/tested-configurations.md`). - [x] A game-free test added for the fix, failing on `main` and passing here. - [x] A check under `tests/` that reads changed source updated in this PR, not weakened. - [x] Host code builds on both Windows (llvm-mingw) and Linux, with UTF-8 paths. - [x] Docs updated. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
d4nkn3ss force-pushed fix/input-script-background from 2a8f331532
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 3s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
to 38f9d90fb6
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 11s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
2026-11-14 00:44:29 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from 38f9d90fb6
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 11s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
to 96f3047d72
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 3s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
2026-11-14 01:04:05 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from 96f3047d72
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 3s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
to 0268a234ca
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 7s
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
2026-11-14 01:24:16 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from 0268a234ca
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 7s
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
to 5dee9c7b54
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 6s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
2026-11-14 02:04:37 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from 5dee9c7b54
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 6s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
to e5b4789ef4
Some checks failed
PR description / Description follows the template (pull_request_target) Has been cancelled
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
2026-11-14 02:24:13 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from e5b4789ef4
Some checks failed
PR description / Description follows the template (pull_request_target) Has been cancelled
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
to d6b5679f4a
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 28s
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
2026-11-14 15:48:57 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from d6b5679f4a
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 28s
Website / Website on Cloudflare (pull_request_target) Has been skipped
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
to ab6deafc31
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 6s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
2026-11-14 23:38:28 +00:00
Compare
d4nkn3ss force-pushed fix/input-script-background from ab6deafc31
Some checks failed
PR description / Description follows the template (pull_request_target) Successful in 6s
CI / Conventional Commit title (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Has been cancelled
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Has been cancelled
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Has been cancelled
CI / Workflow lint (actionlint) (pull_request) Has been cancelled
Third-party parts / As their notes say (pull_request) Has been cancelled
Third-party parts / The same as upstream (pull_request) Has been cancelled
Website / Website on Cloudflare (pull_request) Has been cancelled
to dbf3a2d14c
Some checks are pending
CI / Conventional Commit title (pull_request) Blocked by required conditions
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Blocked by required conditions
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Blocked by required conditions
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Blocked by required conditions
CI / Workflow lint (actionlint) (pull_request) Blocked by required conditions
Guide screenshots / Guide images and local UI source review (pull_request) Blocked by required conditions
Third-party parts / As their notes say (pull_request) Blocked by required conditions
Third-party parts / The same as upstream (pull_request) Blocked by required conditions
Website / Website on Cloudflare (pull_request) Blocked by required conditions
PR description / Description follows the template (pull_request_target) Successful in 4s
2026-11-15 12:50:12 +00:00
Compare
Author
Contributor

Rebased onto main aa95d35f (dbf3a2d1). The two runs moved from the frozen table in docs/tested-configurations.md to files in docs/tested/, as the tested-runs rule now asks. run_all: 541 passed, 17 failed on both main aa95d35f and this PR, with the same 17 failing (named under Testing). The new case fails on main aa95d35f and passes here. Description rewritten to the current template.

Rebased onto main aa95d35f (dbf3a2d1). The two runs moved from the frozen table in docs/tested-configurations.md to files in docs/tested/, as the tested-runs rule now asks. run_all: 541 passed, 17 failed on both main aa95d35f and this PR, with the same 17 failing (named under Testing). The new case fails on main aa95d35f and passes here. Description rewritten to the current template.
d4nkn3ss changed title from WIP: fix(hid): HOS_INPUT_SCRIPT_BACKGROUND no longer lets the player's keyboard into a test run to fix(hid): HOS_INPUT_SCRIPT_BACKGROUND no longer lets the player's keyboard into a test run 2026-11-15 12:51:53 +00:00
Some checks are pending
CI / Conventional Commit title (pull_request) Blocked by required conditions
CI / Python source checks (ubuntu-24.04, part 1/2) (pull_request) Blocked by required conditions
CI / Python source checks (ubuntu-24.04, part 2/2) (pull_request) Blocked by required conditions
CI / SPIR-V fixtures (global narrow load/store, direct surface atomics, F2I immediate) (pull_request) Blocked by required conditions
CI / Workflow lint (actionlint) (pull_request) Blocked by required conditions
Guide screenshots / Guide images and local UI source review (pull_request) Blocked by required conditions
Third-party parts / As their notes say (pull_request) Blocked by required conditions
Third-party parts / The same as upstream (pull_request) Blocked by required conditions
Website / Website on Cloudflare (pull_request) Blocked by required conditions
PR description / Description follows the template (pull_request_target) Successful in 4s
This pull request doesn't have enough approvals yet. 0 of 1 approvals granted.
Some workflows are waiting to be reviewed.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u 'fix/input-script-background:d4nkn3ss-fix/input-script-background'
git switch 'd4nkn3ss-fix/input-script-background'
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
MagicBeanDev/Longshot!319
No description provided.