From 2f3959cc5204a9df1dfa6d9850e6e8ab21d72596 Mon Sep 17 00:00:00 2001 From: Serena Date: Sun, 22 Jan 2023 20:32:34 +0300 Subject: [PATCH 1/5] Memory stick customization for Darwin --- CMakeLists.txt | 9 ++- Common/DarwinMemoryStickManager.h | 38 ++++++++++++ Common/DarwinMemoryStickManager.mm | 98 ++++++++++++++++++++++++++++++ UI/GameSettingsScreen.cpp | 17 ++++++ UI/NativeApp.cpp | 8 ++- assets/lang/ar_AE.ini | 1 + assets/lang/az_AZ.ini | 1 + assets/lang/bg_BG.ini | 1 + assets/lang/ca_ES.ini | 1 + assets/lang/cz_CZ.ini | 1 + assets/lang/da_DK.ini | 1 + assets/lang/de_DE.ini | 1 + assets/lang/dr_ID.ini | 1 + assets/lang/en_US.ini | 1 + assets/lang/es_ES.ini | 1 + assets/lang/es_LA.ini | 1 + assets/lang/fa_IR.ini | 1 + assets/lang/fi_FI.ini | 1 + assets/lang/fr_FR.ini | 1 + assets/lang/gl_ES.ini | 1 + assets/lang/gr_EL.ini | 1 + assets/lang/he_IL.ini | 1 + assets/lang/he_IL_invert.ini | 1 + assets/lang/hr_HR.ini | 1 + assets/lang/hu_HU.ini | 1 + assets/lang/id_ID.ini | 1 + assets/lang/it_IT.ini | 1 + assets/lang/ja_JP.ini | 1 + assets/lang/jv_ID.ini | 1 + assets/lang/ko_KR.ini | 1 + assets/lang/lo_LA.ini | 1 + assets/lang/lt-LT.ini | 1 + assets/lang/ms_MY.ini | 1 + assets/lang/nl_NL.ini | 1 + assets/lang/no_NO.ini | 1 + assets/lang/pl_PL.ini | 1 + assets/lang/pt_BR.ini | 1 + assets/lang/pt_PT.ini | 1 + assets/lang/ro_RO.ini | 1 + assets/lang/ru_RU.ini | 1 + assets/lang/sv_SE.ini | 1 + assets/lang/tg_PH.ini | 1 + assets/lang/th_TH.ini | 1 + assets/lang/tr_TR.ini | 1 + assets/lang/uk_UA.ini | 1 + assets/lang/vi_VN.ini | 1 + assets/lang/zh_CN.ini | 1 + assets/lang/zh_TW.ini | 1 + cmake/Toolchains/ios.cmake | 2 +- 49 files changed, 209 insertions(+), 6 deletions(-) create mode 100644 Common/DarwinMemoryStickManager.h create mode 100644 Common/DarwinMemoryStickManager.mm diff --git a/CMakeLists.txt b/CMakeLists.txt index 19d8e8ca45..6549d92e48 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1148,8 +1148,11 @@ elseif(IOS) ios/iCade/iCadeReaderView.h ios/iCade/iCadeReaderView.m ios/iCade/iCadeState.h + Common/DarwinMemoryStickManager.mm + Common/DarwinMemoryStickManager.h ) - set(nativeExtraLibs ${nativeExtraLibs} "-framework Foundation -framework MediaPlayer -framework AudioToolbox -framework CoreGraphics -framework QuartzCore -framework UIKit -framework GLKit -framework OpenAL -framework AVFoundation -framework CoreLocation -framework CoreVideo -framework CoreMedia" ) + + set(nativeExtraLibs ${nativeExtraLibs} "-framework Foundation -framework MediaPlayer -framework AudioToolbox -framework CoreGraphics -framework QuartzCore -framework UIKit -framework GLKit -framework OpenAL -framework AVFoundation -framework CoreLocation -framework CoreVideo -framework CoreMedia -framework CoreServices" ) if(EXISTS "${CMAKE_IOS_SDK_ROOT}/System/Library/Frameworks/GameController.framework") set(nativeExtraLibs ${nativeExtraLibs} "-weak_framework GameController") endif() @@ -1166,7 +1169,7 @@ elseif(IOS) set_source_files_properties(ios/main.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set_source_files_properties(ios/CameraHelper.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set_source_files_properties(ios/LocationHelper.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) - + set_source_files_properties(Common/DarwinMemoryStickManager.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set(TargetBin PPSSPP) elseif(USING_QT_UI) set(CMAKE_AUTOMOC ON) @@ -1224,7 +1227,7 @@ elseif(TARGET SDL2::SDL2) endif() set(nativeExtraLibs ${nativeExtraLibs} SDL2::SDL2) if(APPLE) - set(nativeExtra ${nativeExtra} SDL/SDLMain.h SDL/SDLMain.mm SDL/SDLCocoaMetalLayer.h SDL/SDLCocoaMetalLayer.mm) + set(nativeExtra ${nativeExtra} SDL/SDLMain.h SDL/SDLMain.mm SDL/SDLCocoaMetalLayer.h SDL/SDLCocoaMetalLayer.mm Common/DarwinMemoryStickManager.mm) set(nativeExtraLibs ${nativeExtraLibs} ${COCOA_LIBRARY} ${QUARTZ_CORE_LIBRARY}) elseif(USING_EGL) set(nativeExtraLibs ${nativeExtraLibs} pthread) diff --git a/Common/DarwinMemoryStickManager.h b/Common/DarwinMemoryStickManager.h new file mode 100644 index 0000000000..4d2f5cbd8f --- /dev/null +++ b/Common/DarwinMemoryStickManager.h @@ -0,0 +1,38 @@ +// +// DarwinMemoryStickManager.h +// PPSSPP +// +// Created by Serena on 20/01/2023. +// + +#ifndef DarwinMemoryStickManager_h +#define DarwinMemoryStickManager_h + +#include "ppsspp_config.h" +#include "Common/File/Path.h" + +#define PreferredMemoryStickUserDefaultsKey "UserPreferredMemoryStickDirectoryPath" + +typedef std::function DarwinDirectoryPanelCallback; + +/// A Class to manage the memory stick on Darwin (macOS, iOS) platforms, +/// consisting of meth(od)s to present the directory panel +/// to choose the user preferred memory stick directory, +/// to determine the appropriate memory stick directory, +/// and to *set* the preferred memory stick directory. +class DarwinMemoryStickManager { +public: + /// Present a pannel to choose the directory as the memory stick manager. + void presentDirectoryPanel(DarwinDirectoryPanelCallback); + + static Path appropriateMemoryStickDirectoryToUse(); + static void setUserPreferredMemoryStickDirectory(Path); +private: + static Path __defaultMemoryStickPath(); +#if PPSSPP_PLATFORM(IOS) + // iOS only, needed for UIDocumentPickerViewController + void *__pickerDelegate = NULL; +#endif // PPSSPP_PLATFORM(IOS) +}; + +#endif /* DarwinMemoryStickManager_h */ diff --git a/Common/DarwinMemoryStickManager.mm b/Common/DarwinMemoryStickManager.mm new file mode 100644 index 0000000000..fea8aa9052 --- /dev/null +++ b/Common/DarwinMemoryStickManager.mm @@ -0,0 +1,98 @@ +// +// DarwinMemoryStickManager.mm +// PPSSPP +// +// Created by Serena on 20/01/2023. +// + +#include "ppsspp_config.h" +#include "Core/Config.h" +#include "DarwinMemoryStickManager.h" +#include +#include + +#if !__has_feature(objc_arc) +#error Must be built with ARC, please revise the flags for DarwinMemoryStickManager.mm to include -fobjc-arc. +#endif + +#if __has_include() +#include + +@interface DocumentPickerDelegate : NSObject +@property DarwinDirectoryPanelCallback callback; +@end + +@implementation DocumentPickerDelegate +-(instancetype)initWithCallback: (DarwinDirectoryPanelCallback)callback { + if (self = [super init]) { + self.callback = callback; + } + + return self; +} + +- (void)documentPicker:(UIDocumentPickerViewController *)controller didPickDocumentsAtURLs:(NSArray *)urls { + // Notice: we could've hardcoded behaviour here to call + // `DarwinMemoryStickManager::setUserPreferredMemoryStickDirectory` + // But for the sake of flexibility in the future, i'll just call a provided callback. + if (urls.count >= 1) self.callback(Path(urls[0].path.UTF8String)); +} + +@end + +#else +#include +#endif // __has_include() + +void DarwinMemoryStickManager::presentDirectoryPanel(DarwinDirectoryPanelCallback callback) { + dispatch_async(dispatch_get_main_queue(), ^{ +#if PPSSPP_PLATFORM(MAC) + NSOpenPanel *panel = [[NSOpenPanel alloc] init]; + panel.allowsMultipleSelection = NO; + panel.canChooseFiles = NO; + panel.canChooseDirectories = YES; + panel.allowedFileTypes = @[(__bridge NSString *)kUTTypeFolder]; + + NSModalResponse modalResponse = [panel runModal]; + if (modalResponse == NSModalResponseOK && panel.URLs && panel.URLs.firstObject) + callback(Path(panel.URLs.firstObject.path.UTF8String)); +#elif PPSSPP_PLATFORM(IOS) + if (UIWindow *window = [UIApplication.sharedApplication keyWindow]) { + if (UIViewController *viewController = window.rootViewController) { + NSString *folderUTType = (__bridge NSString *)kUTTypeFolder; + UIDocumentPickerViewController *pickerVC = [[UIDocumentPickerViewController alloc] + initWithDocumentTypes:@[folderUTType] inMode:UIDocumentPickerModeOpen]; + // What if you wanted to go to heaven, but then God showed you the next few lines? + // serious note: have to do this, because __pickerDelegate has to stay retained as a class property + __pickerDelegate = (void *)CFBridgingRetain([[DocumentPickerDelegate alloc] initWithCallback:callback]); + pickerVC.delegate = (__bridge DocumentPickerDelegate *)__pickerDelegate; + [viewController presentViewController:pickerVC animated:true completion:nil]; + } + } +#endif + }); +} + +Path DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse() { + NSString *userPreferred = [[NSUserDefaults standardUserDefaults] stringForKey:@(PreferredMemoryStickUserDefaultsKey)]; + if (userPreferred) + return Path(userPreferred.UTF8String); + + return __defaultMemoryStickPath(); +} + +Path DarwinMemoryStickManager::__defaultMemoryStickPath() { +#if PPSSPP_PLATFORM(IOS) + NSString *documentsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) + objectAtIndex:0]; + return Path(documentsPath.UTF8String); +#elif PPSSPP_PLATFORM(MAC) + return g_Config.defaultCurrentDirectory / ".config/ppsspp"; +#endif +} + +void DarwinMemoryStickManager::setUserPreferredMemoryStickDirectory(Path path) { + [[NSUserDefaults standardUserDefaults] setObject:@(path.c_str()) + forKey:@(PreferredMemoryStickUserDefaultsKey)]; + g_Config.memStickDirectory = path; +} diff --git a/UI/GameSettingsScreen.cpp b/UI/GameSettingsScreen.cpp index e3e380966f..33b37f78f6 100644 --- a/UI/GameSettingsScreen.cpp +++ b/UI/GameSettingsScreen.cpp @@ -74,6 +74,10 @@ #include "GPU/GPUInterface.h" #include "GPU/Common/FramebufferManagerCommon.h" +#if PPSSPP_PLATFORM(MAC) || PPSSPP_PLATFORM(IOS) +#include "Common/DarwinMemoryStickManager.h" +#endif + #if defined(_WIN32) && !PPSSPP_PLATFORM(UWP) #pragma warning(disable:4091) // workaround bug in VS2015 headers #include "Windows/MainWindow.h" @@ -891,6 +895,10 @@ void GameSettingsScreen::CreateViews() { systemSettings->Add(new Choice(sy->T("Show Memory Stick folder")))->OnClick.Handle(this, &GameSettingsScreen::OnOpenMemStick); #endif +#if PPSSPP_PLATFORM(MAC) || PPSSPP_PLATFORM(IOS) + systemSettings->Add(new Choice(sy->T("Set Memory Stick folder")))->OnClick.Handle(this, &GameSettingsScreen::OnChangeMemStickDir); +#endif + #if PPSSPP_PLATFORM(ANDROID) memstickDisplay_ = g_Config.memStickDirectory.ToVisualString(); auto memstickPath = systemSettings->Add(new ChoiceWithValueDisplay(&memstickDisplay_, sy->T("Memory Stick folder", "Memory Stick folder"), (const char *)nullptr)); @@ -1158,7 +1166,16 @@ UI::EventReturn GameSettingsScreen::OnJitAffectingSetting(UI::EventParams &e) { } UI::EventReturn GameSettingsScreen::OnChangeMemStickDir(UI::EventParams &e) { + #if PPSSPP_PLATFORM(MAC) || PPSSPP_PLATFORM(IOS) + DarwinMemoryStickManager memoryStickManager; + DarwinDirectoryPanelCallback callback = [] (Path thePathChosen) { + DarwinMemoryStickManager::setUserPreferredMemoryStickDirectory(thePathChosen); + }; + + memoryStickManager.presentDirectoryPanel(callback); + #else screenManager()->push(new MemStickScreen(false)); + #endif return UI::EVENT_DONE; } diff --git a/UI/NativeApp.cpp b/UI/NativeApp.cpp index e983e3e832..f734db8c02 100644 --- a/UI/NativeApp.cpp +++ b/UI/NativeApp.cpp @@ -141,6 +141,10 @@ #include #endif +#if PPSSPP_PLATFORM(IOS) || PPSSPP_PLATFORM(MAC) +#include "Common/DarwinMemoryStickManager.h" +#endif + ScreenManager *screenManager; std::string config_filename; @@ -538,11 +542,11 @@ void NativeInit(int argc, const char *argv[], const char *savegame_dir, const ch #elif PPSSPP_PLATFORM(IOS) g_Config.defaultCurrentDirectory = g_Config.internalDataDirectory; - g_Config.memStickDirectory = Path(user_data_path); + g_Config.memStickDirectory = DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse(); g_Config.flash0Directory = Path(std::string(external_dir)) / "flash0"; #elif PPSSPP_PLATFORM(MAC) g_Config.defaultCurrentDirectory = Path(getenv("HOME")); - g_Config.memStickDirectory = g_Config.defaultCurrentDirectory / ".config/ppsspp"; + g_Config.memStickDirectory = DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse(); g_Config.flash0Directory = Path(std::string(external_dir)) / "flash0"; #elif PPSSPP_PLATFORM(SWITCH) g_Config.memStickDirectory = g_Config.internalDataDirectory / "config/ppsspp"; diff --git a/assets/lang/ar_AE.ini b/assets/lang/ar_AE.ini index a94c53d0a3..c5223cfa3a 100644 --- a/assets/lang/ar_AE.ini +++ b/assets/lang/ar_AE.ini @@ -1179,6 +1179,7 @@ Save path in My Documents = ‎مسار الحفظ في مستنداتي Savestate Slot = ‎منطقة حفظ الحالة Savestate slot backups = Savestate slot backups Screenshots as PNG = ‎PNG إحفظ لقطة الشاشة في صيغة +Set Memory Stick folder = Set Memory Stick folder Set UI background... = ‎حدد خلفية الواجهة... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/az_AZ.ini b/assets/lang/az_AZ.ini index 1cbe23bd1f..c3307efb9b 100644 --- a/assets/lang/az_AZ.ini +++ b/assets/lang/az_AZ.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Save screenshots in PNG format +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/bg_BG.ini b/assets/lang/bg_BG.ini index aab9e7934e..1b322c9ef2 100644 --- a/assets/lang/bg_BG.ini +++ b/assets/lang/bg_BG.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = слот за запазено състояние Savestate slot backups = Savestate slot backups Screenshots as PNG = Запази снимка в PNG формат +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/ca_ES.ini b/assets/lang/ca_ES.ini index 5d840ba149..8efbf5edf4 100644 --- a/assets/lang/ca_ES.ini +++ b/assets/lang/ca_ES.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Save screenshots in PNG format +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/cz_CZ.ini b/assets/lang/cz_CZ.ini index 64ba01369a..aabc47d379 100644 --- a/assets/lang/cz_CZ.ini +++ b/assets/lang/cz_CZ.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Cesta pro uložení dat je v Dokumentech Savestate Slot = Pozice uložené hry Savestate slot backups = Savestate slot backups Screenshots as PNG = Ukládat snímky obrazovky ve formátu PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/da_DK.ini b/assets/lang/da_DK.ini index 290451f59d..5494d09632 100644 --- a/assets/lang/da_DK.ini +++ b/assets/lang/da_DK.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Gem sti i Mine Dokumenter Savestate Slot = Lagerplads for spil-status Savestate slot backups = Savestate slot backups Screenshots as PNG = Gem skærmdumps i PNG format +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Sæt UI baggrund... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/de_DE.ini b/assets/lang/de_DE.ini index 4b141719f2..018d76a3d0 100644 --- a/assets/lang/de_DE.ini +++ b/assets/lang/de_DE.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Speicherpfad in "Meine Dokumente" Savestate Slot = Speicherplatz Savestate slot backups = Backups für Speicherplatz Screenshots as PNG = Screenshots im PNG-Format speichern +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Setze Menühintergrund... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/dr_ID.ini b/assets/lang/dr_ID.ini index 9bfbc83b20..9e99a0677b 100644 --- a/assets/lang/dr_ID.ini +++ b/assets/lang/dr_ID.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Alai gambara'na PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/en_US.ini b/assets/lang/en_US.ini index 63148bdd13..cfd796836b 100644 --- a/assets/lang/en_US.ini +++ b/assets/lang/en_US.ini @@ -1186,6 +1186,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Save screenshots in PNG format +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show region flag = Show region flag diff --git a/assets/lang/es_ES.ini b/assets/lang/es_ES.ini index e1e01795f9..35b8c14807 100644 --- a/assets/lang/es_ES.ini +++ b/assets/lang/es_ES.ini @@ -1172,6 +1172,7 @@ Save path in My Documents = Carpeta de guardado en "Mis documentos" Savestate Slot = Ranura de estado guardado Savestate slot backups = Ranura de backups de estados guardados Screenshots as PNG = Capturas en PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Definir imagen de fondo... Show ID = Mostrar ID Show Memory Stick folder = Mostrar directorio Memory Stick diff --git a/assets/lang/es_LA.ini b/assets/lang/es_LA.ini index 9e774b8757..829eb4be30 100644 --- a/assets/lang/es_LA.ini +++ b/assets/lang/es_LA.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Guardar ruta en\n"C:/Users/(tu usuario)/Documents" Savestate Slot = Ranura de estado guardado Savestate slot backups = Copias de seguridad de estado guardado Screenshots as PNG = Capturas en PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Colocar fondo de interfaz... Show ID = Mostrar ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/fa_IR.ini b/assets/lang/fa_IR.ini index 81742d6a31..680e958cc4 100644 --- a/assets/lang/fa_IR.ini +++ b/assets/lang/fa_IR.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = ذخیره در داکیومنت ها Savestate Slot = Savestate slot Savestate slot backups = پشتیبان گیری از داده Screenshots as PNG = ‎باشد PNG اسکرین شات با فرمت +Set Memory Stick folder = Set Memory Stick folder Set UI background... = ‎... تنظیم تصویر پس زمینه Show ID = ایدی Show Memory Stick folder = نمایش پوشه حافظه diff --git a/assets/lang/fi_FI.ini b/assets/lang/fi_FI.ini index e069109714..bf09007dd0 100644 --- a/assets/lang/fi_FI.ini +++ b/assets/lang/fi_FI.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Save screenshots in PNG format +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/fr_FR.ini b/assets/lang/fr_FR.ini index 99b7ae2d6a..bd76be0607 100644 --- a/assets/lang/fr_FR.ini +++ b/assets/lang/fr_FR.ini @@ -1162,6 +1162,7 @@ Save path in My Documents = Chemin de sauvegarde dans "Mes documents" Savestate Slot = Emplacement d'état Savestate slot backups = Emplacement d'état de secours Screenshots as PNG = Enregistrer les captures d'écran au format .png +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Définir un fond d'écran... Show ID = Afficher l'identifiant Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/gl_ES.ini b/assets/lang/gl_ES.ini index eb0023fb6f..cccbc2c91a 100644 --- a/assets/lang/gl_ES.ini +++ b/assets/lang/gl_ES.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Carpeta de gardado en Meus documentos Savestate Slot = Ranura de estado gardado Savestate slot backups = Savestate slot backups Screenshots as PNG = Capturas en PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/gr_EL.ini b/assets/lang/gr_EL.ini index a4fe6ab7df..a71d2c8396 100644 --- a/assets/lang/gr_EL.ini +++ b/assets/lang/gr_EL.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Αποθήκευση διαδρομής στα Έγ Savestate Slot = Slot Σημείου Αποθήκευσης Savestate slot backups = Αντίγραφα ασφαλείας slot σημείων αποθήκευσης Screenshots as PNG = Αποθήκευση Στιγμιοτύπων ως PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Ορισμός φόντου UI... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/he_IL.ini b/assets/lang/he_IL.ini index db31a0e975..a467804fe4 100644 --- a/assets/lang/he_IL.ini +++ b/assets/lang/he_IL.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = שמור צילום מסך כ PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/he_IL_invert.ini b/assets/lang/he_IL_invert.ini index 90d9a656dd..280841603e 100644 --- a/assets/lang/he_IL_invert.ini +++ b/assets/lang/he_IL_invert.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = PNG כ ךסמ םוליצ רומש +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/hr_HR.ini b/assets/lang/hr_HR.ini index ff454a7137..0de6a49ba6 100644 --- a/assets/lang/hr_HR.ini +++ b/assets/lang/hr_HR.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Spremi put u My Documents Savestate Slot = Savestate mjesto Savestate slot backups = Savestate mjesto backup-ovi Screenshots as PNG = Spremi snimak zaslona u PNG formatu +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Postavi UI pozadinu... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/hu_HU.ini b/assets/lang/hu_HU.ini index 8e4a9d7b8c..77d52f97ff 100644 --- a/assets/lang/hu_HU.ini +++ b/assets/lang/hu_HU.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Mentés helye a Dokumentumok mappában Savestate Slot = Állapotmentés sorszáma Savestate slot backups = Állapotmentések sorszámonkénti biztonsági másolata Screenshots as PNG = Képek mentése PNG formátumban +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Kezelőfelület hátterének beállítása… Show ID = Azonosító megjelenítése Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/id_ID.ini b/assets/lang/id_ID.ini index 3f8f2f8285..e2bbeb039d 100644 --- a/assets/lang/id_ID.ini +++ b/assets/lang/id_ID.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Simpan jalur dalam dokumen saya Savestate Slot = Slot simpanan status Savestate slot backups = Slot cadangan simpanan status Screenshots as PNG = Simpan tangkapan layar dalam format PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Gunakan latar belakang UI kustom... Show ID = Tampilkan ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/it_IT.ini b/assets/lang/it_IT.ini index 8bbb3cc512..897a8ad2e4 100644 --- a/assets/lang/it_IT.ini +++ b/assets/lang/it_IT.ini @@ -1139,6 +1139,7 @@ No animation = Nessuna animazione Path does not exist! = Il percorso non esiste! PSP Memory Stick = Memory Stick PSP Recent games = Giochi recenti +Set Memory Stick folder = Set Memory Stick folder Show Memory Stick folder = Mostra cartella Memory Stick Theme = Tema Transparent UI background = Transparent UI background diff --git a/assets/lang/ja_JP.ini b/assets/lang/ja_JP.ini index deaa26567a..07dbd5e436 100644 --- a/assets/lang/ja_JP.ini +++ b/assets/lang/ja_JP.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = パスを My Documents に保存する Savestate Slot = セーブステートのスロット Savestate slot backups = セーブステートのスロットをバックアップする Screenshots as PNG = スクリーンショットをPNG形式で保存する +Set Memory Stick folder = Set Memory Stick folder Set UI background... = UIの背景を設定する... Show ID = IDを表示する Show region flag = 地域の旗を表示する diff --git a/assets/lang/jv_ID.ini b/assets/lang/jv_ID.ini index 35abca2941..98a9b281a3 100644 --- a/assets/lang/jv_ID.ini +++ b/assets/lang/jv_ID.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Nyimpen path ing Dokumen kulo Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Gambar minangka PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/ko_KR.ini b/assets/lang/ko_KR.ini index 20492e1f99..cb5c84c905 100644 --- a/assets/lang/ko_KR.ini +++ b/assets/lang/ko_KR.ini @@ -1182,6 +1182,7 @@ Save path in My Documents = 내 문서에 경로 저장 Savestate Slot = 저장 상태 슬롯 Savestate slot backups = 저장 상태 슬롯 백업 Screenshots as PNG = 스크린샷을 PNG 형식으로 저장 +Set Memory Stick folder = Set Memory Stick folder Set UI background... = UI 배경 설정... Show ID = ID 표시 Show region flag = 지역 플래그 표시 diff --git a/assets/lang/lo_LA.ini b/assets/lang/lo_LA.ini index d089854650..6326dbb401 100644 --- a/assets/lang/lo_LA.ini +++ b/assets/lang/lo_LA.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = ບັນທຶກຂໍ້ມູນໄວ້ທີ Savestate Slot = ຊ່ອງເກັບເຊບ Savestate slot backups = Savestate slot backups Screenshots as PNG = ຈັບພາບໜ້າຈໍເປັນ PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = ປ່ຽນພາບພື້ນຫຼັງ... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/lt-LT.ini b/assets/lang/lt-LT.ini index 2316caf713..5e42f7ecee 100644 --- a/assets/lang/lt-LT.ini +++ b/assets/lang/lt-LT.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Išsaugojimo statuso vieta Savestate slot backups = Savestate slot backups Screenshots as PNG = Išsaugoti nuotraukas PNG formatu +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/ms_MY.ini b/assets/lang/ms_MY.ini index 3811d3a029..602b35301f 100644 --- a/assets/lang/ms_MY.ini +++ b/assets/lang/ms_MY.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Slot Savestate Savestate slot backups = Savestate slot backups Screenshots as PNG = Simpan pembidik skrin sebagai format PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/nl_NL.ini b/assets/lang/nl_NL.ini index d5d59f6144..88ebca38e1 100644 --- a/assets/lang/nl_NL.ini +++ b/assets/lang/nl_NL.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Opslagpad in Mijn documenten Savestate Slot = Savestatesleuf Savestate slot backups = Savestate slot backups Screenshots as PNG = Screenshots opslaan in PNG-formaat +Set Memory Stick folder = Set Memory Stick folder Set UI background... = UI-achtergrond instellen... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/no_NO.ini b/assets/lang/no_NO.ini index e16e3a3a97..032a1a80e1 100644 --- a/assets/lang/no_NO.ini +++ b/assets/lang/no_NO.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Save screenshots in PNG format +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/pl_PL.ini b/assets/lang/pl_PL.ini index 957d705341..e219948470 100644 --- a/assets/lang/pl_PL.ini +++ b/assets/lang/pl_PL.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Ścieżka zapisu w Dokumentach Savestate Slot = Slot zapisu stanu Savestate slot backups = Kopie zapasowe slota zapisu stanu Screenshots as PNG = Zapisuj zrzuty ekranu jako PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Zmień tło interfejsu... Show ID = Show ID Show Memory Stick folder = Pokaż folder Karty Pamięci diff --git a/assets/lang/pt_BR.ini b/assets/lang/pt_BR.ini index 12a518a248..b2c8d5dcf9 100644 --- a/assets/lang/pt_BR.ini +++ b/assets/lang/pt_BR.ini @@ -1186,6 +1186,7 @@ Save path in My Documents = Caminho do save em Meus Documentos Savestate Slot = Slot do state salvo Savestate slot backups = Backups dos slots dos states salvos Screenshots as PNG = Salvar as screenshots no formato PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Definir o cenário de fundo da interface do usuário... Show ID = Mostrar ID Show region flag = Mostrar a bandeira da região diff --git a/assets/lang/pt_PT.ini b/assets/lang/pt_PT.ini index 1791e6305a..65719e17ca 100644 --- a/assets/lang/pt_PT.ini +++ b/assets/lang/pt_PT.ini @@ -1187,6 +1187,7 @@ Save path in My Documents = Caminho do save em Meus Documentos Savestate Slot = Espaço do estado salvo Savestate slot backups = Backups dos espaços dos estados salvos Screenshots as PNG = Salvar as Capturas de Tela em formato .png +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Definir o cenário de fundo da interface do usuário... Show ID = Mostrar ID Show region flag = Mostrar a bandeira da região diff --git a/assets/lang/ro_RO.ini b/assets/lang/ro_RO.ini index aac4713502..a6832af01c 100644 --- a/assets/lang/ro_RO.ini +++ b/assets/lang/ro_RO.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Slot salvare Savestate slot backups = Savestate slot backups Screenshots as PNG = Salvează instantanee în format PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/ru_RU.ini b/assets/lang/ru_RU.ini index 6c3118aa53..01391d7144 100644 --- a/assets/lang/ru_RU.ini +++ b/assets/lang/ru_RU.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Путь до сохранений в "Мои док Savestate Slot = Слот состояния Savestate slot backups = Резервные копии слота состояния Screenshots as PNG = Сохранять скриншоты в PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Изменить фон интерфейса... Show ID = Показывать ID Show Memory Stick folder = Показать папку Memory Stick diff --git a/assets/lang/sv_SE.ini b/assets/lang/sv_SE.ini index d401cb851c..7889fe5084 100644 --- a/assets/lang/sv_SE.ini +++ b/assets/lang/sv_SE.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Sparkatalog i Dokument Savestate Slot = Savestate slot Savestate slot backups = Savestate slot backups Screenshots as PNG = Skärmdumpar som PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Välj UI-bakgrund... Show ID = Show ID Show Memory Stick folder = Visa Memory Stick-mappen diff --git a/assets/lang/tg_PH.ini b/assets/lang/tg_PH.ini index 22a6249441..718a8adc59 100644 --- a/assets/lang/tg_PH.ini +++ b/assets/lang/tg_PH.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = I-save sa direksyon na "Aking Dokumento" Savestate Slot = Savestate Slot Savestate slot backups = Savestate slot backups Screenshots as PNG = I-save ang Screenshot sa PNG na pormat +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Magtakda ng UI background... Show ID = Ipakita ang ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/th_TH.ini b/assets/lang/th_TH.ini index a9979adc40..9f86a0cf24 100644 --- a/assets/lang/th_TH.ini +++ b/assets/lang/th_TH.ini @@ -1177,6 +1177,7 @@ Save path in My Documents = บันทึกข้อมูลไว้ที Savestate Slot = ช่องเก็บเซฟสเตทเกม Savestate slot backups = สำรองข้อมูลเซฟสเตท Screenshots as PNG = จับภาพหน้าจอเป็นไฟล์ PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = เปลี่ยนภาพพื้นหลัง... Show ID = แสดงไอดี/เวอร์ชั่นเกม Show Memory Stick folder = แสดงโฟลเดอร์เม็มโมรี่สติ๊ก diff --git a/assets/lang/tr_TR.ini b/assets/lang/tr_TR.ini index c40dc3d60a..6bb17f5a22 100644 --- a/assets/lang/tr_TR.ini +++ b/assets/lang/tr_TR.ini @@ -1172,6 +1172,7 @@ Save path in My Documents = Dosyaları "Belgeler"'e kaydet Savestate Slot = Durum kaydı yeri Savestate slot backups = Durum kaydı slot yedekleri Screenshots as PNG = Ekran görüntülerini PNG olarak kaydet +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Arayüz arkaplanı ayarla... Show ID = ID'yi göster Show Memory Stick folder = Hafıza Kartı klasörünü göster diff --git a/assets/lang/uk_UA.ini b/assets/lang/uk_UA.ini index da40cfbd1b..fbe6a704e8 100644 --- a/assets/lang/uk_UA.ini +++ b/assets/lang/uk_UA.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Шлях до збережень в Моїх док Savestate Slot = Слот пам'яті Savestate slot backups = Резервні копії слота стану Screenshots as PNG = Скріншот в PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Змінити фон інтерфейсу... Show ID = Показати ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/vi_VN.ini b/assets/lang/vi_VN.ini index 88138d293f..d9f8272c47 100644 --- a/assets/lang/vi_VN.ini +++ b/assets/lang/vi_VN.ini @@ -1171,6 +1171,7 @@ Save path in My Documents = Save path in My Documents Savestate Slot = Ô save Savestate slot backups = Savestate slot backups Screenshots as PNG = Chụp ảnh màn hình bằng định dạng PNG +Set Memory Stick folder = Set Memory Stick folder Set UI background... = Set UI background... Show ID = Show ID Show Memory Stick folder = Show Memory Stick folder diff --git a/assets/lang/zh_CN.ini b/assets/lang/zh_CN.ini index afcd664279..ba63ff2d62 100644 --- a/assets/lang/zh_CN.ini +++ b/assets/lang/zh_CN.ini @@ -1165,6 +1165,7 @@ Save path in My Documents = 存档路径在我的文档 Savestate Slot = 即时存档插槽 Savestate slot backups = 即时存档插槽备份 Screenshots as PNG = 将截图保存为PNG格式 +Set Memory Stick folder = Set Memory Stick folder Set UI background... = 设置界面背景... Show ID = 显示游戏ID Show region flag = 显示游戏区域标识 diff --git a/assets/lang/zh_TW.ini b/assets/lang/zh_TW.ini index e73e785379..9ccaec944e 100644 --- a/assets/lang/zh_TW.ini +++ b/assets/lang/zh_TW.ini @@ -1162,6 +1162,7 @@ Save path in My Documents = 儲存路徑於「我的文件」 Savestate Slot = 存檔插槽 Savestate slot backups = 存檔插槽備份 Screenshots as PNG = 以 PNG 格式儲存螢幕截圖 +Set Memory Stick folder = Set Memory Stick folder Set UI background... = 設定 UI 背景… Show ID = 顯示 ID Show region flag = 顯示區域旗幟 diff --git a/cmake/Toolchains/ios.cmake b/cmake/Toolchains/ios.cmake index 45a8a219bc..e5f7f215b4 100644 --- a/cmake/Toolchains/ios.cmake +++ b/cmake/Toolchains/ios.cmake @@ -31,9 +31,9 @@ set(CMAKE_SYSTEM_PROCESSOR aarch64) set(IOS ON) set(CMAKE_CROSSCOMPILING ON) set(CMAKE_MACOSX_BUNDLE YES) +set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET ${IPHONEOS_DEPLOYMENT_TARGET}) set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO") set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "") -set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET ${IPHONEOS_DEPLOYMENT_TARGET}) # Setup iOS platform unless specified manually with IOS_PLATFORM if(NOT DEFINED IOS_PLATFORM) From d9ad0e36d3f2a0df96773b424ecd735ec8b2b944 Mon Sep 17 00:00:00 2001 From: Serena Date: Sun, 22 Jan 2023 20:44:18 +0300 Subject: [PATCH 2/5] Indentation fixes --- CMakeLists.txt | 6 +++--- UI/GameSettingsScreen.cpp | 2 +- UI/NativeApp.cpp | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6549d92e48..4b3f6d34f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1148,8 +1148,8 @@ elseif(IOS) ios/iCade/iCadeReaderView.h ios/iCade/iCadeReaderView.m ios/iCade/iCadeState.h - Common/DarwinMemoryStickManager.mm - Common/DarwinMemoryStickManager.h + Common/DarwinMemoryStickManager.mm + Common/DarwinMemoryStickManager.h ) set(nativeExtraLibs ${nativeExtraLibs} "-framework Foundation -framework MediaPlayer -framework AudioToolbox -framework CoreGraphics -framework QuartzCore -framework UIKit -framework GLKit -framework OpenAL -framework AVFoundation -framework CoreLocation -framework CoreVideo -framework CoreMedia -framework CoreServices" ) @@ -1169,7 +1169,7 @@ elseif(IOS) set_source_files_properties(ios/main.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set_source_files_properties(ios/CameraHelper.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set_source_files_properties(ios/LocationHelper.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) - set_source_files_properties(Common/DarwinMemoryStickManager.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) + set_source_files_properties(Common/DarwinMemoryStickManager.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set(TargetBin PPSSPP) elseif(USING_QT_UI) set(CMAKE_AUTOMOC ON) diff --git a/UI/GameSettingsScreen.cpp b/UI/GameSettingsScreen.cpp index 33b37f78f6..73ff4ab7fc 100644 --- a/UI/GameSettingsScreen.cpp +++ b/UI/GameSettingsScreen.cpp @@ -1167,7 +1167,7 @@ UI::EventReturn GameSettingsScreen::OnJitAffectingSetting(UI::EventParams &e) { UI::EventReturn GameSettingsScreen::OnChangeMemStickDir(UI::EventParams &e) { #if PPSSPP_PLATFORM(MAC) || PPSSPP_PLATFORM(IOS) - DarwinMemoryStickManager memoryStickManager; + DarwinMemoryStickManager memoryStickManager; DarwinDirectoryPanelCallback callback = [] (Path thePathChosen) { DarwinMemoryStickManager::setUserPreferredMemoryStickDirectory(thePathChosen); }; diff --git a/UI/NativeApp.cpp b/UI/NativeApp.cpp index f734db8c02..8627061220 100644 --- a/UI/NativeApp.cpp +++ b/UI/NativeApp.cpp @@ -542,11 +542,11 @@ void NativeInit(int argc, const char *argv[], const char *savegame_dir, const ch #elif PPSSPP_PLATFORM(IOS) g_Config.defaultCurrentDirectory = g_Config.internalDataDirectory; - g_Config.memStickDirectory = DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse(); + g_Config.memStickDirectory = DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse(); g_Config.flash0Directory = Path(std::string(external_dir)) / "flash0"; #elif PPSSPP_PLATFORM(MAC) g_Config.defaultCurrentDirectory = Path(getenv("HOME")); - g_Config.memStickDirectory = DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse(); + g_Config.memStickDirectory = DarwinMemoryStickManager::appropriateMemoryStickDirectoryToUse(); g_Config.flash0Directory = Path(std::string(external_dir)) / "flash0"; #elif PPSSPP_PLATFORM(SWITCH) g_Config.memStickDirectory = g_Config.internalDataDirectory / "config/ppsspp"; From 5066f7f248c3dab9259c6dd6a56969a7e839aff9 Mon Sep 17 00:00:00 2001 From: Serena Date: Sun, 22 Jan 2023 20:45:28 +0300 Subject: [PATCH 3/5] Trigger CI --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 48937e2874..8ff46c53d6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,6 +6,7 @@ on: - master # For testing. - actions + - serena/memory-stick-dir-customization tags: - "v*.*" paths-ignore: From c10e4470850b12e1a437142b94be336fbd80a2b1 Mon Sep 17 00:00:00 2001 From: Serena Date: Sun, 22 Jan 2023 21:04:41 +0300 Subject: [PATCH 4/5] Fix macOS by adding ARC build --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4b3f6d34f8..ed7c21ffa3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1228,6 +1228,7 @@ elseif(TARGET SDL2::SDL2) set(nativeExtraLibs ${nativeExtraLibs} SDL2::SDL2) if(APPLE) set(nativeExtra ${nativeExtra} SDL/SDLMain.h SDL/SDLMain.mm SDL/SDLCocoaMetalLayer.h SDL/SDLCocoaMetalLayer.mm Common/DarwinMemoryStickManager.mm) + set_source_files_properties(Common/DarwinMemoryStickManager.mm PROPERTIES COMPILE_FLAGS -fobjc-arc) set(nativeExtraLibs ${nativeExtraLibs} ${COCOA_LIBRARY} ${QUARTZ_CORE_LIBRARY}) elseif(USING_EGL) set(nativeExtraLibs ${nativeExtraLibs} pthread) From 1e502cf9871f8d1e03a9855a0d74c1b10f4b9386 Mon Sep 17 00:00:00 2001 From: Serena Date: Sun, 22 Jan 2023 22:42:56 +0300 Subject: [PATCH 5/5] Don't remove code sign identity by default for ios.cmake and remove branch from build.yml --- .github/workflows/build.yml | 1 - cmake/Toolchains/ios.cmake | 2 -- 2 files changed, 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8ff46c53d6..48937e2874 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -6,7 +6,6 @@ on: - master # For testing. - actions - - serena/memory-stick-dir-customization tags: - "v*.*" paths-ignore: diff --git a/cmake/Toolchains/ios.cmake b/cmake/Toolchains/ios.cmake index e5f7f215b4..a8041ec376 100644 --- a/cmake/Toolchains/ios.cmake +++ b/cmake/Toolchains/ios.cmake @@ -32,8 +32,6 @@ set(IOS ON) set(CMAKE_CROSSCOMPILING ON) set(CMAKE_MACOSX_BUNDLE YES) set(CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET ${IPHONEOS_DEPLOYMENT_TARGET}) -set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO") -set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "") # Setup iOS platform unless specified manually with IOS_PLATFORM if(NOT DEFINED IOS_PLATFORM)