Fixes for SDL 1.3, the keycodes and invoking from background are broken
This commit is contained in:
@@ -22,9 +22,9 @@ LOCAL_SRC_FILES += $(foreach F, $(APP_SUBDIRS), $(addprefix $(F)/,$(notdir $(wil
|
||||
LOCAL_CFLAGS :=
|
||||
LOCAL_C_INCLUDES :=
|
||||
|
||||
ifeq ($(CRYSTAX_TOOLCHAIN)$(NDK_R5_TOOLCHAIN),)
|
||||
LOCAL_C_INCLUDES += $(LOCAL_PATH)/../stlport/stlport
|
||||
endif
|
||||
#ifeq ($(CRYSTAX_TOOLCHAIN)$(NDK_R5_TOOLCHAIN),)
|
||||
#LOCAL_C_INCLUDES += $(LOCAL_PATH)/../stlport/stlport
|
||||
#endif
|
||||
ifneq ($(CRYSTAX_R5_TOOLCHAIN),)
|
||||
LOCAL_C_INCLUDES += $(NDK_PATH)/sources/crystax/include
|
||||
endif
|
||||
|
||||
@@ -16,6 +16,7 @@ SdlVideoResizeKeepAspect=n
|
||||
CompatibilityHacks=
|
||||
AppUsesMouse=n
|
||||
AppNeedsTwoButtonMouse=n
|
||||
ForceRelativeMouseMode=n
|
||||
AppNeedsArrowKeys=y
|
||||
AppNeedsTextInput=y
|
||||
AppUsesJoystick=n
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# The application settings for Android libSDL port
|
||||
AppSettingVersion=17
|
||||
LibSdlVersion=1.2
|
||||
LibSdlVersion=1.3
|
||||
AppName="Ballfield"
|
||||
AppFullName=net.olofson.ballfield
|
||||
ScreenOrientation=h
|
||||
@@ -23,7 +23,7 @@ AppUsesJoystick=n
|
||||
AppHandlesJoystickSensitivity=n
|
||||
AppUsesMultitouch=n
|
||||
NonBlockingSwapBuffers=y
|
||||
RedefinedKeys="SPACE"
|
||||
RedefinedKeys="SPACE RETURN NO_REMAP NO_REMAP SPACE ESCAPE"
|
||||
AppTouchscreenKeyboardKeysAmount=0
|
||||
AppTouchscreenKeyboardKeysAmountAutoFire=0
|
||||
RedefinedKeysScreenKb="1 2 3 4 5 6 1 2 3 4"
|
||||
|
||||
@@ -593,10 +593,9 @@ int main(int argc, char* argv[])
|
||||
{
|
||||
if(evt.type == SDL_KEYUP || evt.type == SDL_KEYDOWN)
|
||||
{
|
||||
Uint8 *keys = SDL_GetKeyState(&i);
|
||||
if(keys[SDLK_ESCAPE])
|
||||
if(evt.key.keysym.sym == SDLK_ESCAPE)
|
||||
return 0;
|
||||
__android_log_print(ANDROID_LOG_INFO, "Ballfield", "SDL key event: evt %s state %s key %d RETURN %d mod %d unicode %d", evt.type == SDL_KEYUP ? "UP " : "DOWN" , evt.key.state == SDL_PRESSED ? "PRESSED " : "RELEASED", (int)evt.key.keysym.sym, int(evt.key.keysym.sym == SDLK_RETURN), (int)evt.key.keysym.mod, (int)evt.key.keysym.unicode);
|
||||
__android_log_print(ANDROID_LOG_INFO, "Ballfield", "SDL key event: evt %s state %s key %d scancode %d mod %d unicode %d", evt.type == SDL_KEYUP ? "UP " : "DOWN" , evt.key.state == SDL_PRESSED ? "PRESSED " : "RELEASED", (int)evt.key.keysym.sym, (int)evt.key.keysym.scancode, (int)evt.key.keysym.mod, (int)evt.key.keysym.unicode);
|
||||
}
|
||||
if(evt.type == SDL_VIDEORESIZE)
|
||||
__android_log_print(ANDROID_LOG_INFO, "Ballfield", "SDL resize event: %d x %d", evt.resize.w, evt.resize.h);
|
||||
|
||||
@@ -1 +1 @@
|
||||
sc2
|
||||
ballfield
|
||||
@@ -1863,7 +1863,7 @@ JAVA_EXPORT_NAME(Settings_nativeInitKeymap) ( JNIEnv* env, jobject thiz )
|
||||
keymap[KEYCODE_CAMERA] = SDL_KEY(SDL_KEY_VAL(SDL_ANDROID_KEYCODE_6));
|
||||
keymap[KEYCODE_FOCUS] = SDL_KEY(SDL_KEY_VAL(SDL_ANDROID_KEYCODE_6));
|
||||
|
||||
keymap[KEYCODE_CALL] = LSHIFT;
|
||||
keymap[KEYCODE_CALL] = SDL_KEY(TAB);
|
||||
|
||||
keymap[KEYCODE_0] = SDL_KEY(0);
|
||||
keymap[KEYCODE_1] = SDL_KEY(1);
|
||||
@@ -1986,9 +1986,9 @@ JAVA_EXPORT_NAME(Settings_nativeInitKeymap) ( JNIEnv* env, jobject thiz )
|
||||
keymap[KEYCODE_SCROLL_LOCK] = SDL_KEY(SCROLLLOCK);
|
||||
keymap[KEYCODE_META_LEFT] = SDL_KEY(LEFT);
|
||||
keymap[KEYCODE_META_RIGHT] = SDL_KEY(RIGHT);
|
||||
keymap[KEYCODE_FUNCTION] = SDL_KEY(RMETA);
|
||||
keymap[KEYCODE_FUNCTION] = SDL_KEY(RGUI);
|
||||
keymap[KEYCODE_SYSRQ] = SDL_KEY(SYSREQ);
|
||||
keymap[KEYCODE_BREAK] = SDL_KEY(BREAK);
|
||||
keymap[KEYCODE_BREAK] = SDL_KEY(PAUSE);
|
||||
keymap[KEYCODE_MOVE_HOME] = SDL_KEY(HOME);
|
||||
keymap[KEYCODE_MOVE_END] = SDL_KEY(END);
|
||||
keymap[KEYCODE_INSERT] = SDL_KEY(INSERT);
|
||||
@@ -2010,17 +2010,17 @@ JAVA_EXPORT_NAME(Settings_nativeInitKeymap) ( JNIEnv* env, jobject thiz )
|
||||
keymap[KEYCODE_F10] = SDL_KEY(F10);
|
||||
keymap[KEYCODE_F11] = SDL_KEY(F11);
|
||||
keymap[KEYCODE_F12] = SDL_KEY(F12);
|
||||
keymap[KEYCODE_NUM_LOCK] = SDL_KEY(NUMLOCK);
|
||||
keymap[KEYCODE_NUMPAD_0] = SDL_KEY(KP0);
|
||||
keymap[KEYCODE_NUMPAD_1] = SDL_KEY(KP1);
|
||||
keymap[KEYCODE_NUMPAD_2] = SDL_KEY(KP2);
|
||||
keymap[KEYCODE_NUMPAD_3] = SDL_KEY(KP3);
|
||||
keymap[KEYCODE_NUMPAD_4] = SDL_KEY(KP4);
|
||||
keymap[KEYCODE_NUMPAD_5] = SDL_KEY(KP5);
|
||||
keymap[KEYCODE_NUMPAD_6] = SDL_KEY(KP6);
|
||||
keymap[KEYCODE_NUMPAD_7] = SDL_KEY(KP7);
|
||||
keymap[KEYCODE_NUMPAD_8] = SDL_KEY(KP8);
|
||||
keymap[KEYCODE_NUMPAD_9] = SDL_KEY(KP9);
|
||||
keymap[KEYCODE_NUM_LOCK] = SDL_KEY(NUMLOCKCLEAR);
|
||||
keymap[KEYCODE_NUMPAD_0] = SDL_KEY(KP_0);
|
||||
keymap[KEYCODE_NUMPAD_1] = SDL_KEY(KP_1);
|
||||
keymap[KEYCODE_NUMPAD_2] = SDL_KEY(KP_2);
|
||||
keymap[KEYCODE_NUMPAD_3] = SDL_KEY(KP_3);
|
||||
keymap[KEYCODE_NUMPAD_4] = SDL_KEY(KP_4);
|
||||
keymap[KEYCODE_NUMPAD_5] = SDL_KEY(KP_5);
|
||||
keymap[KEYCODE_NUMPAD_6] = SDL_KEY(KP_6);
|
||||
keymap[KEYCODE_NUMPAD_7] = SDL_KEY(KP_7);
|
||||
keymap[KEYCODE_NUMPAD_8] = SDL_KEY(KP_8);
|
||||
keymap[KEYCODE_NUMPAD_9] = SDL_KEY(KP_9);
|
||||
keymap[KEYCODE_NUMPAD_DIVIDE] = SDL_KEY(KP_DIVIDE);
|
||||
keymap[KEYCODE_NUMPAD_MULTIPLY] = SDL_KEY(KP_MULTIPLY);
|
||||
keymap[KEYCODE_NUMPAD_SUBTRACT] = SDL_KEY(KP_MINUS);
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
|
||||
// Special key to signal that key should be handled by Java internally, such as Volume Up/Down keys
|
||||
#define SDLK_NO_REMAP 512
|
||||
#define SDL_SCANCODE_NO_REMAP SDLK_NO_REMAP
|
||||
|
||||
#if SDL_VERSION_ATLEAST(1,3,0)
|
||||
|
||||
@@ -80,6 +81,8 @@
|
||||
#define GRAVE DOLLAR
|
||||
#define APOSTROPHE QUOTE
|
||||
#define LGUI LMETA
|
||||
#define RGUI RMETA
|
||||
#define SCROLLLOCK SCROLLOCK
|
||||
// Overkill haha
|
||||
#define A a
|
||||
#define B b
|
||||
@@ -144,6 +147,12 @@ extern int SDL_ANDROID_isTouchscreenKeyboardUsed;
|
||||
#ifndef SDL_ANDROID_KEYCODE_7
|
||||
#define SDL_ANDROID_KEYCODE_7 SDL_ANDROID_KEYCODE_1
|
||||
#endif
|
||||
#ifndef SDL_ANDROID_KEYCODE_8
|
||||
#define SDL_ANDROID_KEYCODE_8 LALT
|
||||
#endif
|
||||
#ifndef SDL_ANDROID_KEYCODE_9
|
||||
#define SDL_ANDROID_KEYCODE_9 RALT
|
||||
#endif
|
||||
|
||||
// Touchscreen keyboard keys + zoom and rotate keycodes
|
||||
#ifndef SDL_ANDROID_SCREENKB_KEYCODE_0
|
||||
|
||||
@@ -96,118 +96,118 @@ KEYCODE_MEDIA_PREVIOUS = 88,
|
||||
KEYCODE_MEDIA_REWIND = 89,
|
||||
KEYCODE_MEDIA_FAST_FORWARD = 90,
|
||||
KEYCODE_MUTE = 91,
|
||||
KEYCODE_PAGE_UP = 92;
|
||||
KEYCODE_PAGE_DOWN = 93;
|
||||
KEYCODE_PICTSYMBOLS = 94;
|
||||
KEYCODE_SWITCH_CHARSET = 95;
|
||||
KEYCODE_BUTTON_A = 96;
|
||||
KEYCODE_BUTTON_B = 97;
|
||||
KEYCODE_BUTTON_C = 98;
|
||||
KEYCODE_BUTTON_X = 99;
|
||||
KEYCODE_BUTTON_Y = 100;
|
||||
KEYCODE_BUTTON_Z = 101;
|
||||
KEYCODE_BUTTON_L1 = 102;
|
||||
KEYCODE_BUTTON_R1 = 103;
|
||||
KEYCODE_BUTTON_L2 = 104;
|
||||
KEYCODE_BUTTON_R2 = 105;
|
||||
KEYCODE_BUTTON_THUMBL = 106;
|
||||
KEYCODE_BUTTON_THUMBR = 107;
|
||||
KEYCODE_BUTTON_START = 108;
|
||||
KEYCODE_BUTTON_SELECT = 109;
|
||||
KEYCODE_BUTTON_MODE = 110;
|
||||
KEYCODE_ESCAPE = 111;
|
||||
KEYCODE_FORWARD_DEL = 112;
|
||||
KEYCODE_CTRL_LEFT = 113;
|
||||
KEYCODE_CTRL_RIGHT = 114;
|
||||
KEYCODE_CAPS_LOCK = 115;
|
||||
KEYCODE_SCROLL_LOCK = 116;
|
||||
KEYCODE_META_LEFT = 117;
|
||||
KEYCODE_META_RIGHT = 118;
|
||||
KEYCODE_FUNCTION = 119;
|
||||
KEYCODE_SYSRQ = 120;
|
||||
KEYCODE_BREAK = 121;
|
||||
KEYCODE_MOVE_HOME = 122;
|
||||
KEYCODE_MOVE_END = 123;
|
||||
KEYCODE_INSERT = 124;
|
||||
KEYCODE_FORWARD = 125;
|
||||
KEYCODE_MEDIA_PLAY = 126;
|
||||
KEYCODE_MEDIA_PAUSE = 127;
|
||||
KEYCODE_MEDIA_CLOSE = 128;
|
||||
KEYCODE_MEDIA_EJECT = 129;
|
||||
KEYCODE_MEDIA_RECORD = 130;
|
||||
KEYCODE_F1 = 131;
|
||||
KEYCODE_F2 = 132;
|
||||
KEYCODE_F3 = 133;
|
||||
KEYCODE_F4 = 134;
|
||||
KEYCODE_F5 = 135;
|
||||
KEYCODE_F6 = 136;
|
||||
KEYCODE_F7 = 137;
|
||||
KEYCODE_F8 = 138;
|
||||
KEYCODE_F9 = 139;
|
||||
KEYCODE_F10 = 140;
|
||||
KEYCODE_F11 = 141;
|
||||
KEYCODE_F12 = 142;
|
||||
KEYCODE_NUM_LOCK = 143;
|
||||
KEYCODE_NUMPAD_0 = 144;
|
||||
KEYCODE_NUMPAD_1 = 145;
|
||||
KEYCODE_NUMPAD_2 = 146;
|
||||
KEYCODE_NUMPAD_3 = 147;
|
||||
KEYCODE_NUMPAD_4 = 148;
|
||||
KEYCODE_NUMPAD_5 = 149;
|
||||
KEYCODE_NUMPAD_6 = 150;
|
||||
KEYCODE_NUMPAD_7 = 151;
|
||||
KEYCODE_NUMPAD_8 = 152;
|
||||
KEYCODE_NUMPAD_9 = 153;
|
||||
KEYCODE_NUMPAD_DIVIDE = 154;
|
||||
KEYCODE_NUMPAD_MULTIPLY = 155;
|
||||
KEYCODE_NUMPAD_SUBTRACT = 156;
|
||||
KEYCODE_NUMPAD_ADD = 157;
|
||||
KEYCODE_NUMPAD_DOT = 158;
|
||||
KEYCODE_NUMPAD_COMMA = 159;
|
||||
KEYCODE_NUMPAD_ENTER = 160;
|
||||
KEYCODE_NUMPAD_EQUALS = 161;
|
||||
KEYCODE_NUMPAD_LEFT_PAREN = 162
|
||||
KEYCODE_NUMPAD_RIGHT_PAREN = 16
|
||||
KEYCODE_VOLUME_MUTE = 164;
|
||||
KEYCODE_INFO = 165;
|
||||
KEYCODE_CHANNEL_UP = 166;
|
||||
KEYCODE_CHANNEL_DOWN = 167;
|
||||
KEYCODE_ZOOM_IN = 168;
|
||||
KEYCODE_ZOOM_OUT = 169;
|
||||
KEYCODE_TV = 170;
|
||||
KEYCODE_WINDOW = 171;
|
||||
KEYCODE_GUIDE = 172;
|
||||
KEYCODE_DVR = 173;
|
||||
KEYCODE_BOOKMARK = 174;
|
||||
KEYCODE_CAPTIONS = 175;
|
||||
KEYCODE_SETTINGS = 176;
|
||||
KEYCODE_TV_POWER = 177;
|
||||
KEYCODE_TV_INPUT = 178;
|
||||
KEYCODE_STB_POWER = 179;
|
||||
KEYCODE_STB_INPUT = 180;
|
||||
KEYCODE_AVR_POWER = 181;
|
||||
KEYCODE_AVR_INPUT = 182;
|
||||
KEYCODE_PROG_RED = 183;
|
||||
KEYCODE_PROG_GREEN = 184;
|
||||
KEYCODE_PROG_YELLOW = 185;
|
||||
KEYCODE_PROG_BLUE = 186;
|
||||
KEYCODE_APP_SWITCH = 187;
|
||||
KEYCODE_BUTTON_1 = 188;
|
||||
KEYCODE_BUTTON_2 = 189;
|
||||
KEYCODE_BUTTON_3 = 190;
|
||||
KEYCODE_BUTTON_4 = 191;
|
||||
KEYCODE_BUTTON_5 = 192;
|
||||
KEYCODE_BUTTON_6 = 193;
|
||||
KEYCODE_BUTTON_7 = 194;
|
||||
KEYCODE_BUTTON_8 = 195;
|
||||
KEYCODE_BUTTON_9 = 196;
|
||||
KEYCODE_BUTTON_10 = 197;
|
||||
KEYCODE_BUTTON_11 = 198;
|
||||
KEYCODE_BUTTON_12 = 199;
|
||||
KEYCODE_BUTTON_13 = 200;
|
||||
KEYCODE_BUTTON_14 = 201;
|
||||
KEYCODE_BUTTON_15 = 202;
|
||||
KEYCODE_BUTTON_16 = 203;
|
||||
KEYCODE_PAGE_UP = 92,
|
||||
KEYCODE_PAGE_DOWN = 93,
|
||||
KEYCODE_PICTSYMBOLS = 94,
|
||||
KEYCODE_SWITCH_CHARSET = 95,
|
||||
KEYCODE_BUTTON_A = 96,
|
||||
KEYCODE_BUTTON_B = 97,
|
||||
KEYCODE_BUTTON_C = 98,
|
||||
KEYCODE_BUTTON_X = 99,
|
||||
KEYCODE_BUTTON_Y = 100,
|
||||
KEYCODE_BUTTON_Z = 101,
|
||||
KEYCODE_BUTTON_L1 = 102,
|
||||
KEYCODE_BUTTON_R1 = 103,
|
||||
KEYCODE_BUTTON_L2 = 104,
|
||||
KEYCODE_BUTTON_R2 = 105,
|
||||
KEYCODE_BUTTON_THUMBL = 106,
|
||||
KEYCODE_BUTTON_THUMBR = 107,
|
||||
KEYCODE_BUTTON_START = 108,
|
||||
KEYCODE_BUTTON_SELECT = 109,
|
||||
KEYCODE_BUTTON_MODE = 110,
|
||||
KEYCODE_ESCAPE = 111,
|
||||
KEYCODE_FORWARD_DEL = 112,
|
||||
KEYCODE_CTRL_LEFT = 113,
|
||||
KEYCODE_CTRL_RIGHT = 114,
|
||||
KEYCODE_CAPS_LOCK = 115,
|
||||
KEYCODE_SCROLL_LOCK = 116,
|
||||
KEYCODE_META_LEFT = 117,
|
||||
KEYCODE_META_RIGHT = 118,
|
||||
KEYCODE_FUNCTION = 119,
|
||||
KEYCODE_SYSRQ = 120,
|
||||
KEYCODE_BREAK = 121,
|
||||
KEYCODE_MOVE_HOME = 122,
|
||||
KEYCODE_MOVE_END = 123,
|
||||
KEYCODE_INSERT = 124,
|
||||
KEYCODE_FORWARD = 125,
|
||||
KEYCODE_MEDIA_PLAY = 126,
|
||||
KEYCODE_MEDIA_PAUSE = 127,
|
||||
KEYCODE_MEDIA_CLOSE = 128,
|
||||
KEYCODE_MEDIA_EJECT = 129,
|
||||
KEYCODE_MEDIA_RECORD = 130,
|
||||
KEYCODE_F1 = 131,
|
||||
KEYCODE_F2 = 132,
|
||||
KEYCODE_F3 = 133,
|
||||
KEYCODE_F4 = 134,
|
||||
KEYCODE_F5 = 135,
|
||||
KEYCODE_F6 = 136,
|
||||
KEYCODE_F7 = 137,
|
||||
KEYCODE_F8 = 138,
|
||||
KEYCODE_F9 = 139,
|
||||
KEYCODE_F10 = 140,
|
||||
KEYCODE_F11 = 141,
|
||||
KEYCODE_F12 = 142,
|
||||
KEYCODE_NUM_LOCK = 143,
|
||||
KEYCODE_NUMPAD_0 = 144,
|
||||
KEYCODE_NUMPAD_1 = 145,
|
||||
KEYCODE_NUMPAD_2 = 146,
|
||||
KEYCODE_NUMPAD_3 = 147,
|
||||
KEYCODE_NUMPAD_4 = 148,
|
||||
KEYCODE_NUMPAD_5 = 149,
|
||||
KEYCODE_NUMPAD_6 = 150,
|
||||
KEYCODE_NUMPAD_7 = 151,
|
||||
KEYCODE_NUMPAD_8 = 152,
|
||||
KEYCODE_NUMPAD_9 = 153,
|
||||
KEYCODE_NUMPAD_DIVIDE = 154,
|
||||
KEYCODE_NUMPAD_MULTIPLY = 155,
|
||||
KEYCODE_NUMPAD_SUBTRACT = 156,
|
||||
KEYCODE_NUMPAD_ADD = 157,
|
||||
KEYCODE_NUMPAD_DOT = 158,
|
||||
KEYCODE_NUMPAD_COMMA = 159,
|
||||
KEYCODE_NUMPAD_ENTER = 160,
|
||||
KEYCODE_NUMPAD_EQUALS = 161,
|
||||
KEYCODE_NUMPAD_LEFT_PAREN = 162,
|
||||
KEYCODE_NUMPAD_RIGHT_PAREN = 163,
|
||||
KEYCODE_VOLUME_MUTE = 164,
|
||||
KEYCODE_INFO = 165,
|
||||
KEYCODE_CHANNEL_UP = 166,
|
||||
KEYCODE_CHANNEL_DOWN = 167,
|
||||
KEYCODE_ZOOM_IN = 168,
|
||||
KEYCODE_ZOOM_OUT = 169,
|
||||
KEYCODE_TV = 170,
|
||||
KEYCODE_WINDOW = 171,
|
||||
KEYCODE_GUIDE = 172,
|
||||
KEYCODE_DVR = 173,
|
||||
KEYCODE_BOOKMARK = 174,
|
||||
KEYCODE_CAPTIONS = 175,
|
||||
KEYCODE_SETTINGS = 176,
|
||||
KEYCODE_TV_POWER = 177,
|
||||
KEYCODE_TV_INPUT = 178,
|
||||
KEYCODE_STB_POWER = 179,
|
||||
KEYCODE_STB_INPUT = 180,
|
||||
KEYCODE_AVR_POWER = 181,
|
||||
KEYCODE_AVR_INPUT = 182,
|
||||
KEYCODE_PROG_RED = 183,
|
||||
KEYCODE_PROG_GREEN = 184,
|
||||
KEYCODE_PROG_YELLOW = 185,
|
||||
KEYCODE_PROG_BLUE = 186,
|
||||
KEYCODE_APP_SWITCH = 187,
|
||||
KEYCODE_BUTTON_1 = 188,
|
||||
KEYCODE_BUTTON_2 = 189,
|
||||
KEYCODE_BUTTON_3 = 190,
|
||||
KEYCODE_BUTTON_4 = 191,
|
||||
KEYCODE_BUTTON_5 = 192,
|
||||
KEYCODE_BUTTON_6 = 193,
|
||||
KEYCODE_BUTTON_7 = 194,
|
||||
KEYCODE_BUTTON_8 = 195,
|
||||
KEYCODE_BUTTON_9 = 196,
|
||||
KEYCODE_BUTTON_10 = 197,
|
||||
KEYCODE_BUTTON_11 = 198,
|
||||
KEYCODE_BUTTON_12 = 199,
|
||||
KEYCODE_BUTTON_13 = 200,
|
||||
KEYCODE_BUTTON_14 = 201,
|
||||
KEYCODE_BUTTON_15 = 202,
|
||||
KEYCODE_BUTTON_16 = 203,
|
||||
|
||||
KEYCODE_LAST = 255 // Android 2.3 added several new gaming keys, Android 3.1 added even more - plz keep in sync with Keycodes.java
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user