macOS/iOS: Use more modern APIs for determining the save directory.

--HG--
branch : minor
This commit is contained in:
Alex Szpakowski
2019-12-22 17:42:23 -04:00
parent e898d4571a
commit a27781aa6a
6 changed files with 41 additions and 12 deletions
+8 -4
View File
@@ -287,22 +287,26 @@ std::string getLoveInResources(bool &fused)
return path;
}
std::string getAppdataDirectory()
static std::string getUserDirectory(NSSearchPathDirectory dir)
{
NSSearchPathDirectory searchdir = NSApplicationSupportDirectory;
std::string path;
@autoreleasepool
{
NSArray *dirs = NSSearchPathForDirectoriesInDomains(searchdir, NSUserDomainMask, YES);
NSArray<NSURL *> *dirs = [[NSFileManager defaultManager] URLsForDirectory:dir inDomains:NSUserDomainMask];
if (dirs.count > 0)
path = [dirs[0] UTF8String];
path = [dirs[0].path UTF8String];
}
return path;
}
std::string getAppdataDirectory()
{
return getUserDirectory(NSApplicationSupportDirectory);
}
std::string getHomeDirectory()
{
std::string path;
+2
View File
@@ -32,6 +32,8 @@ namespace love
namespace macosx
{
std::string getAppdataDirectory();
/**
* Returns the filepath of the first detected love file in the Resources folder
* in the main bundle (love.app.)
+20
View File
@@ -36,6 +36,26 @@ namespace love
namespace macosx
{
static std::string getUserDirectory(NSSearchPathDirectory dir)
{
std::string path;
@autoreleasepool
{
NSArray<NSURL *> *dirs = [[NSFileManager defaultManager] URLsForDirectory:dir inDomains:NSUserDomainMask];
if (dirs.count > 0)
path = [dirs[0].path UTF8String];
}
return path;
}
std::string getAppdataDirectory()
{
return getUserDirectory(NSApplicationSupportDirectory);
}
std::string getLoveInResources()
{
std::string path;