X-Git-Url: https://git.gag.com/?p=debian%2Fopenrocket;a=blobdiff_plain;f=android%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Fandroid%2Ffilebrowser%2FSimpleFileBrowser.java;fp=android%2Fsrc%2Fnet%2Fsf%2Fopenrocket%2Fandroid%2Ffilebrowser%2FSimpleFileBrowser.java;h=1ca68f65c3a21a0c34aad10fe045906ef158ca57;hp=85c51b0243dcfc633fb93efdb0be43e1c79e677f;hb=9349577cdfdff682b2aabd6daa24fdc3a7449b58;hpb=30ba0a882f0c061176ba14dbf86d3d6fad096c02 diff --git a/android/src/net/sf/openrocket/android/filebrowser/SimpleFileBrowser.java b/android/src/net/sf/openrocket/android/filebrowser/SimpleFileBrowser.java index 85c51b02..1ca68f65 100644 --- a/android/src/net/sf/openrocket/android/filebrowser/SimpleFileBrowser.java +++ b/android/src/net/sf/openrocket/android/filebrowser/SimpleFileBrowser.java @@ -8,7 +8,6 @@ import java.util.Comparator; import java.util.List; import net.sf.openrocket.R; -import net.sf.openrocket.android.actionbarcompat.ActionBarListActivity; import android.app.AlertDialog; import android.app.Dialog; import android.content.DialogInterface; @@ -26,7 +25,9 @@ import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; -public class SimpleFileBrowser extends ActionBarListActivity { +import com.actionbarsherlock.app.SherlockListActivity; + +public class SimpleFileBrowser extends SherlockListActivity { private List path = null; private final static File root = new File("/"); @@ -160,7 +161,7 @@ public class SimpleFileBrowser extends ActionBarListActivity { final File file = path.get(position); if (file.isDirectory()) { if (file.canRead()) - getDir(path.get(position)); + getDir(file); else { new AlertDialog.Builder(this).setIcon(R.drawable.or_launcher) .setTitle("[" + file.getName() + "] folder can't be read!") @@ -243,13 +244,10 @@ public class SimpleFileBrowser extends ActionBarListActivity { } } - // Set the "base directory" thing. + // Set the "favorite directory" thing. { ImageView v = (ImageView) (convertView.findViewById(R.id.filebrowser_list_item_homeicon)); - if ( !file.isDirectory() ) { - v.setVisibility(View.INVISIBLE); - v.setClickable(false); - } else { + if ( file.isDirectory() && hasUp && position > 1 ) { v.setVisibility(View.VISIBLE); if ( baseDirName.equals( file.getAbsolutePath() ) ) { v.setSelected(true); @@ -258,6 +256,9 @@ public class SimpleFileBrowser extends ActionBarListActivity { v.setClickable(true); v.setOnClickListener( new ChangeBaseDirectory(file.getAbsolutePath())); } + } else { + v.setVisibility(View.INVISIBLE); + v.setClickable(false); } } return convertView; @@ -277,8 +278,8 @@ public class SimpleFileBrowser extends ActionBarListActivity { if ( v.isSelected() == false ) { SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(SimpleFileBrowser.this); baseDirName = dirname; - pref.edit().putString(baseDirPrefKey, dirname).apply(); - SimpleFileBrowser.this.getDir(new File(dirname)); + pref.edit().putString(baseDirPrefKey, dirname).commit(); + ((BaseAdapter)SimpleFileBrowser.this.getListAdapter()).notifyDataSetChanged(); } }