Clean up widget.

This commit is contained in:
Sandor Dornbush
2011-06-21 22:00:40 -07:00
parent be219bbee6
commit f97d5fa232
@@ -39,6 +39,7 @@ import com.google.android.maps.mytracks.R;
* An AppWidgetProvider for displaying key track statistics (distance, time, * An AppWidgetProvider for displaying key track statistics (distance, time,
* speed) from the current or most recent track. * speed) from the current or most recent track.
* *
* @author Sandor Dornbush
* @author Paul R. Saxman * @author Paul R. Saxman
*/ */
public class AppWidgetProvider extends android.appwidget.AppWidgetProvider { public class AppWidgetProvider extends android.appwidget.AppWidgetProvider {
@@ -56,12 +57,12 @@ public class AppWidgetProvider extends android.appwidget.AppWidgetProvider {
private final Handler contentHandler; private final Handler contentHandler;
private MyTracksProviderUtils providerUtils; private MyTracksProviderUtils providerUtils;
// TODO kill this. I am fairly certain this is a bug.
private Context context; private Context context;
private String unknown; private String unknown;
private String time; private String time;
private String distance; private String distance;
private String speed; private String speed;
private TrackObserver trackObserver;
public AppWidgetProvider() { public AppWidgetProvider() {
super(); super();
@@ -70,20 +71,27 @@ public class AppWidgetProvider extends android.appwidget.AppWidgetProvider {
@Override @Override
public void onEnabled(Context context) { public void onEnabled(Context context) {
context.getContentResolver().registerContentObserver(TracksColumns.CONTENT_URI, true, new TrackObserver()); trackObserver = new TrackObserver();
context.getContentResolver().registerContentObserver(
TracksColumns.CONTENT_URI, true, trackObserver);
initialize(context); initialize(context);
} }
@Override
public void onDisabled(Context context) {
context.getContentResolver().unregisterContentObserver(trackObserver);
}
private void initialize(Context context) { private void initialize(Context context) {
if (this.context != null) { if (this.context != null) {
return; return;
} }
providerUtils = MyTracksProviderUtils.Factory.get(context); providerUtils = MyTracksProviderUtils.Factory.get(context);
this.context = context; this.context = context;
this.distance = context.getString(R.string.kilometer); distance = context.getString(R.string.kilometer);
this.speed = context.getString(R.string.kilometer_per_hour); speed = context.getString(R.string.kilometer_per_hour);
this.time = context.getString(R.string.min); time = context.getString(R.string.min);
this.unknown = context.getString(R.string.unknown); unknown = context.getString(R.string.unknown);
} }
@Override @Override