From 8e2ce20bf3f0ee61416c7cad87689d98640b1143 Mon Sep 17 00:00:00 2001 From: YellowCat98 Date: Sat, 11 May 2024 19:03:16 +0100 Subject: [PATCH] hmmm --- CMakeLists.txt | 2 +- mod.json | 7 ++++- resources/geode-logo.png | Bin 0 -> 38572 bytes src/main.hpp | 3 +- src/{main.cpp => main.mm} | 6 ++-- src/mainobj.mm | 59 ++++++++++++-------------------------- 6 files changed, 30 insertions(+), 47 deletions(-) create mode 100644 resources/geode-logo.png rename src/{main.cpp => main.mm} (58%) diff --git a/CMakeLists.txt b/CMakeLists.txt index cd3f3cf..ccf099f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,7 +15,7 @@ if(${GEODE_TARGET_PLATFORM} STREQUAL "iOS") endif() add_library(${PROJECT_NAME} SHARED - src/main.cpp + src/main.mm src/mainobj.mm src/main.hpp ) diff --git a/mod.json b/mod.json index 000c6a4..6495150 100644 --- a/mod.json +++ b/mod.json @@ -5,5 +5,10 @@ "id": "yellowcat98.ifpshack", "name": "iFPSHack", "developer": "YellowCat98", - "description": "This mod lets you change your fps on iOS!" + "description": "This mod lets you change your fps on iOS!", + "resources": { + "sprites": [ + "geode-logo.png" + ] + } } \ No newline at end of file diff --git a/resources/geode-logo.png b/resources/geode-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..0b861859354bee8bcbacd6a9bdcbcd2042ef1d12 GIT binary patch literal 38572 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 -#include +#import +#import #include "main.hpp" using namespace geode::prelude; class $modify(MenuLayer) { void onMoreGames(CCObject*) { - pickImage(); + log::info("Hello"); } }; \ No newline at end of file diff --git a/src/mainobj.mm b/src/mainobj.mm index 8fd8072..2f3c244 100644 --- a/src/mainobj.mm +++ b/src/mainobj.mm @@ -1,5 +1,4 @@ #import -#import #include "main.hpp" void showAlert(const char *title, const char *message) { @@ -23,44 +22,24 @@ void showAlert(const char *title, const char *message) { [rootViewController presentViewController:alertController animated:YES completion:nil]; } - - -// Custom delegate class for image picker -@interface ImagePickerDelegate : NSObject -@end - -@implementation ImagePickerDelegate - -// Delegate method called when an image is picked -- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { - NSString *mediaType = info[UIImagePickerControllerMediaType]; - if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) { - UIImage *selectedImage = info[UIImagePickerControllerOriginalImage]; - NSURL *imageURL = info[UIImagePickerControllerImageURL]; - NSString *imageName = [imageURL lastPathComponent]; - - showAlert("Selected Image", [imageName UTF8String]); +void setAppIcon(NSString *iconPath) { + if (@available(iOS 10.3, *)) { + if ([[UIApplication sharedApplication] supportsAlternativeIcons]) { + dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ + UIImage *iconImage = [UIImage imageWithContentsOfFile:iconPath]; + + dispatch_async(dispatch_get_main_queue(), ^{ + [[UIApplication sharedApplication] setAlternateIconImage:iconImage completionHandler:^(NSError * _Nullable error) { + if (error) { + showAlert("Error", "There has been an error setting the app icon."); + } + }]; + }); + }); + } else { + showAlert("Unsupported.", "Setting app icons is not supported"); } - - [picker dismissViewControllerAnimated:YES completion:nil]; -} - -// Delegate method called when the image picker is canceled -- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker { - [picker dismissViewControllerAnimated:YES completion:nil]; -} - -@end - -void pickImage() { - UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; - imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; - - // Create an instance of our custom delegate class - ImagePickerDelegate *imagePickerDelegate = [[ImagePickerDelegate alloc] init]; - imagePicker.delegate = imagePickerDelegate; - - // Get the root view controller to present the image picker - UIViewController *rootViewController = [[[[UIApplication sharedApplication] delegate] window] rootViewController]; - [rootViewController presentViewController:imagePicker animated:YES completion:nil]; + } else { + showAlert("Unsupported Version", "Your iOS version does not support alternative app icons."); + } } \ No newline at end of file