From cb11bcf6ddaf76fce50b3c5af7f7eebb30e0b87d Mon Sep 17 00:00:00 2001 From: Ciaran Gultnieks Date: Mon, 8 Nov 2010 20:06:31 +0000 Subject: [PATCH] (Re/un)schedule the update service when preferences are changed --- src/org/fdroid/fdroid/DB.java | 2 ++ src/org/fdroid/fdroid/FDroid.java | 9 ++++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/org/fdroid/fdroid/DB.java b/src/org/fdroid/fdroid/DB.java index 888bce4c4..f17b78d49 100644 --- a/src/org/fdroid/fdroid/DB.java +++ b/src/org/fdroid/fdroid/DB.java @@ -437,6 +437,8 @@ public class DB { } } } + Log.d("FDroid", "AppUpdate: " + updateApps.size() + + " apps on completion."); updateApps = null; } diff --git a/src/org/fdroid/fdroid/FDroid.java b/src/org/fdroid/fdroid/FDroid.java index fd0d8c482..419fed4f3 100644 --- a/src/org/fdroid/fdroid/FDroid.java +++ b/src/org/fdroid/fdroid/FDroid.java @@ -131,6 +131,7 @@ public class FDroid extends TabActivity implements OnItemClickListener { private static final int REQUEST_APPDETAILS = 0; private static final int REQUEST_MANAGEREPOS = 1; + private static final int REQUEST_PREFS = 2; private static final int UPDATE_REPO = Menu.FIRST; private static final int MANAGE_REPO = Menu.FIRST + 1; @@ -232,7 +233,7 @@ public class FDroid extends TabActivity implements OnItemClickListener { case PREFERENCES: Intent prefs = new Intent(getBaseContext(), Preferences.class); - startActivity(prefs); + startActivityForResult(prefs,REQUEST_PREFS); return true; case ABOUT: @@ -294,6 +295,12 @@ public class FDroid extends TabActivity implements OnItemClickListener { alert.show(); } break; + case REQUEST_PREFS: + // The automatic update settings may have changed, so reschedule (or unschedule) the + // service accordingly. It's cheap, so no need to check if the particular setting has + // actually been changed. + UpdateService.schedule(getBaseContext()); + break; } }