Chronus: Optimize widget loading/display

Completely refactors the Calendar handling and changes the refresh
interval from every minute to the minimum of either the next weather
refresh or the next event start/end.

It also now detects more events (new calendar entry, deleted calendar
entry, location change, timezone change etc)

Patch set 7 : Change the startup of the provider to only update the
              required panels on enabling the appwigdet and updates
              This further reduces the number of times the widget
              refreshes itself, now limited only to actual events
Patch set 8 : Change the weather refresh time to be absolute, not
              relative to current time
Patch set 9 : Refactor the calendar to use a CalendarInfo class that
              maintains a static list of events.  This allows the
              refreshing of the lock screen widget without querying
              the calendar provider every time the screen turns on
Patch set 10: Simplified onReceive loading/updating of widget with
              additional tweaks to handling deleted widgets and
              a fix to the refresh timer calculations including a
              check of the lookahead window.
Patch set 11: Change the alarmservice to wake the CPU and do the
              update if the device is sleeping.  This way, since the
              updates are so infrequent now, it makes sense to ensure
              things are updated (if needed) when the user turns the
              screen on after a while.
Patch set 12: Change application ID to an ID registered for Chronus
Patch set 13: Store the returned WOEID in sharedPreferences it if its
              valid and retrieve the previously stored one if not. This
              allows for the querying of weather data even though the
              Yahoo Placefinder service API limit has been exceeded and
              it returns an invalid XML result on geocode query.
Patch set 14: Add a flag to determine when we want the real placefinder
              result or the cached result is also OK
Patch set 15: Final comments and code formatting cleanup
Patch set 16: Factor out weather fetching to separate service to
              decouple weather fetching from widget update. Also
              optimize a lot of code.
Patch set 17: Fix alarms refresh and optimize calendar query and weather
              refresh behaviour.
Patch set 18: Unify debug flags
Change-Id: I0496dad356c92fb26ad7289268327b27b365b6cd
Merge "Chronus: Optimize widget loading/display" into cm-10.1
LockClock: Update values

- Include donottranslate.xml (extracted from frameworks)
  Some languages didn't contain the abbreviated form, so
  I duplicated the full form
- Translate 'Yahoo! Weather' according to their Android app names
  (not applicable to all languages)
- Fixing permissions

Change-Id: Iddefc07d2fbb8deb3cf5481f7625a78a734fd93a
PT-BR: Fix translation

Change-Id: I96c69941a99b3db663d1ae0af6fed4ba098bea8f
Update Russian Translation-LockClock-CM10.1
LockClock: Update pt-PT translation.

Patch Set 1:
	* Fix weather_E;
	* Fix weather_enable;
	* Change weather_tap_to_refresh to 'Tocar para actualizar';
	* Replace all terms from pt-BR to pt-PT that were wrong:
	  '... em negrito' to '... a negrito'
Patch Set 2:
	* Fix weather_enable again;
Patch Set 3:
	* Add line feed to COMMIT MSG.
Patch Set 4:
	* Some for fixes.

Change-Id: I6cfcca4d7ba909a32a2cb86c090e331eebea16d2
Merge "Update Russian Translation-LockClock-CM10.1" into cm-10.1
Fix NullPointerException.

If we don't get a location (e.g. because there's no running network
location provider and there was no GPS fix yet), refuse the update
instead of crashing.

Change-Id: Ia09a3557b0a829fa6f2676f17bcc0858a86e8580
Goodbye Chronus, it was nice knowing you (1 of 2)

Change-Id: I81740c068fa590d02e48c9ab61068bc27c95c0d0
Fix display of all-day events if there's more than one all-day event.

If there are two all-day events for the same day, previously both events
would be displayed with the same title. Fix that by replacing the logic
that attempted to fix sorting issues by a real sort of the event info
list.

Fixes issue CYAN-137.

Change-Id: I3bfc4124c619a9a922ae9d20cc8e1fba08db188e
cLock: Unicode formatting

Patch set 2: Fix authorship

Change-Id: I8b217a01cbf82eaf0c43df3f69b8a860ac87ce65
Merge "cLock: Unicode formatting" into cm-10.1
Merge remote-tracking branch 'upstream/cm-10.1' into cm-10.1