fixed back button on android
This commit is contained in:
		@@ -18,6 +18,7 @@ LOCAL_C_INCLUDES := \
 | 
			
		||||
	$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/moonscript \
 | 
			
		||||
	$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/wren-0.1.0\src\include \
 | 
			
		||||
	$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/sdl-gpu/include \
 | 
			
		||||
	$(LOCAL_PATH)/$(THIRD_PARTY_PATH)/fennel \
 | 
			
		||||
	$(LOCAL_PATH)/../../../../include
 | 
			
		||||
 | 
			
		||||
# Add your application source files here...
 | 
			
		||||
 
 | 
			
		||||
@@ -40,6 +40,7 @@
 | 
			
		||||
[SDL_SCANCODE_0] = tic_key_0,
 | 
			
		||||
[SDL_SCANCODE_RETURN] = tic_key_return,
 | 
			
		||||
[SDL_SCANCODE_ESCAPE] = tic_key_escape,
 | 
			
		||||
[SDL_SCANCODE_AC_BACK] = tic_key_escape,
 | 
			
		||||
[SDL_SCANCODE_BACKSPACE] = tic_key_backspace,
 | 
			
		||||
[SDL_SCANCODE_TAB] = tic_key_tab,
 | 
			
		||||
[SDL_SCANCODE_SPACE] = tic_key_space,
 | 
			
		||||
 
 | 
			
		||||
@@ -1334,7 +1334,6 @@ static void processShortcuts()
 | 
			
		||||
		if(keyWasPressedOnce(tic_key_escape))
 | 
			
		||||
		{
 | 
			
		||||
			impl.mode == TIC_MENU_MODE ? hideGameMenu() : showGameMenu();
 | 
			
		||||
			// impl.gamepad.backProcessed = true;
 | 
			
		||||
		}
 | 
			
		||||
		else if(keyWasPressedOnce(tic_key_f11)) goFullscreen();
 | 
			
		||||
		else if(keyWasPressedOnce(tic_key_return))
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										39
									
								
								src/system.c
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								src/system.c
									
									
									
									
									
								
							@@ -666,15 +666,7 @@ static void processJoysticks()
 | 
			
		||||
							if(back)
 | 
			
		||||
							{
 | 
			
		||||
								tic_mem* tic = platform.studio->tic;
 | 
			
		||||
 | 
			
		||||
								for(s32 i = 0; i < TIC80_KEY_BUFFER; i++)
 | 
			
		||||
								{
 | 
			
		||||
									if(!tic->ram.input.keyboard.keys[i])
 | 
			
		||||
									{
 | 
			
		||||
										tic->ram.input.keyboard.keys[i] = tic_key_escape;
 | 
			
		||||
										break;
 | 
			
		||||
									}
 | 
			
		||||
								}
 | 
			
		||||
								tic->ram.input.keyboard.keys[0] = tic_key_escape;
 | 
			
		||||
							}
 | 
			
		||||
						}
 | 
			
		||||
					}
 | 
			
		||||
@@ -688,7 +680,19 @@ static void processJoysticks()
 | 
			
		||||
 | 
			
		||||
static void processGamepad()
 | 
			
		||||
{
 | 
			
		||||
#if !defined(__EMSCRIPTEN__) && !defined(__MACOSX__)
 | 
			
		||||
	processJoysticks();
 | 
			
		||||
	
 | 
			
		||||
	{
 | 
			
		||||
		platform.studio->tic->ram.input.gamepads.data = 0;
 | 
			
		||||
 | 
			
		||||
		platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.touch.data;
 | 
			
		||||
		platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.joystick.data;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void processTouchInput()
 | 
			
		||||
{
 | 
			
		||||
	#if !defined(__EMSCRIPTEN__) && !defined(__MACOSX__)
 | 
			
		||||
	{
 | 
			
		||||
		s32 devices = SDL_GetNumTouchDevices();
 | 
			
		||||
		for (s32 i = 0; i < devices; i++)
 | 
			
		||||
@@ -703,19 +707,12 @@ static void processGamepad()
 | 
			
		||||
		? processTouchGamepad()
 | 
			
		||||
		: processTouchKeyboard();
 | 
			
		||||
#endif
 | 
			
		||||
	processJoysticks();
 | 
			
		||||
	
 | 
			
		||||
	{
 | 
			
		||||
		platform.studio->tic->ram.input.gamepads.data = 0;
 | 
			
		||||
 | 
			
		||||
		platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.touch.data;
 | 
			
		||||
		platform.studio->tic->ram.input.gamepads.data |= platform.gamepad.joystick.data;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void pollEvent()
 | 
			
		||||
{
 | 
			
		||||
	tic80_input* input = &platform.studio->tic->ram.input;
 | 
			
		||||
	tic_mem* tic = platform.studio->tic;
 | 
			
		||||
	tic80_input* input = &tic->ram.input;
 | 
			
		||||
 | 
			
		||||
	{
 | 
			
		||||
		input->mouse.btns = 0;
 | 
			
		||||
@@ -783,6 +780,7 @@ static void pollEvent()
 | 
			
		||||
 | 
			
		||||
	processMouse();
 | 
			
		||||
	processKeyboard();
 | 
			
		||||
	processTouchInput();
 | 
			
		||||
	processGamepad();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -1361,6 +1359,9 @@ static void emsGpuTick()
 | 
			
		||||
 | 
			
		||||
static s32 start(s32 argc, char **argv, const char* folder)
 | 
			
		||||
{
 | 
			
		||||
	SDL_SetHint(SDL_HINT_WINRT_HANDLE_BACK_BUTTON, "1");
 | 
			
		||||
	SDL_SetHint(SDL_HINT_ACCELEROMETER_AS_JOYSTICK, "0");
 | 
			
		||||
 | 
			
		||||
	SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_JOYSTICK);
 | 
			
		||||
 | 
			
		||||
	initSound();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user