handle preferences more precisely
authorEugene Crosser <crosser@average.org>
Tue, 7 Feb 2012 21:45:32 +0000 (01:45 +0400)
committerEugene Crosser <crosser@average.org>
Tue, 7 Feb 2012 21:45:32 +0000 (01:45 +0400)
src/org/average/whereami/WhereAmI.java
src/org/average/whereami/WhereAmIprefs.java

index 5fdbbedbab4edded45ade82b0620fb4bbc4a8d4a..94c0139f116211bb12e910a2d96d53acf6272751 100644 (file)
@@ -168,7 +168,7 @@ public class WhereAmI extends Activity
                 Time tm = new Time();
                 tm.setToNow();
                 tvs.setText(R.string.failtry);
-                tvs.append(tm.format(" %d/%m/%Y %H:%M:%S"));
+                tvs.append(tm.format(" %d/%m/%Y %H:%M"));
             }
             if (managewifi) {
                 boolean wifion = wifiman.setWifiEnabled(false);
@@ -220,17 +220,6 @@ public class WhereAmI extends Activity
         tvt = (TextView)findViewById(R.id.time);
         tvd = (TextView)findViewById(R.id.date);
         tvs = (TextView)findViewById(R.id.timestamp);
-       ut = new UpdateTarget[] {
-            new UpdateTarget((TextView)findViewById(R.id.phonecall),
-                             new PhoneLog(res, store)),
-            new UpdateTarget((TextView)findViewById(R.id.location),
-                             new LastLocation(res, store))
-        };
-        Log.v(TAG, "created UI, about to start update task");
-       mHandler.post(updateClock);
-       mHandler.post(updateCal);
-       mHandler.post(updateInfo);
-        Log.v(TAG, "created UI, update task created");
     }
 
     /** Called when reactivated */
@@ -250,6 +239,17 @@ public class WhereAmI extends Activity
         } else {
             getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
         }
+       ut = new UpdateTarget[] {
+            new UpdateTarget((TextView)findViewById(R.id.phonecall),
+                             new PhoneLog(res, store)),
+            new UpdateTarget((TextView)findViewById(R.id.location),
+                             new LastLocation(res, store))
+        };
+        Log.v(TAG, "created UI, about to start update tasks");
+       mHandler.post(updateClock);
+       mHandler.post(updateCal);
+       mHandler.post(updateInfo);
+        Log.v(TAG, "created UI, update tasks created");
     }
 
     /** Called when put to background */
@@ -257,6 +257,7 @@ public class WhereAmI extends Activity
     public void onPause() {
         super.onPause();
         Log.v(TAG, "going background");
+        resetInfo.run();
     }
 
     /** Called when the activity is destroyed. */
index f191734224c5dbf8c010b1fd8e8d425d2b65d6a6..49a93ddabacdb985db305262710e9e3059704eb5 100644 (file)
@@ -2,11 +2,39 @@ package org.average.whereami;
 
 import android.os.Bundle;
 import android.preference.PreferenceActivity;
+import android.preference.Preference;
+import android.preference.PreferenceManager;
+import android.preference.Preference.OnPreferenceChangeListener;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.Editor;
+import android.util.Log;
 
 public class WhereAmIprefs extends PreferenceActivity {
+
+    final String TAG = getClass().getName();
+
     @Override
     public void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         addPreferencesFromResource(R.xml.preferences);
+        Preference calendar_name = findPreference("calendar_name");
+        calendar_name.setOnPreferenceChangeListener(
+            new OnPreferenceChangeListener() {
+                public boolean onPreferenceChange(Preference preference,
+                                                  Object newValue) {
+                    resetID();
+                    return true;
+                }
+            }
+        );
+    }
+
+    private void resetID() {
+        SharedPreferences prefs =
+                        PreferenceManager.getDefaultSharedPreferences(this);
+        Editor editor = prefs.edit();
+        editor.remove("calendar_id");
+        editor.commit();
+        Log.v(TAG, "Removed calendar_id from preferences");
     }
 }