Native (Zenity) file dialogs for Linux

This commit is contained in:
Anuken
2023-05-15 11:44:08 -04:00
parent 3593803ad9
commit 1289e20990
2 changed files with 73 additions and 7 deletions

View File

@@ -20,7 +20,7 @@ public class FileChooser extends BaseDialog{
private static final Fi homeDirectory = Core.files.absolute(Core.files.getExternalStoragePath());
static Fi lastDirectory = Core.files.absolute(Core.settings.getString("lastDirectory", homeDirectory.absolutePath()));
Fi directory = lastDirectory;
Fi directory;
private Table files;
private ScrollPane pane;
private TextField navigation, filefield;
@@ -37,10 +37,7 @@ public class FileChooser extends BaseDialog{
this.filter = filter;
this.selectListener = result;
if(!lastDirectory.exists()){
lastDirectory = homeDirectory;
directory = lastDirectory;
}
directory = getLastDirectory();
onResize(() -> {
cont.clear();
@@ -254,11 +251,18 @@ public class FileChooser extends BaseDialog{
if(open) filefield.clearText();
}
public static void setLastDirectory(Fi directory){
public static synchronized void setLastDirectory(Fi directory){
lastDirectory = directory;
Core.settings.put("lastDirectory", directory.absolutePath());
}
public static synchronized Fi getLastDirectory(){
if(!lastDirectory.exists()){
lastDirectory = homeDirectory;
}
return lastDirectory;
}
public class FileHistory{
private Seq<Fi> history = new Seq<>();
private int index;