Merge pull request #1303 from jeapostrophe/master

Fix a variety of iOS issues:
This commit is contained in:
Twinaphex 2014-12-31 22:29:28 +01:00
commit 8e00408516
46 changed files with 348 additions and 43 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

View File

@ -0,0 +1,125 @@
{
"images" : [
{
"size" : "29x29",
"idiom" : "iphone",
"filename" : "Icon-29-1.png",
"scale" : "1x"
},
{
"size" : "29x29",
"idiom" : "iphone",
"filename" : "Icon-29-2.png",
"scale" : "2x"
},
{
"size" : "29x29",
"idiom" : "iphone",
"filename" : "Icon-29-3.png",
"scale" : "3x"
},
{
"size" : "40x40",
"idiom" : "iphone",
"filename" : "Icon-40-2.png",
"scale" : "2x"
},
{
"size" : "40x40",
"idiom" : "iphone",
"filename" : "Icon-40-3.png",
"scale" : "3x"
},
{
"size" : "57x57",
"idiom" : "iphone",
"filename" : "Icon-57-1.png",
"scale" : "1x"
},
{
"size" : "57x57",
"idiom" : "iphone",
"filename" : "Icon-57-2.png",
"scale" : "2x"
},
{
"size" : "60x60",
"idiom" : "iphone",
"filename" : "Icon-60-2.png",
"scale" : "2x"
},
{
"size" : "60x60",
"idiom" : "iphone",
"filename" : "Icon-60-3.png",
"scale" : "3x"
},
{
"size" : "29x29",
"idiom" : "ipad",
"filename" : "Icon-29-1-1.png",
"scale" : "1x"
},
{
"size" : "29x29",
"idiom" : "ipad",
"filename" : "Icon-29-2-1.png",
"scale" : "2x"
},
{
"size" : "40x40",
"idiom" : "ipad",
"filename" : "Icon-40-1.png",
"scale" : "1x"
},
{
"size" : "40x40",
"idiom" : "ipad",
"filename" : "Icon-40-2-1.png",
"scale" : "2x"
},
{
"size" : "50x50",
"idiom" : "ipad",
"filename" : "Icon-50-1.png",
"scale" : "1x"
},
{
"size" : "50x50",
"idiom" : "ipad",
"filename" : "Icon-50-2.png",
"scale" : "2x"
},
{
"size" : "72x72",
"idiom" : "ipad",
"filename" : "Icon-72-1.png",
"scale" : "1x"
},
{
"size" : "72x72",
"idiom" : "ipad",
"filename" : "Icon-72-2.png",
"scale" : "2x"
},
{
"size" : "76x76",
"idiom" : "ipad",
"filename" : "Icon-76-1.png",
"scale" : "1x"
},
{
"size" : "76x76",
"idiom" : "ipad",
"filename" : "Icon-76-2.png",
"scale" : "2x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
},
"properties" : {
"pre-rendered" : true
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 910 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 910 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

View File

@ -0,0 +1,134 @@
{
"images" : [
{
"extent" : "full-screen",
"idiom" : "iphone",
"subtype" : "736h",
"filename" : "blackimage.png",
"minimum-system-version" : "8.0",
"orientation" : "portrait",
"scale" : "3x"
},
{
"extent" : "full-screen",
"idiom" : "iphone",
"subtype" : "736h",
"filename" : "blackimage-2.png",
"minimum-system-version" : "8.0",
"orientation" : "landscape",
"scale" : "3x"
},
{
"extent" : "full-screen",
"idiom" : "iphone",
"subtype" : "667h",
"filename" : "blackimage-1.png",
"minimum-system-version" : "8.0",
"orientation" : "portrait",
"scale" : "2x"
},
{
"orientation" : "portrait",
"idiom" : "iphone",
"extent" : "full-screen",
"minimum-system-version" : "7.0",
"filename" : "Default@2x.png",
"scale" : "2x"
},
{
"extent" : "full-screen",
"idiom" : "iphone",
"subtype" : "retina4",
"filename" : "Default-568h@2x.png",
"minimum-system-version" : "7.0",
"orientation" : "portrait",
"scale" : "2x"
},
{
"orientation" : "portrait",
"idiom" : "ipad",
"extent" : "full-screen",
"minimum-system-version" : "7.0",
"filename" : "blackimage-3.png",
"scale" : "1x"
},
{
"orientation" : "landscape",
"idiom" : "ipad",
"extent" : "full-screen",
"minimum-system-version" : "7.0",
"filename" : "blackimage-5.png",
"scale" : "1x"
},
{
"orientation" : "portrait",
"idiom" : "ipad",
"extent" : "full-screen",
"minimum-system-version" : "7.0",
"filename" : "blackimage-4.png",
"scale" : "2x"
},
{
"orientation" : "landscape",
"idiom" : "ipad",
"extent" : "full-screen",
"minimum-system-version" : "7.0",
"filename" : "blackimage-6.png",
"scale" : "2x"
},
{
"orientation" : "portrait",
"idiom" : "iphone",
"extent" : "full-screen",
"filename" : "Default.png",
"scale" : "1x"
},
{
"orientation" : "portrait",
"idiom" : "iphone",
"extent" : "full-screen",
"filename" : "Default@2x.png",
"scale" : "2x"
},
{
"orientation" : "portrait",
"idiom" : "iphone",
"extent" : "full-screen",
"filename" : "Default-568h@2x.png",
"subtype" : "retina4",
"scale" : "2x"
},
{
"orientation" : "portrait",
"idiom" : "ipad",
"extent" : "to-status-bar",
"filename" : "blackimage-7.png",
"scale" : "1x"
},
{
"orientation" : "landscape",
"idiom" : "ipad",
"extent" : "to-status-bar",
"filename" : "blackimage-9.png",
"scale" : "1x"
},
{
"orientation" : "portrait",
"idiom" : "ipad",
"extent" : "to-status-bar",
"filename" : "blackimage-8.png",
"scale" : "2x"
},
{
"orientation" : "landscape",
"idiom" : "ipad",
"extent" : "to-status-bar",
"filename" : "blackimage-10.png",
"scale" : "2x"
}
],
"info" : {
"version" : 1,
"author" : "xcode"
}
}

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

Before

Width:  |  Height:  |  Size: 6.4 KiB

After

Width:  |  Height:  |  Size: 6.4 KiB

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 604 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 653 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 653 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 365 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 646 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 363 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 607 B

View File

@ -23,12 +23,8 @@
50E7189F184B88AA001956CE /* CoreVideo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 50E7189E184B88AA001956CE /* CoreVideo.framework */; };
6949E72319FABADC00CC7F42 /* CFExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 6949E72219FABADC00CC7F42 /* CFExtensions.m */; };
696012F219F3389A006A1088 /* CoreText.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 696012F119F3389A006A1088 /* CoreText.framework */; };
83D632DF19ECFCC4009E3161 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 83D632D819ECFCC4009E3161 /* Default-568h@2x.png */; };
83D632E019ECFCC4009E3161 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = 83D632D919ECFCC4009E3161 /* Default.png */; };
83D632E119ECFCC4009E3161 /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 83D632DA19ECFCC4009E3161 /* Default@2x.png */; };
69D31DE41A547EC800EF4C92 /* Media.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 69D31DE31A547EC800EF4C92 /* Media.xcassets */; };
83D632E219ECFCC4009E3161 /* ic_pause.png in Resources */ = {isa = PBXBuildFile; fileRef = 83D632DB19ECFCC4009E3161 /* ic_pause.png */; };
83D632E319ECFCC4009E3161 /* Icon-72.png in Resources */ = {isa = PBXBuildFile; fileRef = 83D632DC19ECFCC4009E3161 /* Icon-72.png */; };
83D632E419ECFCC4009E3161 /* Icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 83D632DD19ECFCC4009E3161 /* Icon.png */; };
83D632E519ECFCC4009E3161 /* PauseIndicatorView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 83D632DE19ECFCC4009E3161 /* PauseIndicatorView.xib */; };
83EB676019EEAF050096F441 /* modules in Resources */ = {isa = PBXBuildFile; fileRef = 83EB675F19EEAF050096F441 /* modules */; };
83EB676219EEAF1B0096F441 /* overlays in Resources */ = {isa = PBXBuildFile; fileRef = 83EB676119EEAF1B0096F441 /* overlays */; };
@ -60,12 +56,8 @@
50E7189E184B88AA001956CE /* CoreVideo.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreVideo.framework; path = System/Library/Frameworks/CoreVideo.framework; sourceTree = SDKROOT; };
6949E72219FABADC00CC7F42 /* CFExtensions.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = CFExtensions.m; path = ../common/CFExtensions.m; sourceTree = "<group>"; };
696012F119F3389A006A1088 /* CoreText.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreText.framework; path = System/Library/Frameworks/CoreText.framework; sourceTree = SDKROOT; };
83D632D819ECFCC4009E3161 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = "<group>"; };
83D632D919ECFCC4009E3161 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = "<group>"; };
83D632DA19ECFCC4009E3161 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = "<group>"; };
69D31DE31A547EC800EF4C92 /* Media.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Media.xcassets; sourceTree = "<group>"; };
83D632DB19ECFCC4009E3161 /* ic_pause.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ic_pause.png; sourceTree = "<group>"; };
83D632DC19ECFCC4009E3161 /* Icon-72.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Icon-72.png"; sourceTree = "<group>"; };
83D632DD19ECFCC4009E3161 /* Icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Icon.png; sourceTree = "<group>"; };
83D632DE19ECFCC4009E3161 /* PauseIndicatorView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = PauseIndicatorView.xib; sourceTree = "<group>"; };
83EB675F19EEAF050096F441 /* modules */ = {isa = PBXFileReference; lastKnownFileType = folder; path = modules; sourceTree = SOURCE_ROOT; };
83EB676119EEAF1B0096F441 /* overlays */ = {isa = PBXFileReference; lastKnownFileType = folder; name = overlays; path = ../../../media/overlays; sourceTree = "<group>"; };
@ -124,13 +116,9 @@
children = (
83EB676119EEAF1B0096F441 /* overlays */,
83EB675F19EEAF050096F441 /* modules */,
83D632D819ECFCC4009E3161 /* Default-568h@2x.png */,
83D632D919ECFCC4009E3161 /* Default.png */,
83D632DA19ECFCC4009E3161 /* Default@2x.png */,
83D632DB19ECFCC4009E3161 /* ic_pause.png */,
83D632DC19ECFCC4009E3161 /* Icon-72.png */,
83D632DD19ECFCC4009E3161 /* Icon.png */,
83D632DE19ECFCC4009E3161 /* PauseIndicatorView.xib */,
69D31DE31A547EC800EF4C92 /* Media.xcassets */,
);
name = Assets;
path = Resources;
@ -274,6 +262,11 @@
attributes = {
LastUpgradeCheck = 0450;
ORGANIZATIONNAME = RetroArch;
TargetAttributes = {
96AFAE2416C1D4EA009DE44C = {
DevelopmentTeam = HFC52R7GR3;
};
};
};
buildConfigurationList = 96AFAE1F16C1D4EA009DE44C /* Build configuration list for PBXProject "RetroArch_iOS" */;
compatibilityVersion = "Xcode 3.2";
@ -299,14 +292,10 @@
files = (
83D632E219ECFCC4009E3161 /* ic_pause.png in Resources */,
83EB676219EEAF1B0096F441 /* overlays in Resources */,
83D632E119ECFCC4009E3161 /* Default@2x.png in Resources */,
967894631788EBD800D6CA69 /* InfoPlist.strings in Resources */,
83EB676019EEAF050096F441 /* modules in Resources */,
83D632E019ECFCC4009E3161 /* Default.png in Resources */,
83D632DF19ECFCC4009E3161 /* Default-568h@2x.png in Resources */,
69D31DE41A547EC800EF4C92 /* Media.xcassets in Resources */,
83D632E519ECFCC4009E3161 /* PauseIndicatorView.xib in Resources */,
83D632E419ECFCC4009E3161 /* Icon.png in Resources */,
83D632E319ECFCC4009E3161 /* Icon-72.png in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@ -464,8 +453,11 @@
armv7s,
armv7,
);
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
CLANG_CXX_LIBRARY = "libstdc++";
CODE_SIGN_IDENTITY = "";
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_RESOURCE_RULES_PATH = "$(SDKROOT)/ResourceRules.plist";
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREFIX_HEADER = "";
@ -522,8 +514,11 @@
armv7s,
armv7,
);
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;
CLANG_CXX_LIBRARY = "libstdc++";
CODE_SIGN_IDENTITY = "";
CODE_SIGN_IDENTITY = "iPhone Developer";
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_RESOURCE_RULES_PATH = "$(SDKROOT)/ResourceRules.plist";
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_PREFIX_HEADER = "";
@ -602,6 +597,7 @@
"-D_LZMA_UINT32_IS_ULONG",
);
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE = "";
"PROVISIONING_PROFILE[sdk=iphoneos*]" = "";
VALID_ARCHS = "armv7 armv7s";
WRAPPER_EXTENSION = app;

View File

@ -20,6 +20,10 @@
</array>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleIcons</key>
<dict/>
<key>CFBundleIcons~ipad</key>
<dict/>
<key>CFBundleIdentifier</key>
<string>libretro.${PRODUCT_NAME:rfc1034identifier}</string>
<key>CFBundleInfoDictionaryVersion</key>

View File

@ -65,9 +65,10 @@
/*********************************************/
@interface RAMenuItemGeneralSetting : NSObject<RAMenuItemBase>
@property (nonatomic) rarch_setting_t* setting;
@property (copy) void (^action)();
@property (nonatomic, weak) UITableView* parentTable;
+ (id)itemForSetting:(rarch_setting_t*)setting;
- (id)initWithSetting:(rarch_setting_t*)setting;
+ (id)itemForSetting:(rarch_setting_t*)setting action:(void (^)())action;
- (id)initWithSetting:(rarch_setting_t*)setting action:(void (^)())action;
@end
/*********************************************/
@ -78,7 +79,8 @@
/*********************************************/
@interface RAMenuItemBooleanSetting : NSObject<RAMenuItemBase>
@property (nonatomic) rarch_setting_t* setting;
- (id)initWithSetting:(rarch_setting_t*)setting;
@property (copy) void (^action)();
- (id)initWithSetting:(rarch_setting_t*)setting action:(void (^)())action;
@end
/*********************************************/

View File

@ -199,7 +199,7 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
@implementation RAMenuItemGeneralSetting
+ (id)itemForSetting:(rarch_setting_t*)setting
+ (id)itemForSetting:(rarch_setting_t*)setting action:(void (^)())action
{
switch (setting->type) {
case ST_NONE:
@ -207,19 +207,19 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
return [RAMenuItemBasic itemWithDescription:BOXSTRING("Shouldn't be called with ST_NONE or ST_ACTION")
action:^{}];
case ST_BOOL:
return [[RAMenuItemBooleanSetting alloc] initWithSetting:setting];
return [[RAMenuItemBooleanSetting alloc] initWithSetting:setting action:action];
case ST_INT:
case ST_UINT:
case ST_FLOAT:
break;
case ST_PATH:
case ST_DIR:
return [[RAMenuItemPathSetting alloc] initWithSetting:setting];
return [[RAMenuItemPathSetting alloc] initWithSetting:setting action:action];
case ST_STRING:
case ST_HEX:
break;
case ST_BIND:
return [[RAMenuItemBindSetting alloc] initWithSetting:setting];
return [[RAMenuItemBindSetting alloc] initWithSetting:setting action:action];
case ST_GROUP:
case ST_SUB_GROUP:
case ST_END_GROUP:
@ -230,9 +230,9 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
}
if (setting->type == ST_STRING && setting->values)
return [[RAMenuItemEnumSetting alloc] initWithSetting:setting];
return [[RAMenuItemEnumSetting alloc] initWithSetting:setting action:action];
RAMenuItemGeneralSetting* item = [[RAMenuItemGeneralSetting alloc] initWithSetting:setting];
RAMenuItemGeneralSetting* item = [[RAMenuItemGeneralSetting alloc] initWithSetting:setting action:action];
if (item.setting->type == ST_INT ||
item.setting->type == ST_UINT ||
@ -242,11 +242,13 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
return item;
}
- (id)initWithSetting:(rarch_setting_t*)setting
- (id)initWithSetting:(rarch_setting_t*)setting action:(void (^)())action
{
if ((self = [super init]))
_setting = setting;
return self;
if ((self = [super init])) {
_setting = setting;
_action = action;
}
return self;
}
- (UITableViewCell*)cellForTableView:(UITableView*)tableView
@ -358,10 +360,12 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
/*********************************************/
@implementation RAMenuItemBooleanSetting
- (id)initWithSetting:(rarch_setting_t*)setting
- (id)initWithSetting:(rarch_setting_t*)setting action:(void (^)())action
{
if ((self = [super init]))
_setting = setting;
if ((self = [super init])) {
_setting = setting;
_action = action;
}
return self;
}
@ -388,8 +392,12 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
- (void)handleBooleanSwitch:(UISwitch*)swt
{
if (self.setting)
*self.setting->value.boolean = swt.on ? true : false;
if (self.setting) {
*self.setting->value.boolean = swt.on ? true : false;
}
if (self.action) {
self.action();
}
}
- (void)wasSelectedOnTableView:(UITableView*)tableView ofController:(UIViewController*)controller
@ -431,6 +439,8 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
setting_data_set_with_string_representation(weakSelf.setting, newval);
[[list navigationController] popViewControllerAnimated:YES];
weakSelf.action();
[weakSelf.parentTable reloadData];
}];
@ -627,7 +637,14 @@ static void RunActionSheet(const char* title, const struct string_list* items, U
path_buf, sizeof(path_buf));
if (setting && ST_ACTION < setting->type && setting->type < ST_GROUP)
[everything addObject:[RAMenuItemGeneralSetting itemForSetting:setting]];
[everything addObject:
[RAMenuItemGeneralSetting
itemForSetting:setting
action:^{
driver.menu->selection_ptr = i;
if (cbs && cbs->action_ok)
cbs->action_ok(path, entry_label, type, i);
}]];
else
{
[everything addObject:

View File

@ -217,13 +217,20 @@ enum
return (RetroArch_iOS*)[[UIApplication sharedApplication] delegate];
}
void switch_to_ios() {
void switch_to_ios(void) {
if ( apple_platform != NULL ) {
RetroArch_iOS *ap = (RetroArch_iOS *)apple_platform;
[ap showPauseMenu:ap];
}
}
void notify_content_loaded(void) {
if ( apple_platform != NULL ) {
RetroArch_iOS *ap = (RetroArch_iOS *)apple_platform;
[ap showGameView];
}
}
- (void)applicationDidFinishLaunching:(UIApplication *)application
{
apple_platform = self;
@ -244,6 +251,7 @@ void switch_to_ios() {
if ( driver.menu_ctx && driver.menu_ctx == &menu_ctx_ios && driver.menu && driver.menu->userdata ) {
ios_handle_t *ih = (ios_handle_t*)driver.menu->userdata;
ih->switch_to_ios = switch_to_ios;
ih->notify_content_loaded = notify_content_loaded;
}
apple_gamecontroller_init();

View File

@ -81,6 +81,8 @@ void main_exit_save_config(void)
g_settings.core_specific_config)
config_save_file(g_extern.core_specific_config_path);
}
rarch_main_command(RARCH_CMD_AUTOSAVE_STATE);
}
void main_exit(args_type() args)

View File

@ -17,6 +17,7 @@
#include "../../apple/common/CFExtensions.h"
#include "../frontend.h"
#include "../../menu/disp/ios.h"
#include <stdint.h>
#include <boolean.h>
@ -183,6 +184,10 @@ extern void apple_rarch_exited(void);
static void frontend_apple_load_content(void)
{
if ( driver.menu_ctx && driver.menu_ctx == &menu_ctx_ios && driver.menu && driver.menu->userdata ) {
ios_handle_t *ih = (ios_handle_t*)driver.menu->userdata;
ih->notify_content_loaded();
}
}
static void frontend_apple_shutdown(bool unused)

11
media/render-ios-icons.sh Executable file
View File

@ -0,0 +1,11 @@
#!/bin/bash
set -x
DEST=$1
for pt in 29 40 57 60 50 72 76 ; do
for scale in 1 2 3 ; do
side=$(expr $pt \* $scale)
convert retroarch.svg -resize ${side}x${side} -negate ${DEST}/Icon-${pt}-${scale}.png
done
done

View File

@ -18,7 +18,8 @@
typedef struct ios_handle
{
void (*switch_to_ios)(void);
void (*switch_to_ios)(void);
void (*notify_content_loaded)(void);
} ios_handle_t;
#endif