mirror of
https://github.com/spice2x/spice2x.github.io.git
synced 2026-08-02 14:50:41 -07:00
api: check for window focus when accepting input (#317)
## Link to GitHub Issue, if one exists Fixes #139 ## Description of change Add an option for detecting window focus when accepting input. The new default will be to have the following: * naive bindings will check for window focus * rawinput binds are not affected, will continue to be accepted regardless of focus Other options (always / never choices) can be picked by the user to tweak the behavior if needed. Clean up usage of `0xff` constant to represent invalid naive vkey. ## Testing Still in progress, especially in regards to performance. On a i7-9700 system, 10000 calls to `superexit::has_focus()` takes 250-350 microseconds, so this should not be a big deal at all.
This commit is contained in:
@@ -28,6 +28,9 @@ namespace rawinput {
|
||||
|
||||
extern uint32_t MIDI_NOTE_SUSTAIN;
|
||||
|
||||
extern bool NAIVE_REQUIRE_FOCUS;
|
||||
extern bool RAWINPUT_REQUIRE_FOCUS;
|
||||
|
||||
struct DeviceCallback {
|
||||
void *data;
|
||||
std::function<void(void*, Device*)> f;
|
||||
|
||||
Reference in New Issue
Block a user