Added logic to now pass ALT + Return to the SDL event queue as the is fullscreen toggle that is handled by GTK.

This commit is contained in:
Matthew Budd 2020-06-09 22:09:29 -04:00
parent d086714040
commit 1463e7c0f8
3 changed files with 21 additions and 0 deletions

View File

@ -2434,6 +2434,17 @@ static gboolean convertKeypress (GtkWidget * grab, GdkEventKey * event,
}
sdlev.key.repeat = 0;
if ( (event->state & GDK_MOD1_MASK) ||
getKeyState( SDL_SCANCODE_LALT ) || getKeyState( SDL_SCANCODE_RALT ) )
{
// Don't pass ALT + Enter to game, as this toggles fullscreen in GTK
if ( sdlkey == SDLK_RETURN )
{
return FALSE;
}
}
if (sdlkey != 0)
{
SDL_PushEvent (&sdlev);

View File

@ -147,6 +147,15 @@ static int DIPS = 0;
static uint8 keyonce[MKK_COUNT];
#define KEY(__a) g_keyState[MKK(__a)]
int getKeyState( int k )
{
if ( (k >= 0) && (k < SDL_NUM_SCANCODES) )
{
return g_keyState[k];
}
return 0;
}
static int
_keyonly (int a)
{

View File

@ -20,6 +20,7 @@ extern ARGPSTRUCT InputArgs[];
extern int Hotkeys[];
void ParseGIInput(FCEUGI *GI);
void setHotKeys();
int getKeyState( int k );
int ButtonConfigBegin();
void ButtonConfigEnd();
void ConfigButton(char *text, ButtConfig *bc);