Skip to content

Track and block prohibited inputs for keybinds#308

Closed
oznogon wants to merge 1 commit into
daid:masterfrom
oznogon:prohibit-inputs-for-keybinds
Closed

Track and block prohibited inputs for keybinds#308
oznogon wants to merge 1 commit into
daid:masterfrom
oznogon:prohibit-inputs-for-keybinds

Conversation

@oznogon

@oznogon oznogon commented Mar 24, 2026

Copy link
Copy Markdown
Contributor

Add functions to track and prohibit input types and specific inputs from being assigned to keybinds, either globally or for a specific bind. Toward daid/EmptyEpsilon#2721 and required for daid/EmptyEpsilon#2806.

  • addGloballyProhibitedTypes() prohibits a mask of input types from assignment to all keybinds.
  • addGloballyProhibitedKey() prohibits a specific input from assignment to all keybinds.
  • addProhibitedTypes() prohibits a mask of input types from assignment to a specific keybind.
  • addProhibitedKey() prohibits a specific input from assignment to a specific keybind.
  • isInputAllowed() returns true if an input is not prohibited.

Add functions to track and prohibit input types and specific inputs
from being assigned to keybinds, either globally or for a specific bind.
@daid

daid commented Mar 25, 2026

Copy link
Copy Markdown
Owner

This feels extremely overly complicated. I think we just want to prevent people from binding mouse interactions in the keybinding menu, and still allow it from the config file for edge cases...

@oznogon oznogon closed this Mar 25, 2026
@oznogon

oznogon commented Mar 25, 2026

Copy link
Copy Markdown
Contributor Author

I'd considered that, but without hooks in SP keybind reading there were edges where unwanted mouse inputs could still be set, even if we discarded the inputs for that functionality. I didn't want SP to have EE-specific checks, which would've been simpler than this.

I'll make a more minimal EE-only workaround and leave the edge cases alone.

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.

2 participants