mirror of
https://github.com/libretro/RetroArch
synced 2025-02-02 05:54:16 +00:00
iCade codepaths work now for regular OSX too
This commit is contained in:
parent
983b488d59
commit
d72090f5e9
@ -71,7 +71,8 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
void cocoa_input_keyboard_event(bool down, unsigned code,
|
||||
uint32_t character, uint32_t mod, unsigned device);
|
||||
uint32_t character, uint32_t mod, unsigned device,
|
||||
bool ignore_keyboard_gamepad);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@ -105,13 +105,14 @@ static bool handle_small_keyboard(unsigned* code, bool down)
|
||||
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
extern const struct rarch_key_map rarch_key_map_apple_hid[];
|
||||
|
||||
typedef struct icade_map
|
||||
{
|
||||
bool up;
|
||||
enum retro_key key;
|
||||
bool up;
|
||||
enum retro_key key;
|
||||
} icade_map_t;
|
||||
|
||||
#define MAX_ICADE_PROFILES 3
|
||||
@ -121,116 +122,116 @@ static icade_map_t icade_maps[MAX_ICADE_PROFILES][MAX_ICADE_KEYS];
|
||||
|
||||
static bool handle_icade_event(unsigned *code, bool *keydown)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
static bool initialized = false;
|
||||
bool ret = false;
|
||||
unsigned kb_type_idx = settings->input.keyboard_gamepad_mapping_type;
|
||||
settings_t *settings = config_get_ptr();
|
||||
static bool initialized = false;
|
||||
bool ret = false;
|
||||
unsigned kb_type_idx = settings->input.keyboard_gamepad_mapping_type;
|
||||
|
||||
if (!initialized)
|
||||
{
|
||||
unsigned i;
|
||||
unsigned j = 0;
|
||||
if (!initialized)
|
||||
{
|
||||
unsigned i;
|
||||
unsigned j = 0;
|
||||
|
||||
for (j = 0; j < MAX_ICADE_PROFILES; j++)
|
||||
{
|
||||
for (i = 0; i < MAX_ICADE_KEYS; i++)
|
||||
{
|
||||
icade_maps[j][i].key = RETROK_UNKNOWN;
|
||||
icade_maps[j][i].up = false;
|
||||
}
|
||||
}
|
||||
for (j = 0; j < MAX_ICADE_PROFILES; j++)
|
||||
{
|
||||
for (i = 0; i < MAX_ICADE_KEYS; i++)
|
||||
{
|
||||
icade_maps[j][i].key = RETROK_UNKNOWN;
|
||||
icade_maps[j][i].up = false;
|
||||
}
|
||||
}
|
||||
|
||||
/* iPega PG-9017 */
|
||||
j = 1;
|
||||
/* iPega PG-9017 */
|
||||
j = 1;
|
||||
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_a)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_d)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_w)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_x)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_u)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_i)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_j)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_k)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_h)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_y)].key = RETROK_s;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].key = RETROK_s;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_a)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_d)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_w)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_x)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_u)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_i)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_j)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_k)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_h)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_y)].key = RETROK_s;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].key = RETROK_s;
|
||||
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].up = true;
|
||||
|
||||
/* 8-bitty */
|
||||
j = 2;
|
||||
/* 8-bitty */
|
||||
j = 2;
|
||||
|
||||
initialized = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_a)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_d)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_w)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_x)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_h)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_j)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_i)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_k)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_y)].key = RETROK_RSHIFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].key = RETROK_RSHIFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_u)].key = RETROK_RETURN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].key = RETROK_RETURN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_l)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_v)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_o)].key = RETROK_s;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_g)].key = RETROK_s;
|
||||
initialized = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_a)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].key = RETROK_LEFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_d)].key = RETROK_RIGHT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_w)].key = RETROK_UP;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_x)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].key = RETROK_DOWN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_h)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].key = RETROK_q;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_j)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].key = RETROK_w;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_i)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].key = RETROK_a;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_k)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].key = RETROK_z;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_y)].key = RETROK_RSHIFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].key = RETROK_RSHIFT;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_u)].key = RETROK_RETURN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].key = RETROK_RETURN;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_l)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_v)].key = RETROK_x;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_o)].key = RETROK_s;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_g)].key = RETROK_s;
|
||||
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_v)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_g)].up = true;
|
||||
}
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_e)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_z)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_q)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_c)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_r)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_n)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_m)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_p)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_t)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_f)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_v)].up = true;
|
||||
icade_maps[j][input_keymaps_translate_rk_to_keysym(RETROK_g)].up = true;
|
||||
}
|
||||
|
||||
if ((*code < 0x20) && (icade_maps[kb_type_idx][*code].key != RETROK_UNKNOWN))
|
||||
{
|
||||
*keydown = icade_maps[kb_type_idx][*code].up ? false : true;
|
||||
ret = true;
|
||||
*code = input_keymaps_translate_rk_to_keysym(icade_maps[kb_type_idx][*code].key);
|
||||
}
|
||||
if ((*code < 0x20) && (icade_maps[kb_type_idx][*code].key != RETROK_UNKNOWN))
|
||||
{
|
||||
*keydown = icade_maps[kb_type_idx][*code].up ? false : true;
|
||||
ret = true;
|
||||
*code = input_keymaps_translate_rk_to_keysym(icade_maps[kb_type_idx][*code].key);
|
||||
}
|
||||
|
||||
return ret;
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
void cocoa_input_keyboard_event(bool down,
|
||||
unsigned code, uint32_t character, uint32_t mod, unsigned device)
|
||||
unsigned code, uint32_t character, uint32_t mod, unsigned device,
|
||||
bool ignore_keyboard_gamepad)
|
||||
{
|
||||
driver_t *driver = driver_get_ptr();
|
||||
settings_t *settings = config_get_ptr();
|
||||
@ -241,14 +242,15 @@ void cocoa_input_keyboard_event(bool down,
|
||||
|
||||
code = HIDKEY(code);
|
||||
|
||||
#if TARGET_OS_IPHONE
|
||||
if (settings->input.keyboard_gamepad_enable)
|
||||
if (settings->input.keyboard_gamepad_enable && !ignore_keyboard_gamepad)
|
||||
{
|
||||
if (handle_icade_event(&code, &down))
|
||||
character = 0;
|
||||
else
|
||||
code = 0;
|
||||
}
|
||||
unsigned orig_code = code;
|
||||
if (handle_icade_event(&code, &down))
|
||||
character = 0;
|
||||
else
|
||||
code = orig_code;
|
||||
}
|
||||
#if TARGET_OS_IPHONE
|
||||
else if (settings->input.small_keyboard_enable)
|
||||
{
|
||||
if (handle_small_keyboard(&code, down))
|
||||
|
@ -23,6 +23,7 @@
|
||||
500845341B89300700CE6073 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84DD5EB41A89E737007336C1 /* IOKit.framework */; };
|
||||
5061C8A41AE47E510080AE14 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 5061C8A31AE47E510080AE14 /* libz.dylib */; };
|
||||
509F0C9D1AA23AFC00619ECC /* griffin_objc.m in Sources */ = {isa = PBXBuildFile; fileRef = 509F0C9C1AA23AFC00619ECC /* griffin_objc.m */; };
|
||||
50A1B3011BF69A8F007D47CD /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50A1B3001BF69A8F007D47CD /* Carbon.framework */; };
|
||||
840222FC1A889EE2009AB261 /* griffin.c in Sources */ = {isa = PBXBuildFile; fileRef = 840222FB1A889EE2009AB261 /* griffin.c */; };
|
||||
84DD5E9F1A88E45B007336C1 /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 84DD5E9E1A88E45B007336C1 /* CoreVideo.framework */; };
|
||||
84DD5EA31A89E2AA007336C1 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97324FDCFA39411CA2CEA /* AppKit.framework */; };
|
||||
@ -77,10 +78,11 @@
|
||||
089C165DFE840E0CC02AAC07 /* InfoPlist.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = InfoPlist.strings; path = OSX/en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
|
||||
1DDD58150DA1D0A300B32029 /* MainMenu.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = MainMenu.xib; path = OSX/en.lproj/MainMenu.xib; sourceTree = "<group>"; };
|
||||
29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
|
||||
5008453A1B89300700CE6073 /* RetroArchCg.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "RetroArchCg.app"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
5008453B1B89300700CE6073 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Info.plist"; path = "/../../pkg/apple/OSX/Info.plist"; sourceTree = SOURCE_ROOT; };
|
||||
5008453A1B89300700CE6073 /* RetroArchCg.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = RetroArchCg.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
5008453B1B89300700CE6073 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = /../../pkg/apple/OSX/Info.plist; sourceTree = SOURCE_ROOT; };
|
||||
5061C8A31AE47E510080AE14 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
|
||||
509F0C9C1AA23AFC00619ECC /* griffin_objc.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = griffin_objc.m; path = ../../griffin/griffin_objc.m; sourceTree = "<group>"; };
|
||||
50A1B3001BF69A8F007D47CD /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
|
||||
840222FB1A889EE2009AB261 /* griffin.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = griffin.c; path = ../../griffin/griffin.c; sourceTree = SOURCE_ROOT; };
|
||||
84DD5E9E1A88E45B007336C1 /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = /System/Library/Frameworks/CoreVideo.framework; sourceTree = "<absolute>"; };
|
||||
84DD5EA61A89E406007336C1 /* CoreLocation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreLocation.framework; path = /System/Library/Frameworks/CoreLocation.framework; sourceTree = "<absolute>"; };
|
||||
@ -90,7 +92,7 @@
|
||||
84DD5EB21A89E6C0007336C1 /* AudioUnit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioUnit.framework; path = /System/Library/Frameworks/AudioUnit.framework; sourceTree = "<absolute>"; };
|
||||
84DD5EB41A89E737007336C1 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = ../../../../../../System/Library/Frameworks/IOKit.framework; sourceTree = "<group>"; };
|
||||
84DD5EB71A89F1C7007336C1 /* retroarch.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = retroarch.icns; path = ../../media/retroarch.icns; sourceTree = "<group>"; };
|
||||
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = "Info.plist"; path = "OSX/Info.plist"; sourceTree = "<group>"; };
|
||||
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = OSX/Info.plist; sourceTree = "<group>"; };
|
||||
8D1107320486CEB800E47090 /* RetroArch.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = RetroArch.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
@ -99,6 +101,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
50A1B3011BF69A8F007D47CD /* Carbon.framework in Frameworks */,
|
||||
5008452C1B89300700CE6073 /* libz.dylib in Frameworks */,
|
||||
5008452D1B89300700CE6073 /* CoreAudio.framework in Frameworks */,
|
||||
5008452E1B89300700CE6073 /* AudioUnit.framework in Frameworks */,
|
||||
@ -204,6 +207,7 @@
|
||||
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
50A1B3001BF69A8F007D47CD /* Carbon.framework */,
|
||||
5061C8A31AE47E510080AE14 /* libz.dylib */,
|
||||
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
|
||||
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
|
||||
@ -378,12 +382,12 @@
|
||||
"$(SRCROOT)/../../gfx/inc",
|
||||
"$(SRCROOT)/../../libretro-common/include",
|
||||
);
|
||||
INFOPLIST_FILE = "OSX/Info.plist";
|
||||
INFOPLIST_FILE = OSX/Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.5;
|
||||
OTHER_CFLAGS = (
|
||||
"-DHAVE_GRIFFIN",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_IMAGEVIEWER",
|
||||
"-DHAVE_CORETEXT",
|
||||
"-DHAVE_IOHIDMANAGER",
|
||||
@ -418,7 +422,7 @@
|
||||
"-DHAVE_LIBRETRODB",
|
||||
);
|
||||
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES;
|
||||
PRODUCT_NAME = "RetroArchCg";
|
||||
PRODUCT_NAME = RetroArchCg;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@ -439,12 +443,12 @@
|
||||
"$(SRCROOT)/../../gfx/inc",
|
||||
"$(SRCROOT)/../../libretro-common/include",
|
||||
);
|
||||
INFOPLIST_FILE = "OSX/Info.plist";
|
||||
INFOPLIST_FILE = OSX/Info.plist;
|
||||
INSTALL_PATH = "$(HOME)/Applications";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.5;
|
||||
OTHER_CFLAGS = (
|
||||
"-DHAVE_GRIFFIN",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_IMAGEVIEWER",
|
||||
"-DHAVE_IOHIDMANAGER",
|
||||
"-DHAVE_CORETEXT",
|
||||
@ -479,7 +483,7 @@
|
||||
"-DHAVE_LIBRETRODB",
|
||||
);
|
||||
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = YES;
|
||||
PRODUCT_NAME = "RetroArchCg";
|
||||
PRODUCT_NAME = RetroArchCg;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
@ -507,7 +511,7 @@
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.5;
|
||||
OTHER_CFLAGS = (
|
||||
"-DHAVE_GRIFFIN",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_IMAGEVIEWER",
|
||||
"-DHAVE_CORETEXT",
|
||||
"-DHAVE_IOHIDMANAGER",
|
||||
@ -567,7 +571,7 @@
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.5;
|
||||
OTHER_CFLAGS = (
|
||||
"-DHAVE_GRIFFIN",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_CHEEVOS",
|
||||
"-DHAVE_IMAGEVIEWER",
|
||||
"-DHAVE_IOHIDMANAGER",
|
||||
"-DHAVE_CORETEXT",
|
||||
|
@ -43,6 +43,7 @@ void apple_rarch_exited(void)
|
||||
|
||||
- (void)sendEvent:(NSEvent *)event
|
||||
{
|
||||
unsigned kbt;
|
||||
NSEventType event_type;
|
||||
cocoa_input_data_t *apple = NULL;
|
||||
driver_t *driver = driver_get_ptr();
|
||||
@ -50,6 +51,14 @@ void apple_rarch_exited(void)
|
||||
return;
|
||||
[super sendEvent:event];
|
||||
|
||||
EventRef ce = (EventRef)[event eventRef];
|
||||
if (ce)
|
||||
{
|
||||
GetEventParameter(ce, kEventParamKeyboardType,
|
||||
typeUInt32, NULL, sizeof(kbt), NULL, &kbt);
|
||||
NSLog(@"kbt is: %d", kbt);
|
||||
}
|
||||
|
||||
apple = (cocoa_input_data_t*)driver->input_data;
|
||||
event_type = event.type;
|
||||
|
||||
@ -85,11 +94,13 @@ void apple_rarch_exited(void)
|
||||
|
||||
for (i = 1; i < ch.length; i++)
|
||||
cocoa_input_keyboard_event(event_type == NSKeyDown,
|
||||
0, [ch characterAtIndex:i], mod, RETRO_DEVICE_KEYBOARD);
|
||||
0, [ch characterAtIndex:i], mod, RETRO_DEVICE_KEYBOARD,
|
||||
(kbt == 44) ? true : false);
|
||||
}
|
||||
|
||||
cocoa_input_keyboard_event(event_type == NSKeyDown,
|
||||
event.keyCode, character, mod, RETRO_DEVICE_KEYBOARD);
|
||||
(uint32_t)event.keyCode, character, mod, RETRO_DEVICE_KEYBOARD,
|
||||
(kbt == 44) ? true : false);
|
||||
}
|
||||
break;
|
||||
case NSFlagsChanged:
|
||||
@ -100,7 +111,8 @@ void apple_rarch_exited(void)
|
||||
old_flags = new_flags;
|
||||
|
||||
cocoa_input_keyboard_event(down, event.keyCode,
|
||||
0, event.modifierFlags, RETRO_DEVICE_KEYBOARD);
|
||||
0, event.modifierFlags, RETRO_DEVICE_KEYBOARD,
|
||||
(kbt == 44) ? true : false);
|
||||
}
|
||||
break;
|
||||
case NSMouseMoved:
|
||||
|
Loading…
x
Reference in New Issue
Block a user