From 8de4f7be05ed71e726d18ab58a9f10bf245df6a1 Mon Sep 17 00:00:00 2001 From: khanhduytran0 Date: Thu, 8 Oct 2020 10:24:12 +0700 Subject: [PATCH] File locker bug fix --- .../java/com/kdt/filerapi/FileListView.java | 24 ++++++++++--------- .../pojavlaunch/CustomControlsActivity.java | 2 +- .../kdt/pojavlaunch/PojavLoginActivity.java | 2 +- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/kdt/filerapi/FileListView.java b/app/src/main/java/com/kdt/filerapi/FileListView.java index 7bf18cffb..013501dec 100644 --- a/app/src/main/java/com/kdt/filerapi/FileListView.java +++ b/app/src/main/java/com/kdt/filerapi/FileListView.java @@ -10,6 +10,7 @@ import com.ipaulpro.afilechooser.*; import java.io.*; import java.util.*; import net.kdt.pojavlaunch.*; +import android.os.*; public class FileListView extends LinearLayout { @@ -17,12 +18,11 @@ public class FileListView extends LinearLayout private String fullPath; private ListView mainLv; private Context context; - private boolean lockedHome = false; //For File selected listener: private FileSelectedListener listener; private AlertDialog build; - private String homePath; + private String lockPath = "/"; public FileListView(Context context, AlertDialog build) { super(context); @@ -79,6 +79,8 @@ public class FileListView extends LinearLayout } }); addView(mainLv, layParam); + + listFileAt(Environment.getExternalStorageDirectory().getAbsolutePath()); } public void setFileSelectedListener(FileSelectedListener listener) { @@ -90,15 +92,11 @@ public class FileListView extends LinearLayout final File mainPath = new File(path); if(mainPath.exists()){ if(mainPath.isDirectory()){ - if(!lockedHome){ - homePath = path; - lockedHome = true; - } fullPath = path; File[] listFile = mainPath.listFiles(); FileListAdapter fileAdapter = new FileListAdapter(context); - if(!path.equals(homePath)){ + if(!path.equals(lockPath)){ //fileAdapter.add(new File(path, "Path=\""+path+"\".noEquals(homePath=\""+homePath+"\")")); fileAdapter.add(new File(path, "..")); } @@ -127,15 +125,19 @@ public class FileListView extends LinearLayout return fullPath; } - public void refreshPath() - { + public void refreshPath() { listFileAt(getFullPath()); } - public void parentDir() - { + + public void parentDir() { File pathFile = new File(fullPath); if(!pathFile.getAbsolutePath().equals("/")){ listFileAt(pathFile.getParent()); } } + + public void lockPathAt(String path) { + lockPath = path; + listFileAt(path); + } } diff --git a/app/src/main/java/net/kdt/pojavlaunch/CustomControlsActivity.java b/app/src/main/java/net/kdt/pojavlaunch/CustomControlsActivity.java index be3a9990d..9f7738867 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/CustomControlsActivity.java +++ b/app/src/main/java/net/kdt/pojavlaunch/CustomControlsActivity.java @@ -107,7 +107,7 @@ public class CustomControlsActivity extends AppCompatActivity final AlertDialog dialog = builder.create(); FileListView flv = new FileListView(this, dialog); - flv.listFileAt(Tools.CTRLMAP_PATH); + flv.lockPathAt(Tools.CTRLMAP_PATH); flv.setFileSelectedListener(new FileSelectedListener(){ @Override diff --git a/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java b/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java index 8306f67ac..6d3f0e9fa 100644 --- a/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java +++ b/app/src/main/java/net/kdt/pojavlaunch/PojavLoginActivity.java @@ -543,7 +543,7 @@ public class PojavLoginActivity extends AppCompatActivity final FileListView flv = new FileListView(this, dialog); // flv.setLayoutParams(lpFlv); - flv.listFileAt(Tools.mpProfiles); + flv.lockPathAt(Tools.mpProfiles); flv.setFileSelectedListener(new FileSelectedListener(){ @Override