diff options
author | Andrew Dolgov <[email protected]> | 2015-06-08 20:21:24 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2015-06-08 20:21:24 +0300 |
commit | d42f7b38452f9bff207915eddda5397675de2352 (patch) | |
tree | 5ef55f4aeebed8c813d11204995172a3dcf52975 | |
parent | 53a6696a634f0b105669fdfe9f7433a91142ab04 (diff) |
fix directory picker
3 files changed, 37 insertions, 13 deletions
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/DirectoryPicker.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/DirectoryPicker.java index 0c75f09..48f6ad9 100644 --- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/DirectoryPicker.java +++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/DirectoryPicker.java @@ -1,9 +1,5 @@ package org.fox.ttcomics2; -import java.io.File; -import java.util.ArrayList; -import java.util.Collections; - import android.app.ListActivity; import android.content.Context; import android.content.Intent; @@ -17,6 +13,10 @@ import android.widget.Button; import android.widget.ListView; import android.widget.Toast; +import java.io.File; +import java.util.ArrayList; +import java.util.Collections; + /** Copyright (C) 2011 by Brad Greco <[email protected]> @@ -45,7 +45,7 @@ public class DirectoryPicker extends ListActivity { public static final String ONLY_DIRS = "onlyDirs"; public static final String SHOW_HIDDEN = "showHidden"; public static final String CHOSEN_DIRECTORY = "chosenDir"; - public static final int PICK_DIRECTORY = 43522432; + public static final int PICK_DIRECTORY = 128; private File dir; private boolean showHidden = false; private boolean onlyDirs = true ; diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesActivity.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesActivity.java index 12d112d..2100000 100644 --- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesActivity.java +++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesActivity.java @@ -1,6 +1,9 @@ package org.fox.ttcomics2; +import android.content.Intent; +import android.content.SharedPreferences; import android.os.Bundle; +import android.os.Environment; import android.preference.PreferenceManager; import android.support.v7.widget.Toolbar; import android.view.MenuItem; @@ -37,4 +40,32 @@ public class PreferencesActivity extends CommonActivity { } } + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + if(requestCode == DirectoryPicker.PICK_DIRECTORY && resultCode == RESULT_OK) { + Bundle extras = data.getExtras(); + String path = (String) extras.get(DirectoryPicker.CHOSEN_DIRECTORY); + + SharedPreferences prefs = PreferenceManager + .getDefaultSharedPreferences(getApplicationContext()); + + SharedPreferences.Editor editor = prefs.edit(); + editor.putString("comics_directory", path); + editor.commit(); + + } + } + + public void startPicker() { + Intent intent = new Intent(PreferencesActivity.this, DirectoryPicker.class); + + SharedPreferences prefs = PreferenceManager + .getDefaultSharedPreferences(getApplicationContext()); + + + intent.putExtra(DirectoryPicker.START_DIR, prefs.getString("comics_directory", + Environment.getExternalStorageDirectory().getAbsolutePath())); + + startActivityForResult(intent, DirectoryPicker.PICK_DIRECTORY); + } } diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesFragment.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesFragment.java index adc55c0..cc0b0fc 100644 --- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesFragment.java +++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/PreferencesFragment.java @@ -6,14 +6,12 @@ import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; -import android.content.Intent; import android.content.SharedPreferences; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.os.Build; import android.os.Bundle; -import android.os.Environment; import android.preference.Preference; import android.preference.PreferenceFragment; import android.preference.PreferenceManager; @@ -79,12 +77,7 @@ public class PreferencesFragment extends PreferenceFragment { dirPref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { - Intent intent = new Intent(getActivity(), DirectoryPicker.class); - - intent.putExtra(DirectoryPicker.START_DIR, prefs.getString("comics_directory", - Environment.getExternalStorageDirectory().getAbsolutePath())); - - startActivityForResult(intent, DirectoryPicker.PICK_DIRECTORY); + ((PreferencesActivity)getActivity()).startPicker(); return true; } }); |