diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseLauncherActivity.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseLauncherActivity.java index daecc188d..645331835 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseLauncherActivity.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseLauncherActivity.java @@ -106,8 +106,9 @@ public abstract class BaseLauncherActivity extends BaseActivity { v.setEnabled(false); mTask = new MinecraftDownloaderTask(this); LauncherProfiles.update(); - if (LauncherProfiles.mainProfileJson != null && LauncherProfiles.mainProfileJson.profiles != null && LauncherProfiles.mainProfileJson.profiles.containsKey(mProfile.selectedProfile + "")) { - MinecraftProfile prof = LauncherProfiles.mainProfileJson.profiles.get(mProfile.selectedProfile + ""); + String selectedProfile = LauncherPreferences.DEFAULT_PREF.getString(LauncherPreferences.PREF_KEY_CURRENT_PROFILE,""); + if (LauncherProfiles.mainProfileJson != null && LauncherProfiles.mainProfileJson.profiles != null && LauncherProfiles.mainProfileJson.profiles.containsKey(selectedProfile)) { + MinecraftProfile prof = LauncherProfiles.mainProfileJson.profiles.get(selectedProfile); if (prof != null && prof.lastVersionId != null) { if (mProfile.accessToken.equals("0")) { String versionId = getVersionId(prof.lastVersionId); diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseMainActivity.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseMainActivity.java index 64b7b6b98..201a496b8 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseMainActivity.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/BaseMainActivity.java @@ -78,7 +78,7 @@ public class BaseMainActivity extends BaseActivity { mControlLayout = findViewById(R.id.main_control_layout); mProfile = PojavProfile.getCurrentProfileContent(this); - minecraftProfile = LauncherProfiles.mainProfileJson.profiles.get(mProfile.selectedProfile); + minecraftProfile = LauncherProfiles.mainProfileJson.profiles.get(LauncherPreferences.DEFAULT_PREF.getString(LauncherPreferences.PREF_KEY_CURRENT_PROFILE,"")); if(minecraftProfile == null) { Toast.makeText(this,"Attempted to launch nonexistent profile",Toast.LENGTH_SHORT).show(); finish(); diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/PojavLauncherActivity.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/PojavLauncherActivity.java index 9fc055870..6c1cba882 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/PojavLauncherActivity.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/PojavLauncherActivity.java @@ -203,9 +203,9 @@ public class PojavLauncherActivity extends BaseLauncherActivity } profileAdapter.notifyDataSetChanged(); }); - mVersionSelector.setOnLongClickListener((v)->profileEditor.show(mProfile.selectedProfile)); + mVersionSelector.setOnLongClickListener((v)->profileEditor.show(LauncherPreferences.DEFAULT_PREF.getString(LauncherPreferences.PREF_KEY_CURRENT_PROFILE,""))); mVersionSelector.setAdapter(profileAdapter); - mVersionSelector.setSelection(profileAdapter.resolveProfileIndex(mProfile.selectedProfile)); + mVersionSelector.setSelection(profileAdapter.resolveProfileIndex(LauncherPreferences.DEFAULT_PREF.getString(LauncherPreferences.PREF_KEY_CURRENT_PROFILE,""))); mVersionSelector.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){ @Override public void onItemSelected(AdapterView p1, View p2, int p3, long p4) @@ -216,16 +216,11 @@ public class PojavLauncherActivity extends BaseLauncherActivity mVersionSelector.setSelection(0); return; } - mProfile.selectedProfile = p1.getItemAtPosition(p3).toString(); - PojavProfile.setCurrentProfile(PojavLauncherActivity.this, mProfile); - if (PojavProfile.isFileType(PojavLauncherActivity.this)) { - try { - PojavProfile.setCurrentProfile(PojavLauncherActivity.this, mProfile.save()); - } catch (IOException e) { - Tools.showError(PojavLauncherActivity.this, e); - } - } - + LauncherPreferences.DEFAULT_PREF.edit() + .putString( + LauncherPreferences.PREF_KEY_CURRENT_PROFILE, + p1.getItemAtPosition(p3).toString()) + .commit(); } @Override public void onNothingSelected(AdapterView p1) diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/prefs/LauncherPreferences.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/prefs/LauncherPreferences.java index f2794cc9a..f3b325d33 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/prefs/LauncherPreferences.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/prefs/LauncherPreferences.java @@ -6,6 +6,7 @@ import net.kdt.pojavlaunch.multirt.MultiRTUtils; import net.kdt.pojavlaunch.utils.JREUtils; public class LauncherPreferences { + public static final String PREF_KEY_CURRENT_PROFILE = "currentProfile"; public static SharedPreferences DEFAULT_PREF; public static String PREF_RENDERER = "opengles2"; diff --git a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java index a4030835f..7aafecc78 100644 --- a/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java +++ b/app_pojavlauncher/src/main/java/net/kdt/pojavlaunch/tasks/MinecraftDownloaderTask.java @@ -92,7 +92,7 @@ public class MinecraftDownloaderTask extends AsyncTask