diff options
| -rw-r--r-- | core/java/android/widget/DateTimeView.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/core/java/android/widget/DateTimeView.java b/core/java/android/widget/DateTimeView.java index 0b5824a..dcb2437 100644 --- a/core/java/android/widget/DateTimeView.java +++ b/core/java/android/widget/DateTimeView.java @@ -25,7 +25,6 @@ import android.os.Handler; import android.text.format.Time; import android.util.AttributeSet; import android.util.Log; -import android.widget.TextView; import android.widget.RemoteViews.RemoteView; import java.text.DateFormat; @@ -228,14 +227,14 @@ public class DateTimeView extends TextView { final boolean register = mAttachedViews.isEmpty(); mAttachedViews.add(v); if (register) { - register(v.getContext().getApplicationContext()); + register(getApplicationContextIfAvailable(v.getContext())); } } public void removeView(DateTimeView v) { mAttachedViews.remove(v); if (mAttachedViews.isEmpty()) { - unregister(v.getContext().getApplicationContext()); + unregister(getApplicationContextIfAvailable(v.getContext())); } } @@ -258,6 +257,11 @@ public class DateTimeView extends TextView { return result; } + static final Context getApplicationContextIfAvailable(Context context) { + final Context ac = context.getApplicationContext(); + return ac != null ? ac : context; + } + void register(Context context) { final IntentFilter filter = new IntentFilter(); filter.addAction(Intent.ACTION_TIME_TICK); |
