67 |
g_signal_connect(gps_state->device, "changed", |
g_signal_connect(gps_state->device, "changed", |
68 |
G_CALLBACK(location_changed), gps_state); |
G_CALLBACK(location_changed), gps_state); |
69 |
|
|
70 |
|
#if MAEMO_VERSION_MAJOR < 5 |
71 |
gps_state->control = location_gpsd_control_get_default(); |
gps_state->control = location_gpsd_control_get_default(); |
72 |
if(gps_state->control->can_control) { |
if(gps_state->control->can_control) { |
73 |
printf("Having control over GPSD, starting it\n"); |
printf("Having control over GPSD, starting it\n"); |
74 |
location_gpsd_control_start(gps_state->control); |
location_gpsd_control_start(gps_state->control); |
75 |
} |
} |
76 |
|
#endif |
77 |
} |
} |
78 |
|
|
79 |
void gps_release(appdata_t *appdata) { |
void gps_release(appdata_t *appdata) { |
81 |
|
|
82 |
if(!gps_state->device) return; |
if(!gps_state->device) return; |
83 |
|
|
84 |
|
#if MAEMO_VERSION_MAJOR < 5 |
85 |
/* Disconnect signal */ |
/* Disconnect signal */ |
86 |
if(gps_state->control->can_control) { |
if(gps_state->control->can_control) { |
87 |
printf("Having control over GPSD, stopping it\n"); |
printf("Having control over GPSD, stopping it\n"); |
88 |
location_gpsd_control_stop(gps_state->control); |
location_gpsd_control_stop(gps_state->control); |
89 |
} |
} |
90 |
|
#endif |
91 |
|
|
92 |
g_signal_handler_disconnect(gps_state->device, gps_state->idd_changed); |
g_signal_handler_disconnect(gps_state->device, gps_state->idd_changed); |
93 |
|
|