From: rnayabed Date: Sat, 27 Feb 2021 13:37:38 +0530 Subject: work --- work --- --- 'a/src/main/java/com/stream_pi/client/info/ClientInfo.java' +++ b/src/main/java/com/stream_pi/client/info/ClientInfo.java @@ -44,14 +44,14 @@ public class ClientInfo { String osName = System.getProperty("os.name").toLowerCase(); + prePath = System.getProperty("user.home")+"/Stream-Pi/Client/"; + if(osName.contains("windows")) { - prePath = "data/"; platformType = Platform.WINDOWS; } else if (osName.contains("linux")) { - prePath = "data/"; platformType = Platform.LINUX; } else if(osName.contains("android")) // SPECIFY -Dsvm.targetName=android WHILE BUILDING ANDROID NATIVE IMAGE @@ -61,12 +61,10 @@ public class ClientInfo { } else if (osName.contains("mac")) { - prePath = "data/"; platformType = Platform.MAC; } else { - prePath = "data/"; platformType = Platform.UNKNOWN; } } --- 'a/src/main/java/com/stream_pi/client/io/Config.java' +++ b/src/main/java/com/stream_pi/client/io/Config.java @@ -99,17 +99,17 @@ public class Config { public String getDefaultThemesPath() { - return "data/Themes/"; + return ClientInfo.getInstance().getPrePath()+"Themes/"; } public String getDefaultProfilesPath() { - return "data/Profiles/"; + return ClientInfo.getInstance().getPrePath()+"Profiles/"; } public String getDefaultIconsPath() { - return "data/Icons/"; + return ClientInfo.getInstance().getPrePath()+"Icons/"; } public int getDefaultStartupWindowWidth() --- 'a/src/main/java/com/stream_pi/client/window/Base.java' +++ b/src/main/java/com/stream_pi/client/window/Base.java @@ -197,26 +197,32 @@ public abstract class Base extends Stack { File filex = new File(ClientInfo.getInstance().getPrePath()); - if(filex.getAbsoluteFile().getParentFile().canWrite()) + + if(!filex.exists()) { - if(!filex.exists()) - { - filex.mkdirs(); + boolean result = filex.mkdirs(); + if(result) + { IOHelper.unzip(Main.class.getResourceAsStream("Default.obj"), ClientInfo.getInstance().getPrePath()); + Config.getInstance().setThemesPath(ClientInfo.getInstance().getPrePath()+"Themes/"); + Config.getInstance().setIconsPath(ClientInfo.getInstance().getPrePath()+"Icons/"); + Config.getInstance().setProfilesPath(ClientInfo.getInstance().getPrePath()+"Profiles/"); + + Config.getInstance().save(); } - } - else - { - if(getClientInfo().getPlatformType() != Platform.ANDROID) + else { - setPrefSize(300,300); - } + if(getClientInfo().getPlatformType() != Platform.ANDROID) + { + setPrefSize(300,300); + } - clearStylesheets(); - applyDefaultStylesheet(); - applyDefaultIconsStylesheet(); - getStage().show(); - throw new SevereException("No storage permission. Give it!"); + clearStylesheets(); + applyDefaultStylesheet(); + applyDefaultIconsStylesheet(); + getStage().show(); + throw new SevereException("No storage permission. Give it!"); + } } } catch (Exception e)