Refactored so that the widget is now with the app, not the provider
- CalendarAppWidgetReceiver now functions as the broadcast receiver for:
* android.intent.action.TIMEZONE_CHANGED
* android.intent.action.TIME_SET
* android.intent.action.PROVIDER_CHANGED (content://com.android.calendar)
- CalendarAppWidgetService has been refactored to use IntentService for
serializing widget updates
- AppWidgetShared has been preserved for managing wake locks
- CalendarAppWidgetModel was pulled out into its own class
Change-Id: If7641aba278acc8ad00f14acd289ddbcbb1d5bcf
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index cceff3b..06c185b 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -124,6 +124,29 @@
<service android:name="DismissAllAlarmsService" />
+ <!-- Declarations for the widget -->
+ <receiver android:name="CalendarAppWidgetReceiver" android:enabled="false">
+ <intent-filter>
+ <action android:name="android.intent.action.TIMEZONE_CHANGED" />
+ <action android:name="android.intent.action.TIME_SET" />
+ <action android:name="android.intent.action.DATE_CHANGED" />
+ </intent-filter>
+ <intent-filter>
+ <data android:scheme="content" android:host="com.android.calendar"/>
+ <action android:name="android.intent.action.PROVIDER_CHANGED"/>
+ </intent-filter>
+ </receiver>
+
+ <receiver android:name="CalendarAppWidgetProvider" android:label="@string/gadget_title">
+ <intent-filter>
+ <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
+ <action android:name="com.android.calendar.APPWIDGET_UPDATE" />
+ </intent-filter>
+ <meta-data android:name="android.appwidget.provider" android:resource="@xml/appwidget_info" />
+ </receiver>
+
+ <service android:name="CalendarAppWidgetService" />
+
<activity android:name="CalendarTests" android:label="Calendar Tests">
<intent-filter>
<action android:name="android.intent.action.MAIN" />