Moved 'reset DB' to the preferences screen

This commit is contained in:
Ciaran Gultnieks 2010-11-13 10:35:39 +00:00
parent f3eca41937
commit 87ea1dfc3f
3 changed files with 31 additions and 12 deletions

View File

@ -14,4 +14,10 @@
android:defaultValue="false" android:summary="Notify when new updates are available"
android:key="updateNotify" />
</PreferenceCategory>
<PreferenceCategory android:title="Maintenance">
<Preference
android:title="Reset"
android:summary="Clear all cached data"
android:key="reset" />
</PreferenceCategory>
</PreferenceScreen>

View File

@ -137,9 +137,8 @@ public class FDroid extends TabActivity implements OnItemClickListener {
private static final int UPDATE_REPO = Menu.FIRST;
private static final int MANAGE_REPO = Menu.FIRST + 1;
private static final int RESET_DB = Menu.FIRST + 2;
private static final int PREFERENCES = Menu.FIRST + 3;
private static final int ABOUT = Menu.FIRST + 4;
private static final int PREFERENCES = Menu.FIRST + 2;
private static final int ABOUT = Menu.FIRST + 3;
private DB db = null;
@ -212,11 +211,9 @@ public class FDroid extends TabActivity implements OnItemClickListener {
android.R.drawable.ic_menu_rotate);
menu.add(Menu.NONE, MANAGE_REPO, 2, R.string.menu_manage).setIcon(
android.R.drawable.ic_menu_agenda);
menu.add(Menu.NONE, RESET_DB, 3, "Reset DB").setIcon(
android.R.drawable.ic_menu_revert);
menu.add(Menu.NONE, PREFERENCES, 4, R.string.menu_preferences).setIcon(
menu.add(Menu.NONE, PREFERENCES, 3, R.string.menu_preferences).setIcon(
android.R.drawable.ic_menu_preferences);
menu.add(Menu.NONE, ABOUT, 5, R.string.menu_about).setIcon(
menu.add(Menu.NONE, ABOUT, 4, R.string.menu_about).setIcon(
android.R.drawable.ic_menu_help);
return true;
}
@ -235,14 +232,10 @@ public class FDroid extends TabActivity implements OnItemClickListener {
startActivityForResult(i, REQUEST_MANAGEREPOS);
return true;
case RESET_DB:
db.upgrade(true);
populateLists(true);
return true;
case PREFERENCES:
Intent prefs = new Intent(getBaseContext(), Preferences.class);
startActivityForResult(prefs, REQUEST_PREFS);
populateLists(true);
return true;
case ABOUT:

View File

@ -19,7 +19,10 @@
package org.fdroid.fdroid;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.Preference.OnPreferenceClickListener;
import android.widget.Toast;
public class Preferences extends PreferenceActivity {
@ -27,6 +30,23 @@ public class Preferences extends PreferenceActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
Preference r = (Preference) findPreference("reset");
r.setOnPreferenceClickListener(new OnPreferenceClickListener() {
public boolean onPreferenceClick(Preference preference) {
DB db = new DB(Preferences.this);
db.upgrade(true);
// TODO: Clear cached apks and icons too.
Toast
.makeText(getBaseContext(),
"Local cached data has been cleared",
Toast.LENGTH_LONG).show();
return true;
}
});
}
}