@@ -25,14 +25,20 @@ public class SteamLocator : IGameLocator
2525 return null ;
2626 }
2727
28+ [ SupportedOSPlatform ( "macos" ) ]
29+ private string ? FindSteamLibraryMacOS ( )
30+ {
31+ // TODO: Open a folder selection window
32+ return "" ;
33+ }
34+
2835 private string ? FindSteamLibraryUnix ( )
2936 {
3037 var pathList = new [ ]
3138 {
3239 Path . Combine ( ".steam" , "steam" ) ,
3340 Path . Combine ( ".var" , "app" , "com.valvesoftware.Steam" , ".steam" , "steam" ) ,
34- Path . Combine ( "snap" , "steam" , "common" , ".steam" , "steam" ) ,
35- } ;
41+ Path . Combine ( "snap" , "steam" , "common" , ".steam" , "steam" ) , } ;
3642
3743 foreach ( string path in pathList )
3844 {
@@ -54,6 +60,12 @@ public class SteamLocator : IGameLocator
5460 return SteamInstallPath ;
5561 }
5662
63+ if ( OperatingSystem . IsMacOS ( ) )
64+ {
65+ SteamInstallPath = FindSteamLibraryMacOS ( ) ;
66+ return SteamInstallPath ;
67+ }
68+
5769 SteamInstallPath = FindSteamLibraryUnix ( ) ;
5870 return SteamInstallPath ;
5971 }
@@ -86,7 +98,7 @@ public List<SteamGame> Locate()
8698 continue ;
8799 }
88100
89- // Paths will be encoded by Windows steam and will need to be adapted for macOS Paths .
101+ // Paths will be encoded by Windows Steam and will need to be adapted for macOS paths .
90102 // C:\ is equivalent to the Wine prefix.
91103 // Any other drive letter should be removed and treated as raw Unix path.
92104 if ( OperatingSystem . IsMacOS ( ) )
0 commit comments