~ps-jenkins/indicator-datetime/latestsnapshot-13.10.0+13.10.20131023.2-0ubuntu1

« back to all changes in this revision

Viewing changes to src/service.h

  • Committer: Tarmac
  • Author(s): Charles Kerr
  • Date: 2013-10-17 03:39:12 UTC
  • mfrom: (267.2.22 lp-1233176)
  • Revision ID: tarmac-20131017033912-o7qc0p8w07h2853g
== Changes to planner-eds:

The get-appointments GTask has a new task subtype for pulling an ECalComponent's uris asynchronously.

When get_appointments() is called, create one GTask. We add subtasks to it for each client we know of for calling e_cal_client_generate_instances(). What's new is that for each ECalComponent we find in generate_instances(), we add another new subtask that tries to get the uris for that component.

== Testing changes:

Make "planner" a property in IndicatorDatetimeService so that we can swap in different appointment planners at runtime. This is for unit testing purposes.

Add a mechanism for testing snap decisions without an EDS backend.

== Service changes:

Every time the appointment list changes, walk through it to find the alarm that will occur the soonest. Set a timer to wake up at that time. When the timer is reached, pop up a snap decision for each alarm set to that time. If the user clicks "OK", dispatch the URL associated with that alarm.

Made the appointment menuitems clickable, they now dispatch the appointment's URL. Fixes: https://bugs.launchpad.net/bugs/1233176.

Approved by PS Jenkins bot, Ted Gould.

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
 
23
23
#include <glib.h>
24
24
#include <glib-object.h>
 
25
#include "planner.h"
25
26
 
26
27
G_BEGIN_DECLS
27
28
 
62
63
 
63
64
GType indicator_datetime_service_get_type (void);
64
65
 
65
 
IndicatorDatetimeService * indicator_datetime_service_new (void);
 
66
IndicatorDatetimeService * indicator_datetime_service_new (IndicatorDatetimePlanner * planner);
66
67
 
67
68
GDateTime * indicator_datetime_service_get_localtime (IndicatorDatetimeService * service);
68
69
 
69
70
void indicator_datetime_service_set_calendar_date (IndicatorDatetimeService * self,
70
71
                                                   GDateTime                * date);
71
72
 
 
73
void indicator_datetime_service_set_planner (IndicatorDatetimeService * self,
 
74
                                             IndicatorDatetimePlanner * planner);
 
75
 
 
76
 
72
77
 
73
78
G_END_DECLS
74
79