Changeset 1552
- Timestamp:
- 02/07/07 13:47:06
- Files:
-
- trunk/ChangeLog (modified) (1 diff)
- trunk/libtinymail-maemo/tny-maemo-device.c (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/ChangeLog
r1548 r1552 1 2007-02-06 Dirk-Jan C. Binnema <dirk-jan.binnema@nokia.com> 2 3 * update TnyMaemoDevice 4 1 5 2007-02-06 Philip Van Hoof <pvanhoof@gnome.org> 2 6 trunk/libtinymail-maemo/tny-maemo-device.c
r1509 r1552 21 21 #include <glib.h> 22 22 #include <glib-object.h> 23 #include <glib/gi18n-lib.h>24 23 #include <tny-maemo-device.h> 25 24 #include <coniciap.h> … … 33 32 ConIcConnection *cnx; 34 33 gboolean is_online; 34 const gchar *iap; 35 35 } TnyMaemoDevicePriv; 36 36 … … 40 40 41 41 static void 42 tny_maemo_device_reset (TnyDevice *self) 43 { 44 //TnyMaemoDevicePriv *priv = TNY_MAEMO_DEVICE_GET_PRIVATE (self); 45 /* FIXME: hmm... what to do here? */ 46 } 47 48 49 static void 50 on_connection_event (ConIcConnection *self, ConIcConnectionEvent *event, gpointer user_data) 42 tny_maemo_device_reset (TnyDevice *device) 43 { 44 /* intentionally left blank */ 45 } 46 47 48 static void 49 on_connection_event (ConIcConnection *cnx, ConIcConnectionEvent *event, gpointer user_data) 51 50 { 52 51 TnyMaemoDevice *device; 53 52 TnyMaemoDevicePriv *priv; 54 55 g_return_if_fail (event); 53 gboolean is_online; 54 55 g_return_if_fail (CON_IC_IS_CONNECTION(cnx)); 56 56 g_return_if_fail (user_data); 57 57 58 58 device = TNY_MAEMO_DEVICE(user_data); 59 59 priv = TNY_MAEMO_DEVICE_GET_PRIVATE (device); 60 61 60 62 61 switch (con_ic_connection_event_get_error(event)) { … … 77 76 78 77 switch (con_ic_connection_event_get_status(event)) { 79 80 78 case CON_IC_STATUS_CONNECTED: 81 priv->is_online = TRUE; 82 g_signal_emit (device, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 83 0, TRUE); 79 is_online = TRUE; 84 80 break; 85 81 case CON_IC_STATUS_DISCONNECTED: 86 priv->is_online = FALSE; 87 g_signal_emit (device, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 88 0, FALSE); 82 is_online = FALSE; 89 83 break; 90 84 case CON_IC_STATUS_DISCONNECTING: 91 priv->is_online = FALSE;85 is_online = FALSE; 92 86 break; 93 87 default: 94 88 g_return_if_reached (); /* should not happen */ 95 89 } 96 } 97 90 91 if (is_online != priv->is_online) { /* was there a change? */ 92 priv->is_online = is_online; 93 g_signal_emit (device, tny_device_signals [TNY_DEVICE_CONNECTION_CHANGED], 94 0, is_online); 95 } 96 } 98 97 99 98 … … 105 104 g_return_if_fail (TNY_IS_DEVICE(self)); 106 105 priv = TNY_MAEMO_DEVICE_GET_PRIVATE (self); 107 106 108 107 if (!priv->is_online) 109 108 if (!con_ic_connection_connect (priv->cnx,CON_IC_CONNECT_FLAG_NONE)) … … 129 128 tny_maemo_device_is_online (TnyDevice *self) 130 129 { 131 g_return_val_if_fail (TNY_IS_DEVICE(self), FALSE); 132 133 /* FIXME: get the info directly from iap? */ 130 g_return_val_if_fail (TNY_IS_DEVICE(self), FALSE); 134 131 return TNY_MAEMO_DEVICE_GET_PRIVATE (self)->is_online; 135 132 } 133 136 134 137 135 static void … … 168 166 g_signal_connect (priv->cnx, "connection-event", 169 167 G_CALLBACK(on_connection_event), self); 170 168 171 169 /* 172 * this will get us in connected state , butonly if there is already a connection.170 * this will get us in connected state only if there is already a connection. 173 171 * thus, this will setup our state correctly when we receive the signals 174 172 */ 175 if (!con_ic_connection_connect (priv->cnx,CON_IC_CONNECT_FLAG_AUTOMATICALLY_TRIGGERED)) 176 g_warning ("could not send auto-connect dbus message"); 177 173 if (!con_ic_connection_connect (priv->cnx, 174 CON_IC_CONNECT_FLAG_AUTOMATICALLY_TRIGGERED)) 175 g_warning ("could not send connect dbus message"); 176 178 177 return TNY_DEVICE (self); 179 178 } 180 181 179 182 180 static void … … 186 184 priv = TNY_MAEMO_DEVICE_GET_PRIVATE (obj); 187 185 188 con_ic_connection_disconnect (priv->cnx); 189 g_object_unref (priv->cnx); 190 priv->cnx = NULL; 186 if (priv->cnx) { 187 con_ic_connection_disconnect (priv->cnx); 188 g_object_unref (priv->cnx); 189 priv->cnx = NULL; 190 } 191 191 192 192 (*parent_class->finalize) (obj);
