Offload keyboard tracker to the engine
Centralising it in the backend breaks the enhanced branch's rebinding menu.
This commit is contained in:
parent
d62ca286f6
commit
aef0f81f28
4 changed files with 6 additions and 7 deletions
|
@ -264,8 +264,6 @@ BOOL Backend_SystemTask(void)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
memcpy(backend_previous_keyboard_state, backend_keyboard_state, sizeof(backend_keyboard_state));
|
|
||||||
|
|
||||||
glfwPollEvents();
|
glfwPollEvents();
|
||||||
|
|
||||||
while (!bActive)
|
while (!bActive)
|
||||||
|
|
|
@ -85,7 +85,6 @@ enum
|
||||||
|
|
||||||
extern BOOL bActive;
|
extern BOOL bActive;
|
||||||
extern BOOL backend_keyboard_state[BACKEND_KEYBOARD_TOTAL];
|
extern BOOL backend_keyboard_state[BACKEND_KEYBOARD_TOTAL];
|
||||||
extern BOOL backend_previous_keyboard_state[BACKEND_KEYBOARD_TOTAL];
|
|
||||||
|
|
||||||
void Backend_Init(void);
|
void Backend_Init(void);
|
||||||
void Backend_Deinit(void);
|
void Backend_Deinit(void);
|
||||||
|
|
|
@ -97,8 +97,6 @@ void PlaybackBackend_EnableDragAndDrop(void)
|
||||||
|
|
||||||
BOOL Backend_SystemTask(void)
|
BOOL Backend_SystemTask(void)
|
||||||
{
|
{
|
||||||
memcpy(backend_previous_keyboard_state, backend_keyboard_state, sizeof(backend_keyboard_state));
|
|
||||||
|
|
||||||
while (SDL_PollEvent(NULL) || !bActive)
|
while (SDL_PollEvent(NULL) || !bActive)
|
||||||
{
|
{
|
||||||
SDL_Event event;
|
SDL_Event event;
|
||||||
|
|
|
@ -385,12 +385,14 @@ void JoystickProc(void);
|
||||||
|
|
||||||
BOOL SystemTask(void)
|
BOOL SystemTask(void)
|
||||||
{
|
{
|
||||||
|
static BOOL previous_keyboard_state[BACKEND_KEYBOARD_TOTAL];
|
||||||
|
|
||||||
if (!Backend_SystemTask())
|
if (!Backend_SystemTask())
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
for (unsigned int i = 0; i < BACKEND_KEYBOARD_TOTAL; ++i)
|
for (unsigned int i = 0; i < BACKEND_KEYBOARD_TOTAL; ++i)
|
||||||
{
|
{
|
||||||
if (backend_keyboard_state[i] && !backend_previous_keyboard_state[i])
|
if (backend_keyboard_state[i] && !previous_keyboard_state[i])
|
||||||
{
|
{
|
||||||
switch (i)
|
switch (i)
|
||||||
{
|
{
|
||||||
|
@ -476,7 +478,7 @@ BOOL SystemTask(void)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (!backend_keyboard_state[i] && backend_previous_keyboard_state[i])
|
else if (!backend_keyboard_state[i] && previous_keyboard_state[i])
|
||||||
{
|
{
|
||||||
switch (i)
|
switch (i)
|
||||||
{
|
{
|
||||||
|
@ -560,6 +562,8 @@ BOOL SystemTask(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
memcpy(previous_keyboard_state, backend_keyboard_state, sizeof(backend_keyboard_state));
|
||||||
|
|
||||||
// Run joystick code
|
// Run joystick code
|
||||||
if (gbUseJoystick)
|
if (gbUseJoystick)
|
||||||
JoystickProc();
|
JoystickProc();
|
||||||
|
|
Loading…
Add table
Reference in a new issue